diff options
author | Perl 5 Porters <perl5-porters@africa.nicoh.com> | 1997-02-22 02:41:53 +1200 |
---|---|---|
committer | Chip Salzenberg <chip@atlantic.net> | 1997-02-22 02:41:53 +1200 |
commit | b971f6e4f6780f32fa16abecd87989a37436a193 (patch) | |
tree | 994f413811bce803c47f599cc156e4beb08184e4 /installperl | |
parent | 1defb83ec18f7f520caf4152c2f5c63dbf3cc155 (diff) | |
download | perl-b971f6e4f6780f32fa16abecd87989a37436a193.tar.gz |
[inseparable changes from match from perl5.003_28 to perl-5.003_90]
BUILD PROCESS
Subject: Re: ccdlflags don't quite work
Date: Mon, 24 Feb 1997 16:07:07 -0500 (EST)
From: Andy Dougherty <doughera@fractal.phys.lafayette.edu>
Files: Configure
Msg-ID: <Pine.SOL.3.95q.970224160630.5700E-100000@fractal.lafayette.e
(applied based on p5p patch as commit bc75e68b7b49a5ac07dc839aec7ca05eba51175f)
Subject: Use $ccflags, $ldflags, $libs when determining $randbits
From: Chip Salzenberg <chip@perl.com>
Files: Configure
Subject: 'installperl -v' doesn't do enough
Date: Mon, 24 Feb 1997 08:42:59 -0500
From: Spider Boardman <spider@Orb.Nashua.NH.US>
Files: installperl
Msg-ID: <199702241342.IAA25945@Orb.Nashua.NH.US>
(applied based on p5p patch as commit 7287d43f85a3731984c0e0ef1f20e1515b4140f2)
Subject: installperl breaks running system (for a while)
Date: Mon, 24 Feb 1997 09:12:11 -0500
From: Spider Boardman <spider@Orb.Nashua.NH.US>
Files: installperl
Msg-ID: <199702241412.JAA11829@Orb.Nashua.NH.US>
(applied based on p5p patch as commit ec2a3d87ba26a9586ad981051a949403027c147a)
CORE PORTABILITY
Subject: Digital UNIX and 3_28
Date: Sun, 23 Feb 1997 16:27:19 +0200 (EET)
From: Jarkko Hietaniemi <jhi@iki.fi>
Files: Configure MANIFEST ext/NDBM_File/hints/dec_osf.pl ext/ODBM_File/hints/dec_osf.pl hints/dec_osf.sh
Msg-ID: <199702231427.QAA13807@alpha.hut.fi>
(applied based on p5p patch as commit 58c0852f6968d0b4520a03e22a56226185ab78c6)
Subject: AmigaOS patches to 5.003_28
Date: Sat, 22 Feb 1997 18:08:02 +0100
From: "Norbert Pueschel" <pueschel@imsdd.meb.uni-bonn.de>
Files: README.amiga hints/amigaos.sh t/io/fs.t t/lib/anydbm.t t/lib/db-btree.t t/lib/db-hash.t t/lib/db-recno.t t/lib/gdbm.t t/lib/ndbm.t t/lib/odbm.t t/lib/sdbm.t t/op/magic.t t/op/stat.t
Msg-ID: <77724759@Armageddon.meb.uni-bonn.de>
(applied based on p5p patch as commit b8e6d11c134e93a7795379ceb62b7f950607c667)
TESTS
Subject: Don't use <*> where readdir() will do
From: Chip Salzenberg <chip@perl.com>
Files: t/op/stat.t
Subject: Allow for $^X to be 'miniperl'
Date: Sun, 23 Feb 1997 16:22:45 +0100
From: Dominic Dunlop <domo@slipper.ip.lu>
Files: t/op/magic.t
private-msgid: <v03020903af360f31aced@[194.51.248.65]>
Diffstat (limited to 'installperl')
-rwxr-xr-x | installperl | 146 |
1 files changed, 78 insertions, 68 deletions
diff --git a/installperl b/installperl index d4cb71185a..1267f49efc 100755 --- a/installperl +++ b/installperl @@ -90,54 +90,6 @@ if ($d_dosuid) { &chmod(04711, "$installbin/sperl$ver$exe_ext"); } -exit 0 if $versiononly; - -# Make links to ordinary names if installbin directory isn't current directory. - -if (! &samepath($installbin, '.')) { - &safe_unlink("$installbin/perl$exe_ext", "$installbin/suidperl$exe_ext"); - &link("$installbin/perl$ver$exe_ext", "$installbin/perl$exe_ext"); - &link("$installbin/sperl$ver$exe_ext", "$installbin/suidperl$exe_ext") - if $d_dosuid; -} - -if (! &samepath($installbin, 'x2p')) { - &safe_unlink("$installbin/a2p$exe_ext"); - &cmd("cp x2p/a2p$exe_ext $installbin/a2p$exe_ext"); - &chmod(0755, "$installbin/a2p$exe_ext"); -} - -# cppstdin is just a script, but it is architecture-dependent, so -# it can't safely be shared. Place it in $installbin. -# Note that Configure doesn't build cppstin if it isn't needed, so -# we skip this if cppstdin doesn't exist. -if ((-f cppstdin) && (! &samepath($installbin, '.'))) { - &safe_unlink("$installbin/cppstdin"); - &cmd("cp cppstdin $installbin/cppstdin"); - &chmod(0755, "$installbin/cppstdin"); -} - -# Install scripts. - -mkpath($installscript, 1, 0777); - -for (@scripts) { - &cmd("cp $_ $installscript"); - s#.*/##; &chmod(0755, "$installscript/$_"); -} - -# pstruct should be a link to c2ph - -&safe_unlink("$installscript/pstruct"); -&link("$installscript/c2ph","$installscript/pstruct"); - -# Install pod pages. Where? I guess in $installprivlib/pod. -mkpath("${installprivlib}/pod", 1, 0777); -foreach $file (@pods) { - # $file is a name like pod/perl.pod - cp_if_diff($file, "${installprivlib}/${file}"); -} - # Install library files. $do_installarchlib = $do_installprivlib = 0; @@ -150,6 +102,7 @@ mkpath($installsitearch, 1, 0777) if ($installsitearch); if (chdir "lib") { $do_installarchlib = ! &samepath($installarchlib, '.'); $do_installprivlib = ! &samepath($installprivlib, '.'); + $do_installprivlib = 0 if $versiononly && !($installprivlib =~ m/\Q$]/); if ($do_installarchlib || $do_installprivlib) { find(\&installlib, '.'); @@ -179,7 +132,7 @@ foreach $file (@corefiles) { $mainperl_is_instperl = 0; -if (!$nonono && -t STDIN && -t STDERR +if (!$versiononly && !$nonono && -t STDIN && -t STDERR && -w $mainperldir && ! &samepath($mainperldir, $installbin)) { local($usrbinperl) = "$mainperldir/perl$exe_ext"; local($instperl) = "$installbin/perl$exe_ext"; @@ -210,32 +163,89 @@ if (!$nonono && -t STDIN && -t STDERR } } +# Make links to ordinary names if installbin directory isn't current directory. + +if (! $versiononly && ! &samepath($installbin, '.')) { + &safe_unlink("$installbin/perl$exe_ext", "$installbin/suidperl$exe_ext"); + &link("$installbin/perl$ver$exe_ext", "$installbin/perl$exe_ext"); + &link("$installbin/sperl$ver$exe_ext", "$installbin/suidperl$exe_ext") + if $d_dosuid; +} + +if (!$versiononly && ! &samepath($installbin, 'x2p')) { + &safe_unlink("$installbin/a2p$exe_ext"); + &cmd("cp x2p/a2p$exe_ext $installbin/a2p$exe_ext"); + &chmod(0755, "$installbin/a2p$exe_ext"); +} + +# cppstdin is just a script, but it is architecture-dependent, so +# it can't safely be shared. Place it in $installbin. +# Note that Configure doesn't build cppstin if it isn't needed, so +# we skip this if cppstdin doesn't exist. +if (! $versiononly && (-f cppstdin) && (! &samepath($installbin, '.'))) { + &safe_unlink("$installbin/cppstdin"); + &cmd("cp cppstdin $installbin/cppstdin"); + &chmod(0755, "$installbin/cppstdin"); +} + +# Install scripts. + +mkpath($installscript, 1, 0777); + +if (! $versiononly) { + for (@scripts) { + &cmd("cp $_ $installscript"); + s#.*/##; &chmod(0755, "$installscript/$_"); + } +} + +# pstruct should be a link to c2ph + +if (! $versiononly) { + &safe_unlink("$installscript/pstruct"); + &link("$installscript/c2ph","$installscript/pstruct"); +} + +# Install pod pages. Where? I guess in $installprivlib/pod. + +if (! $versiononly && !($installprivlib =~ m/\Q$]/)) { + mkpath("${installprivlib}/pod", 1, 0777); + foreach $file (@pods) { + # $file is a name like pod/perl.pod + cp_if_diff($file, "${installprivlib}/${file}"); + } +} + # Check to make sure there aren't other perls around in installer's # path. This is probably UNIX-specific. Check all absolute directories # in the path except for where public executables are supposed to live. # Also skip $mainperl if the user opted to have it be a link to the # installed perl. -$dirsep = ($^O eq 'os2') ? ';' : ':' ; -($path = $ENV{"PATH"}) =~ s:\\:/:g ; -@path = split(/$dirsep/, $path); -@otherperls = (); -for (@path) { - next unless m,^/,; - next if ($_ eq $binexp); - # Use &samepath here because some systems have other dirs linked - # to $mainperldir (like SunOS) - next if ($mainperl_is_instperl && &samepath($_, $mainperldir)); - push(@otherperls, "$_/perl$exe_ext") - if (-x "$_/perl$exe_ext" && ! -d "$_/perl$exe_ext"); -} -if (@otherperls) { - print STDERR "\nWarning: perl appears in your path in the following " . - "locations beyond where\nwe just installed it:\n"; - for (@otherperls) { - print STDERR " ", $_, "\n"; +if (!$versiononly) { + + $dirsep = ($^O eq 'os2') ? ';' : ':' ; + ($path = $ENV{"PATH"}) =~ s:\\:/:g ; + @path = split(/$dirsep/, $path); + @otherperls = (); + for (@path) { + next unless m,^/,; + # Use &samepath here because some systems have other dirs linked + # to $mainperldir (like SunOS) + next if &samepath($_, $binexp); + next if ($mainperl_is_instperl && &samepath($_, $mainperldir)); + push(@otherperls, "$_/perl$exe_ext") + if (-x "$_/perl$exe_ext" && ! -d "$_/perl$exe_ext"); + } + if (@otherperls) { + print STDERR "\nWarning: perl appears in your path in the following " . + "locations beyond where\nwe just installed it:\n"; + for (@otherperls) { + print STDERR " ", $_, "\n"; + } + print STDERR "\n"; } - print STDERR "\n"; + } print STDERR " Installation complete\n"; |