diff options
author | tobez <tobez@FreeBSD.org> | 2002-06-16 12:28:01 +0000 |
---|---|---|
committer | tobez <tobez@FreeBSD.org> | 2002-06-16 12:28:01 +0000 |
commit | a32ae4b37ff635528a37e7c61d5002fa68cdca7b (patch) | |
tree | 91ac6932146346e6ee214d61d17ecc937d94c4f2 /lang/perl5 | |
parent | 29c0c007718ab2e782ed5d9861c459d998256561 (diff) | |
download | FreeBSD-ports-a32ae4b37ff635528a37e7c61d5002fa68cdca7b.zip FreeBSD-ports-a32ae4b37ff635528a37e7c61d5002fa68cdca7b.tar.gz |
1. Do not do rm -rf as a mean to deinstall this port. Instead, apart
from normal rmdir'ing and unexec rmdir'ing, do a find | xargs rm for
generated .ph files, since those will differ in different versions of
FreeBSD just like .h files may not be the same.
2. Install.pm is broken in 5.6.1 and leads to the wrong .packlist
generation, which, in turn, breaks BSDPAN. Fix that.
3. Extend use.perl to patch /etc/manpath.config so that manpages for
modules installed by this and other p5- ports are be available.
PR: 39108 (item 1)
Reported by: Dan Nelson <dan@dan.emsphone.com> (item 1)
Diffstat (limited to 'lang/perl5')
-rw-r--r-- | lang/perl5/Makefile | 2 | ||||
-rw-r--r-- | lang/perl5/files/patch-Install.pm | 13 | ||||
-rw-r--r-- | lang/perl5/files/use.perl | 28 | ||||
-rw-r--r-- | lang/perl5/pkg-plist | 84 |
4 files changed, 123 insertions, 4 deletions
diff --git a/lang/perl5/Makefile b/lang/perl5/Makefile index f2c1822..21ac952 100644 --- a/lang/perl5/Makefile +++ b/lang/perl5/Makefile @@ -7,7 +7,7 @@ PORTNAME= perl PORTVERSION= ${PERL_VER} -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= lang devel perl5 MASTER_SITES= ${MASTER_SITE_PERL_CPAN} \ ${MASTER_SITE_LOCAL:S/$/:local/} diff --git a/lang/perl5/files/patch-Install.pm b/lang/perl5/files/patch-Install.pm new file mode 100644 index 0000000..06bef47 --- /dev/null +++ b/lang/perl5/files/patch-Install.pm @@ -0,0 +1,13 @@ +$FreeBSD$ + +--- lib/ExtUtils/Install.pm.orig Sun Jun 16 13:36:29 2002 ++++ lib/ExtUtils/Install.pm Sun Jun 16 13:36:50 2002 +@@ -156,7 +156,7 @@ + } else { + inc_uninstall($_,$File::Find::dir,$verbose,0); # nonono set to 0 + } +- $packlist->{$origfile}++; ++ $packlist->{$targetfile}++; + + }, "."); + chdir($cwd) or Carp::croak("Couldn't chdir to $cwd: $!"); diff --git a/lang/perl5/files/use.perl b/lang/perl5/files/use.perl index 557e38b..7769cdd 100644 --- a/lang/perl5/files/use.perl +++ b/lang/perl5/files/use.perl @@ -17,7 +17,7 @@ EOF my $port_perl = '%%PREFIX%%/bin/perl'; $port_perl =~ tr|/|/|s; -my $ident = `/usr/bin/ident /usr/bin/perl5`; +my $ident = `/usr/bin/ident -q /usr/bin/perl5`; @ARGV == 1 or usage(); if ($ARGV[0] eq 'port') { @@ -63,6 +63,18 @@ sub switch_to_system EOF close MK; + + open MPOLD, "< /etc/manpath.config" or die "/etc/manpath.config: $!"; + open MPNEW, "> /etc/manpath.config.new" or die "/etc/manpath.config.new: $!"; + while (<MPOLD>) { + next if m|use.perl generated line|; + next if m|^\s*OPTIONAL_MANPATH\s+\S+/lib/perl5/%%PERL_VERSION%%/man\s*$|; + print MPNEW; + } + close MPNEW; + close MPOLD; + rename '/etc/manpath.config', '/etc/manpath.config.bak'; + rename '/etc/manpath.config.new', '/etc/manpath.config'; } sub switch_to_port @@ -96,4 +108,18 @@ NO_PERL_WRAPPER=yo EOF close MK; + + open MPOLD, "< /etc/manpath.config" or die "/etc/manpath.config: $!"; + open MPNEW, "> /etc/manpath.config.new" or die "/etc/manpath.config.new: $!"; + while (<MPOLD>) { + print MPNEW <<EOF if m|^\s*OPTIONAL_MANPATH\s+\S+/lib/perl5/\S+/man\s*$|; +# -- use.perl generated line -- # +OPTIONAL_MANPATH %%PREFIX%%/lib/perl5/%%PERL_VERSION%%/man +EOF + print MPNEW; + } + close MPNEW; + close MPOLD; + rename '/etc/manpath.config', '/etc/manpath.config.bak'; + rename '/etc/manpath.config.new', '/etc/manpath.config'; } diff --git a/lang/perl5/pkg-plist b/lang/perl5/pkg-plist index 132d7bf..a4fe72f 100644 --- a/lang/perl5/pkg-plist +++ b/lang/perl5/pkg-plist @@ -894,5 +894,85 @@ lib/perl5/%%PERL_VER%%/validate.pl lib/perl5/%%PERL_VER%%/vars.pm lib/perl5/%%PERL_VER%%/warnings.pm lib/perl5/%%PERL_VER%%/warnings/register.pm -@unexec rm -rf %D/lib/perl5/%%PERL_VER%% -@unexec rm -rf %D/lib/perl5/site_perl/%%PERL_VER%% +@unexec find %D/lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/ -name '*.ph' -print | xargs rm -f +@unexec rmdir %D/lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/sys 2>/dev/null || true +@unexec rmdir %D/lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/machine 2>/dev/null || true +@unexec rmdir %D/lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%% 2>/dev/null || true +@unexec rmdir %D/lib/perl5/site_perl/5.6.1 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/Sys 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/IO 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/Data 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/re 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/attrs 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Sys/Syslog 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Sys/Hostname 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Sys 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Socket 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/sdbm 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/SDBM_File 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/POSIX 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Opcode 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/NDBM_File 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/IPC/SysV 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/IPC 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/IO 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/File/Glob 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/File 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Fcntl 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Devel/Peek 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Devel/DProf 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Devel 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Data/Dumper 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/Data 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/DB_File 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/ByteLoader 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/B 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto/DynaLoader 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/auto 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/B 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/IPC 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/File 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/Devel 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%%/CORE 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/%%PERL_ARCH%% 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/IO/Socket 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/IO 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/auto/Getopt/Long 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/auto/Getopt 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/auto 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/warnings 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/unicode/To 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/unicode/Is 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/unicode/In 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/unicode 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/B 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/User 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Time 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Tie 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Text 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Test 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Term 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Search 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Pod/Text 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Pod 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Net 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Math 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/IPC 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/I18N 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Getopt 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/File/Spec 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/File 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/ExtUtils 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/CGI 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Exporter 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Devel 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Class 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/Carp 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/CPAN 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/pod 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/man/man3 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/man 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/BSDPAN/BSDPAN 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/BSDPAN/ExtUtils 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%%/BSDPAN 2>/dev/null || true +@unexec rmdir %D/lib/perl5/%%PERL_VER%% 2>/dev/null || true |