Front page | perl.perl5.porters |
Postings from July 2001
[PATCH] installperl
From:
Wilfredo Sánchez
Date:
July 27, 2001 19:05
Subject:
[PATCH] installperl
Message ID:
F7912758-82FC-11D5-BFC6-003065D59FBA@thor.sbay.org
- Install pod files in pods not pod, which conflicts with POD. (Do the
same as cygwin.)
- chmod core library after strip, not before.
- strip a2p binary
- Indentation at if ($Is_NetWare && !$nwinstall) was inconsistent with
rest of file.
- Strip libraries on Darwin and Rhapsody.
- Pass along options to strip.
-Fred
Index: Scripting/perl/perl/installperl
diff -u Scripting/perl/perl/installperl:1.1.1.6
Scripting/perl/perl/installperl:1.8
--- Scripting/perl/perl/installperl:1.1.1.6 Mon Jul 16 14:19:15 2001
+++ Scripting/perl/perl/installperl Mon Jul 16 18:34:30 2001
@@ -8,7 +8,7 @@
}
use strict;
-my ($Is_VMS, $Is_W32, $Is_OS2, $Is_Cygwin, $nonono, $dostrip,
+my ($Is_VMS, $Is_W32, $Is_OS2, $Is_Cygwin, $Is_Darwin, $nonono,
$dostrip,
$versiononly, $silent, $verbose, $otherperls,
$archname,$Is_NetWare, $nwinstall);
use vars qw /$depth/;
@@ -17,6 +17,7 @@
$Is_W32 = $^O eq 'MSWin32';
$Is_OS2 = $^O eq 'os2';
$Is_Cygwin = $^O eq 'cygwin';
+ $Is_Darwin = $^O eq 'darwin';
if ($Is_VMS) { eval 'use VMS::Filespec;' }
}
@@ -341,8 +342,8 @@
# on dynamically-loadable libraries. So we do it for all.
if (copy_if_diff($file,"$installarchlib/CORE/$file")) {
if ($file =~ /\.(\Q$so\E|\Q$dlext\E)$/) {
- chmod(0555, "$installarchlib/CORE/$file");
strip("-S", "$installarchlib/CORE/$file") if $^O =~
/^(rhapsody|darwin)$/;
+ chmod(0555, "$installarchlib/CORE/$file");
} else {
chmod(0444, "$installarchlib/CORE/$file");
}
@@ -425,6 +426,7 @@
if (!$versiononly && ! samepath($installbin, 'x2p')) {
safe_unlink("$installbin/a2p$exe_ext");
copy("x2p/a2p$exe_ext", "$installbin/a2p$exe_ext");
+ strip("$installbin/a2p$exe_ext");
chmod(0755, "$installbin/a2p$exe_ext");
}
}
@@ -486,7 +488,7 @@
# Install pod pages. Where? I guess in $installprivlib/pod
# ($installprivlib/pods for cygwin).
-my $pod = $Is_Cygwin ? 'pods' : 'pod';
+my $pod = ($Is_Cygwin || $Is_Darwin) ? 'pods' : 'pod';
if ( !$versiononly || ($installprivlib =~ m/\Q$ver/)) {
mkpath("${installprivlib}/$pod", $verbose, 0777);
@@ -729,21 +731,28 @@
mkpath("$installlib/$dir", $verbose, 0777);
# HP-UX (at least) needs to maintain execute permissions
# on dynamically-loaded libraries.
- if ($Is_NetWare && !$nwinstall) {
- # Don't copy .nlp,.nlm files, doesn't make sense
on Windows and also
- # if copied will give problems when building new
extensions.
- # Has to be copied if we are installing on a
NetWare server and hence
- # the check !$nwinstall
- if (!(/\.(?:nlp|nlm|bs)$/)) {
- copy_if_diff($_, "$installlib/$name")
- and chmod($name =~ /\.(so|$dlext)$/o ?
0555 : 0444,
- "$installlib/$name");
- }
- } else {
- copy_if_diff($_, "$installlib/$name")
+ if ($Is_NetWare && !$nwinstall) {
+ # Don't copy .nlp,.nlm files, doesn't make sense on
Windows and also
+ # if copied will give problems when building new
extensions.
+ # Has to be copied if we are installing on a NetWare
server and hence
+ # the check !$nwinstall
+ if (!(/\.(?:nlp|nlm|bs)$/)) {
+ copy_if_diff($_, "$installlib/$name")
and chmod($name =~ /\.(so|$dlext)$/o ? 0555 :
0444,
- "$installlib/$name");
- } #if ($Is_NetWare)
+ "$installlib/$name");
+ }
+ } else {
+ if (copy_if_diff($_, "$installlib/$name")) {
+ if ($name =~ /\.(so|$dlext)$/o) {
+ strip("-S", "$installlib/$name") if $^O =~
/^(rhapsody|darwin)$/;
+ chmod(0555, "$installlib/$name");
+ } else {
+ strip("-S", "$installlib/$name")
+ if ($name =~ /\.a$/o and $^O =~
/^(rhapsody|darwin)$/);
+ chmod(0444, "$installlib/$name");
+ }
+ }
+ } #if ($Is_NetWare)
}
}
}
@@ -791,11 +800,14 @@
foreach my $file (@args) {
if (-f $file) {
- print " strip $file\n" if $verbose;
+ if ($verbose) {
+ print " strip " . join(' ', @opts);
+ print " " if (@opts);
+ print "$file\n";
+ }
system("strip", @opts, $file);
} else {
print "# file '$file' skipped\n" if $verbose;
}
}
}
-
-
[PATCH] installperl
by Wilfredo Sánchez