summaryrefslogtreecommitdiff
path: root/installperl
diff options
context:
space:
mode:
authorTim Bunce <Tim.Bunce@ig.co.uk>1995-01-17 04:09:00 +0000
committerAndy Dougherty <doughera@lafcol.lafayette.edu>1995-01-17 04:09:00 +0000
commit3edbfbe5ecbb7e6fb99acc874379580a458f3cff (patch)
tree0fef803084e171ed4d85c12a817e59d493f77612 /installperl
parente1666bf5602ae794563d8669f6ff15c398321bac (diff)
downloadperl-3edbfbe5ecbb7e6fb99acc874379580a458f3cff.tar.gz
MakeMaker 3.8
Diffstat (limited to 'installperl')
-rwxr-xr-xinstallperl27
1 files changed, 24 insertions, 3 deletions
diff --git a/installperl b/installperl
index 4fc145206c..fb4bb05242 100755
--- a/installperl
+++ b/installperl
@@ -48,7 +48,7 @@ if ($d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
$installbin || die "No installbin directory in config.sh\n";
-d $installbin || die "$installbin is not a directory\n";
-w $installbin || die "$installbin is not writable by you\n"
- unless $installbin =~ m#^/afs/#;
+ unless $installbin =~ m#^/afs/# || $nonono;
-x 'perl' || die "perl isn't executable!\n";
-x 'suidperl' || die "suidperl isn't executable!\n" if $d_dosuid;
@@ -148,6 +148,12 @@ else {
warn "Can't cd to lib to install lib files: $!\n";
}
+# Install header files
+makedir("$installarchlib/CORE");
+foreach $file (<*.h libperl*.a>) {
+ cp_if_diff($file,"$installarchlib/CORE/$file");
+}
+
# Offer to install perl in a "standard" location
($udev,$uino) = stat($mainperldir);
@@ -300,12 +306,18 @@ sub installlib {
return unless $do_installprivlib;
}
- &makedir("$installlib/$dir");
-
if (-f $_) {
+ if (/\.al$/ || /\.ix$/) {
+ $installlib = $installprivlib;
+ #We're installing *.al and *.ix files into $installprivlib,
+ #but we have to delete old *.al and *.ix files from the 5.000
+ #distribution:
+ &unlink("$installarchlib/$name");
+ }
system "cmp", "-s", $_, "$installlib/$name";
if ($?) {
&unlink("$installlib/$name");
+ &makedir("$installlib/$dir");
&cmd("cp $_ $installlib/$dir");
&chmod(0644, "$installlib/$name");
}
@@ -313,3 +325,12 @@ sub installlib {
&makedir("$installlib/$name");
}
}
+
+sub cp_if_diff {
+ my($from,$to)=@_;
+ -f $from || die "$0: $from not found";
+ system "cmp", "-s", $from, $to;
+ if ($?) {
+ cmd("cp $from $to");
+ }
+}