diff options
author | Tim Bunce <Tim.Bunce@ig.co.uk> | 1995-01-17 04:09:00 +0000 |
---|---|---|
committer | Andy Dougherty <doughera@lafcol.lafayette.edu> | 1995-01-17 04:09:00 +0000 |
commit | 3edbfbe5ecbb7e6fb99acc874379580a458f3cff (patch) | |
tree | 0fef803084e171ed4d85c12a817e59d493f77612 /installperl | |
parent | e1666bf5602ae794563d8669f6ff15c398321bac (diff) | |
download | perl-3edbfbe5ecbb7e6fb99acc874379580a458f3cff.tar.gz |
MakeMaker 3.8
Diffstat (limited to 'installperl')
-rwxr-xr-x | installperl | 27 |
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"); + } +} |