[ID 20001004.003] installman "Ambiguous call resolved as CORE::"
[p5sagit/p5-mst-13.2.git] / installperl
index 4013740..c65af5a 100755 (executable)
@@ -9,7 +9,7 @@ BEGIN {
 
 use strict;
 my ($Is_VMS, $Is_W32, $Is_OS2, $Is_Cygwin, $nonono, $dostrip,
-    $versiononly, $silent, $otherperls);
+    $versiononly, $silent, $verbose, $otherperls);
 use vars qw /$depth/;
 
 BEGIN {
@@ -56,6 +56,7 @@ while (@ARGV) {
     $versiononly = 1 if $ARGV[0] eq '-v';
     $silent = 1 if $ARGV[0] eq '-S';
     $otherperls = 0 if $ARGV[0] eq '-o';
+    $verbose = 1 if $ARGV[0] eq '-V' || $ARGV [0] eq '-n';
     shift;
 }
 
@@ -150,7 +151,7 @@ if ($Is_VMS) {  # Hang in there until File::Spec hits the big time
 if ($d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
 
    $installbin         || die "No installbin directory in config.sh\n";
--d $installbin         || mkpath($installbin, 1, 0777);
+-d $installbin         || mkpath($installbin, $verbose, 0777);
 -d $installbin         || $nonono || die "$installbin is not a directory\n";
 -w $installbin         || $nonono || die "$installbin is not writable by you\n"
        unless $installbin =~ m#^/afs/# || $nonono;
@@ -158,7 +159,7 @@ if ($d_dosuid && $>) { die "You must run as root to install suidperl\n"; }
 -x 'perl' . $exe_ext   || die "perl isn't executable!\n";
 -x 'suidperl' . $exe_ext|| die "suidperl isn't executable!\n" if $d_dosuid;
 
--f 't/ran_tests'       || $Is_W32
+-f 't/rantests'                || $Is_W32
                        || warn "WARNING: You've never run 'make test'!!!",
                                "  (Installing anyway.)\n";
 
@@ -235,10 +236,10 @@ if ($d_dosuid) {
 
 my ($do_installarchlib, $do_installprivlib) = (0, 0);
     
-mkpath($installprivlib, 1, 0777);
-mkpath($installarchlib, 1, 0777);
-mkpath($installsitelib, 1, 0777) if ($installsitelib);
-mkpath($installsitearch, 1, 0777) if ($installsitearch);
+mkpath($installprivlib, $verbose, 0777);
+mkpath($installarchlib, $verbose, 0777);
+mkpath($installsitelib, $verbose, 0777) if ($installsitelib);
+mkpath($installsitearch, $verbose, 0777) if ($installsitearch);
 
 if (chdir "lib") {
     $do_installarchlib = ! samepath($installarchlib, '.');
@@ -255,7 +256,7 @@ else {
 }
 
 # Install header files and libraries.
-mkpath("$installarchlib/CORE", 1, 0777);
+mkpath("$installarchlib/CORE", $verbose, 0777);
 my @corefiles;
 if ($Is_VMS) {  # We did core file selection during build
     my $coredir = "lib/$Config{archname}/$ver/CORE";
@@ -270,7 +271,7 @@ else {
     push(@corefiles,'perl.exp') if $^O eq 'aix';
     if ($^O eq 'mpeix') {
         # MPE needs mpeixish.h installed as well.
-        mkpath("$installarchlib/CORE/mpeix", 1, 0777);
+        mkpath("$installarchlib/CORE/mpeix", $verbose, 0777);
         push(@corefiles,'mpeix/mpeixish.h');
     }
     # If they have built sperl.o...
@@ -365,7 +366,7 @@ if (! $versiononly && (-f 'cppstdin') && (! samepath($installbin, '.'))) {
 
 # Install scripts.
 
-mkpath($installscript, 1, 0777);
+mkpath($installscript, $verbose, 0777);
 
 if (! $versiononly) {
     for (@scripts) {
@@ -391,7 +392,7 @@ if (! $versiononly) {
 
 my $pod = $Is_Cygwin ? 'pods' : 'pod';
 unless ( $versiononly && !($installprivlib =~ m/\Q$ver/)) {
-    mkpath("${installprivlib}/$pod", 1, 0777);
+    mkpath("${installprivlib}/$pod", $verbose, 0777);
 
     # If Perl 5.003's perldiag.pod is there, rename it.
     if (open POD, "${installprivlib}/$pod/perldiag.pod") {
@@ -459,7 +460,7 @@ if (!$versiononly && $otherperls) {
 }
 
 $packlist->write() unless $nonono;
-print "  Installation complete\n" unless $silent;
+print "  Installation complete\n" if $verbose;
 
 exit 0;
 
@@ -484,7 +485,7 @@ sub unlink {
     foreach my $name (@names) {
        next unless -e $name;
        chmod 0777, $name if ($Is_OS2 || $Is_W32 || $Is_Cygwin);
-       print "  unlink $name\n" unless $silent;
+       print "  unlink $name\n" if $verbose;
        ( CORE::unlink($name) and ++$cnt 
          or warn "Couldn't unlink $name: $!\n" ) unless $nonono;
     }
@@ -497,11 +498,11 @@ sub safe_unlink {
     foreach my $name (@names) {
        next unless -e $name;
        chmod 0777, $name if ($Is_OS2 || $Is_W32);
-       print "  unlink $name\n" unless $silent;
+       print "  unlink $name\n" if $verbose;
        next if CORE::unlink($name);
        warn "Couldn't unlink $name: $!\n";
        if ($! =~ /busy/i) {
-           print "  mv $name $name.old\n" unless $silent;
+           print "  mv $name $name.old\n" if $verbose;
            safe_rename($name, "$name.old")
                or warn "Couldn't rename $name: $!\n";
        }
@@ -526,7 +527,7 @@ sub link {
     my($from,$to) = @_;
     my($success) = 0;
 
-    print "  ln $from $to\n" unless $silent;
+    print $verbose ? "  ln $from $to\n" : "  $to\n" unless $silent;
     eval {
        CORE::link($from, $to)
            ? $success++
@@ -538,7 +539,7 @@ sub link {
     };
     if ($@) {
        warn $@;
-       print "  cp $from $to\n" unless $silent;
+        print $verbose ? "  cp $from $to\n" : "  $to\n" unless $silent;
        print "  creating new version of $to\n"
                  if $Is_VMS and -e $to and !$silent;
        File::Copy::copy($from, $to)
@@ -554,7 +555,7 @@ sub chmod {
     my($mode,$name) = @_;
 
     return if ($^O eq 'dos');
-    printf "  chmod %o %s\n", $mode, $name unless $silent;
+    printf "  chmod %o %s\n", $mode, $name if $verbose;
     CORE::chmod($mode,$name)
        || warn sprintf("Couldn't chmod %o %s: $!\n", $mode, $name)
       unless $nonono;
@@ -563,7 +564,7 @@ sub chmod {
 sub copy {
     my($from,$to) = @_;
 
-    print "  cp $from $to\n" unless $silent;
+    print $verbose ? "  cp $from $to\n" : "  $to\n" unless $silent;
     print "  creating new version of $to\n" if $Is_VMS and -e $to and !$silent;
     File::Copy::copy($from, $to)
        || warn "Couldn't copy $from to $to: $!\n"
@@ -629,7 +630,7 @@ sub installlib {
         $packlist->{"$installlib/$name"} = { type => 'file' };
        if (compare($_, "$installlib/$name") || $nonono) {
            unlink("$installlib/$name");
-           mkpath("$installlib/$dir", 1, 0777);
+           mkpath("$installlib/$dir", $verbose, 0777);
            # HP-UX (at least) needs to maintain execute permissions
            # on dynamically-loaded libraries.
            copy_if_diff($_, "$installlib/$name")
@@ -682,10 +683,10 @@ sub strip
 
     foreach my $file (@args) {
         if (-f $file) {
-            print "  strip $file\n" unless $silent;
+            print "  strip $file\n" if $verbose;
             system("strip", @opts, $file);
         } else {
-            print "# file '$file' skipped\n" unless $silent;
+            print "# file '$file' skipped\n" if $verbose;
         }
     }
 }