summaryrefslogtreecommitdiffstats
path: root/lang/perl5
diff options
context:
space:
mode:
authortobez <tobez@FreeBSD.org>2002-06-16 12:28:01 +0000
committertobez <tobez@FreeBSD.org>2002-06-16 12:28:01 +0000
commita32ae4b37ff635528a37e7c61d5002fa68cdca7b (patch)
tree91ac6932146346e6ee214d61d17ecc937d94c4f2 /lang/perl5
parent29c0c007718ab2e782ed5d9861c459d998256561 (diff)
downloadFreeBSD-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/Makefile2
-rw-r--r--lang/perl5/files/patch-Install.pm13
-rw-r--r--lang/perl5/files/use.perl28
-rw-r--r--lang/perl5/pkg-plist84
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
OpenPOWER on IntegriCloud