summaryrefslogtreecommitdiff
path: root/installperl
diff options
context:
space:
mode:
authorPerl 5 Porters <perl5-porters@africa.nicoh.com>1997-02-22 02:41:53 +1200
committerChip Salzenberg <chip@atlantic.net>1997-02-22 02:41:53 +1200
commitb971f6e4f6780f32fa16abecd87989a37436a193 (patch)
tree994f413811bce803c47f599cc156e4beb08184e4 /installperl
parent1defb83ec18f7f520caf4152c2f5c63dbf3cc155 (diff)
downloadperl-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-xinstallperl146
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";