This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
remove some boilerplate
[perl5.git] / make_ext.pl
index cf1e826..28a67a3 100644 (file)
@@ -370,11 +370,17 @@ WriteMakefile(
 # ex: set ro:
 EOM
            close $fh or die "Can't close Makefile.PL: $!";
+           # As described in commit 23525070d6c0e51f:
+           # Push the atime and mtime of generated Makefile.PLs back 4
+           # seconds. In certain circumstances ( on virtual machines ) the
+           # generated Makefile.PL can produce a Makefile that is older than
+           # the Makefile.PL. Altering the atime and mtime backwards by 4
+           # seconds seems to resolve the issue.
+           eval {
+               my $ftime = time - 4;
+               utime $ftime, $ftime, 'Makefile.PL';
+           };
        }
-  eval {
-    my $ftime = time - 4;
-    utime $ftime, $ftime, 'Makefile.PL';
-  };
        print "\nRunning Makefile.PL in $ext_dir\n";
 
        # Presumably this can be simplified
@@ -443,8 +449,11 @@ EOS
     }
 
     if ($is_VMS) {
-       _macroify_passthrough($pass_through);
-       unshift @$pass_through, "/DESCRIPTION=$makefile";
+       _quote_args($pass_through);
+       @$pass_through = (
+                         "/DESCRIPTION=$makefile",
+                         '/MACRO=(' . join(',',@$pass_through) . ')'
+                        );
     }
 
     if (!$target or $target !~ /clean$/) {
@@ -472,11 +481,3 @@ sub _quote_args {
     } @{$args}
     ;
 }
-
-sub _macroify_passthrough {
-    my $passthrough = shift;
-    _quote_args($passthrough);
-    my $macro = '/MACRO=(' . join(',',@$passthrough) . ')';
-    @$passthrough = ();
-    @$passthrough[0] = $macro;  
-}