Upgrade to ExtUtils::MakeMaker 6.12.
authorJarkko Hietaniemi <jhi@iki.fi>
Wed, 30 Jul 2003 09:54:46 +0000 (09:54 +0000)
committerJarkko Hietaniemi <jhi@iki.fi>
Wed, 30 Jul 2003 09:54:46 +0000 (09:54 +0000)
p4raw-id: //depot/perl@20341

lib/ExtUtils/Changes
lib/ExtUtils/META.yml
lib/ExtUtils/MM_MacOS.pm
lib/ExtUtils/MM_Unix.pm
lib/ExtUtils/MM_VMS.pm
lib/ExtUtils/MakeMaker.pm
lib/ExtUtils/t/MM_Unix.t
lib/ExtUtils/t/MM_VMS.t

index 6c6a03f..69c148a 100644 (file)
@@ -1,4 +1,58 @@
-6.10_07
+6.12 Tue Jul 29 22:19:38 PDT 2003
+    - Should any of your prefixes be /, MakeMaker might lose this and
+      prepend your prefix as "prefixyour/directory" rather than
+      "prefix/your/directory" (Ed Moy bleadperl 20283)
+    - Reversing "realclean was duplicating work already done by clean"
+      (CVS 1.124 MM_Unix.pm).  Turns out it wasn't a duplication and this
+      was causing INST_* files to be left behind if your INST_LIB wasn't
+      blib/* as in the perl core.  realclean now removes the files copied
+      to INST_*.
+    - Eliminating xsubpp_version().  No longer relevant.  It was checking
+      for a feature added to xsubpp before 5.003_07 and doing it in a
+      really bizarre way.
+
+6.11 Thu Jul 24 01:24:37 PDT 2003
+    - Small grammatical doc touch up by Sean Burke
+    - Making basic.t clean up better after itself so it can be run
+      twice without setting up and cleaning up Big-Dummy again.
+    * Noting where to find make in the README
+    * Noting that MakeMaker does not produce a GNU make compatible Makefile
+      on Windows.
+    * 6.10_08 with a new version #.
+
+6.10_08 Mon Jul 21 18:17:06 PDT 2003
+    * $Config{installvendorman*dir} was being ignored and our default
+      always used. [rt.cpan.org #2949]
+    * Setting NORECURS to true was still resulting in a Makefile which
+      tried to recurse into subdirectories which contained a Makefile.PL
+      (it simply wouldn't have run them to generate Makefile's).
+      This appears to be a rather old bug.
+      [rt.cpan.org #2951]
+    * [rt.perl.org #4345] Arguments passed to WriteMakefile() would get
+      stopped upon by $self->{PARENT} in recursive builds in the process
+      of prepending a .. onto it.
+    - Command.t now using its own temp directory when testing 
+      expand_wildcards() so no stray files confuse it.
+    * No longer warning about 'postamble' attribute.
+    - Added installvars() to list INSTALL* variables so we don't keep
+      repeating the list all over the code.
+    - Added init_DEST() to create DESTINSTALL* variables for installing
+      with DESTDIR set.
+    * DESTDIR + PREFIX now does not duplicate DESTDIR.  [Redhat #91892
+      and part of rt.cpan.org #2954]
+    * DESTDIR is now not directly prepended to the INSTALL* variables.
+      installation targets now use DESTINSTALL* instead.  This prevents
+      the DESTDIR from showing up in places it shouldn't like perllocal.pod.
+      DESTDIR is still appearing in .packlist (bug). [rt.cpan.org #2954]
+    - MM_VMS->prefixify() wasn't honoring the %Config_Override causing
+      some MakeMaker generated config variables to be ignored.
+    - MM_VMS->prefixify() was only VMSifying part of its filepaths causing 
+      internal comparisions to get confused and think it had to prefixify 
+      when it didn't.
+
+6.10_07 Sat Jul  5 16:12:52 PDT 2003
+    * Fixing location of perllocal.pod so its always in INSTALLARCHLIB
+      instead of one for each perl, site and vendor.
     - Sun's make treats escaped newlines oddly.  Switching oneliner() back
       to using multiple -e's.
     * Bug in libscan() meant that any .pm containing RCS or CVS or SCCS
@@ -6,6 +60,10 @@
     - Command.t was getting confused in the core because it was reading
       files from the core t/ directory, not MakeMaker's t/ directry.
     - MM_OS2 PERL_ARCHIVE_AFTER test wrong for a.out systems (Ilya)
+    - Fixing perllocal.pod and XS installation on VMS.  An extraneous
+      newline was introduced when changing the install macros over to
+      $(ECHO).
+    - Added $(ECHO_N) macro to emulate 'echo -n'
 
 6.10_06 Sat Jun  7 00:55:29 PDT 2003
     - Whoops, Liblist.t busted on VMS after I turned strict on in
index d2d083c..bc6dac4 100644 (file)
@@ -1,6 +1,6 @@
 #XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX#
 name:         ExtUtils-MakeMaker
-version:      6.10_08
+version:      6.12
 version_from: lib/ExtUtils/MakeMaker.pm
 installdirs:  perl
 requires:
@@ -10,4 +10,4 @@ requires:
     Pod::Man:                      0
 
 distribution_type: module
-generated_by: ExtUtils::MakeMaker version 6.10_08
+generated_by: ExtUtils::MakeMaker version 6.12
index 30520ec..6dcf820 100644 (file)
@@ -12,7 +12,7 @@ require ExtUtils::MM_Unix;
 @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
 
 use vars qw($VERSION);
-$VERSION = '1.06';
+$VERSION = '1.07';
 
 use Config;
 use Cwd 'cwd';
@@ -877,11 +877,6 @@ install install_static install_dynamic ::
 ';
 }
 
-sub xsubpp_version
-{
-    return $ExtUtils::MakeMaker::Version;
-}
-
 
 =item processPL (o)
 
index ef96d3d..62ed883 100644 (file)
@@ -14,13 +14,13 @@ use vars qw($VERSION @ISA
             $Is_Mac $Is_OS2 $Is_VMS $Is_Win32 $Is_Win95  $Is_Dos $Is_VOS
             $Is_QNX $Is_AIX $Is_OSF $Is_IRIX  $Is_NetBSD $Is_BSD
             $Is_SunOS4 $Is_Solaris $Is_SunOS
-            $Verbose %pm %static $Xsubpp_Version
+            $Verbose %pm %static
             %Config_Override
            );
 
 use ExtUtils::MakeMaker qw($Verbose neatvalue);
 
-$VERSION = '1.38';
+$VERSION = '1.39';
 
 require ExtUtils::MM_Any;
 @ISA = qw(ExtUtils::MM_Any);
@@ -3406,10 +3406,11 @@ sub prefixify {
     my $path = $self->{uc $var} || 
                $Config_Override{lc $var} || $Config{lc $var} || '';
 
+    $rprefix .= '/' if $sprefix =~ m|/$|;
+
     print STDERR "  prefixify $var => $path\n" if $Verbose >= 2;
     print STDERR "    from $sprefix to $rprefix\n" if $Verbose >= 2;
 
-    $rprefix .= '/' if $sprefix =~ m|/$|; # Compensate for the slash
     if( $path !~ s{^\Q$sprefix\E\b}{$rprefix}s && $self->{ARGS}{PREFIX} ) {
 
         print STDERR "    cannot prefix, using default.\n" if $Verbose >= 2;
@@ -3489,7 +3490,7 @@ realclean purge ::  clean realclean_subdirs
         push(@m, "     \$(RM_F) \$(INST_STATIC)\n");
     }
 
-    my @files = ();
+    my @files = values %{$self->{PM}};
     push @files, $attribs{FILES} if $attribs{FILES};
     push @files, '$(FIRST_MAKEFILE)', '$(MAKEFILE_OLD)';
 
@@ -3952,21 +3953,7 @@ sub tool_xsubpp {
     }
 
 
-    my $xsubpp_version = $self->xsubpp_version($self->catfile($xsdir,"xsubpp"));
-
-    # What are the correct thresholds for version 1 && 2 Paul?
-    if ( $xsubpp_version > 1.923 ){
-       $self->{XSPROTOARG} = "" unless defined $self->{XSPROTOARG};
-    } else {
-       if (defined $self->{XSPROTOARG} && $self->{XSPROTOARG} =~ /\-prototypes/) {
-           print STDOUT qq{Warning: This extension wants to pass the switch "-prototypes" to xsubpp.
-       Your version of xsubpp is $xsubpp_version and cannot handle this.
-       Please upgrade to a more recent version of xsubpp.
-};
-       } else {
-           $self->{XSPROTOARG} = "";
-       }
-    }
+    $self->{XSPROTOARG} = "" unless defined $self->{XSPROTOARG};
 
     return qq{
 XSUBPPDIR = $xsdir
@@ -3978,61 +3965,6 @@ XSUBPP_EXTRA_ARGS =
 };
 };
 
-sub xsubpp_version
-{
-    my($self,$xsubpp) = @_;
-    return $Xsubpp_Version if defined $Xsubpp_Version; # global variable
-
-    my ($version) ;
-
-    # try to figure out the version number of the xsubpp on the system
-
-    # first try the -v flag, introduced in 1.921 & 2.000a2
-
-    return "" unless $self->needs_linking;
-
-    my $command = qq{$self->{PERL} "-I$self->{PERL_LIB}" $xsubpp -v 2>&1};
-    print "Running $command\n" if $Verbose >= 2;
-    $version = `$command` ;
-    warn "Running '$command' exits with status " . ($?>>8) if $?;
-    chop $version ;
-
-    return $Xsubpp_Version = $1 if $version =~ /^xsubpp version (.*)/ ;
-
-    # nope, then try something else
-
-    my $counter = '000';
-    my ($file) = 'temp' ;
-    $counter++ while -e "$file$counter"; # don't overwrite anything
-    $file .= $counter;
-
-    open(F, ">$file") or die "Cannot open file '$file': $!\n" ;
-    print F <<EOM ;
-MODULE = fred PACKAGE = fred
-
-int
-fred(a)
-        int     a;
-EOM
-
-    close F ;
-
-    $command = "$self->{PERL} $xsubpp $file 2>&1";
-    print "Running $command\n" if $Verbose >= 2;
-    my $text = `$command` ;
-    warn "Running '$command' exits with status " . ($?>>8) if $?;
-    unlink $file ;
-
-    # gets 1.2 -> 1.92 and 2.000a1
-    return $Xsubpp_Version = $1 if $text =~ /automatically by xsubpp version ([\S]+)\s*/  ;
-
-    # it is either 1.0 or 1.1
-    return $Xsubpp_Version = 1.1 if $text =~ /^Warning: ignored semicolon/ ;
-
-    # none of the above, so 1.0
-    return $Xsubpp_Version = "1.0" ;
-}
-
 
 =item all_target
 
index 02c4669..c8e9358 100644 (file)
@@ -20,8 +20,8 @@ BEGIN {
 
 use File::Basename;
 use vars qw($Revision @ISA $VERSION);
-($VERSION) = '5.68';
-($Revision) = q$Revision: 1.104 $ =~ /Revision:\s+(\S+)/;
+($VERSION) = '5.69';
+($Revision) = q$Revision: 1.107 $ =~ /Revision:\s+(\S+)/;
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
@@ -758,23 +758,11 @@ sub tool_xsubpp {
         (!exists($self->{XSOPT}) || $self->{XSOPT} !~ /linenumbers/)) {
         unshift(@tmargs,'-nolinenumbers');
     }
-    my $xsubpp_version = $self->xsubpp_version($self->catfile($xsdir,'xsubpp'));
 
-    # What are the correct thresholds for version 1 && 2 Paul?
-    if ( $xsubpp_version > 1.923 ){
-       $self->{XSPROTOARG} = '' unless defined $self->{XSPROTOARG};
-    } else {
-       if (defined $self->{XSPROTOARG} && $self->{XSPROTOARG} =~ /\-prototypes/) {
-           print STDOUT qq{Warning: This extension wants to pass the switch "-prototypes" to xsubpp.
-       Your version of xsubpp is $xsubpp_version and cannot handle this.
-       Please upgrade to a more recent version of xsubpp.
-};
-       } else {
-           $self->{XSPROTOARG} = "";
-       }
-    }
 
-    "
+    $self->{XSPROTOARG} = '' unless defined $self->{XSPROTOARG};
+
+    return "
 XSUBPPDIR = $xsdir
 XSUBPP = \$(PERLRUN) \$(XSUBPPDIR)xsubpp
 XSPROTOARG = $self->{XSPROTOARG}
@@ -783,71 +771,6 @@ XSUBPPARGS = @tmargs
 ";
 }
 
-=item xsubpp_version (override)
-
-Test xsubpp exit status according to VMS rules ($sts & 1 ==E<gt> good)
-rather than Unix rules ($sts == 0 ==E<gt> good).
-
-=cut
-
-sub xsubpp_version
-{
-    my($self,$xsubpp) = @_;
-    my ($version) ;
-    return '' unless $self->needs_linking;
-
-    # try to figure out the version number of the xsubpp on the system
-
-    # first try the -v flag, introduced in 1.921 & 2.000a2
-
-    my $command = qq{$self->{PERL} "-I$self->{PERL_LIB}" $xsubpp -v};
-    print "Running: $command\n" if $Verbose;
-    $version = `$command` ;
-    if ($?) {
-       use ExtUtils::MakeMaker::vmsish 'status';
-       warn "Running '$command' exits with status $?";
-    }
-    chop $version ;
-
-    return $1 if $version =~ /^xsubpp version (.*)/ ;
-
-    # nope, then try something else
-
-    my $counter = '000';
-    my ($file) = 'temp' ;
-    $counter++ while -e "$file$counter"; # don't overwrite anything
-    $file .= $counter;
-
-    local(*F);
-    open(F, ">$file") or die "Cannot open file '$file': $!\n" ;
-    print F <<EOM ;
-MODULE = fred PACKAGE = fred
-
-int
-fred(a)
-       int     a;
-EOM
-
-    close F ;
-
-    $command = "$self->{PERLRUN} $xsubpp $file";
-    print "Running: $command\n" if $Verbose;
-    my $text = `$command` ;
-    if ($?) {
-       use ExtUtils::MakeMaker::vmsish 'status';
-       warn "Running '$command' exits with status $?";
-    }
-    unlink $file ;
-
-    # gets 1.2 -> 1.92 and 2.000a1
-    return $1 if $text =~ /automatically by xsubpp version ([\S]+)\s*/  ;
-
-    # it is either 1.0 or 1.1
-    return 1.1 if $text =~ /^Warning: ignored semicolon/ ;
-
-    # none of the above, so 1.0
-    return "1.0" ;
-}
 
 =item tools_other (override)
 
@@ -1385,7 +1308,8 @@ realclean :: clean
     # combination of macros).  In order to stay below DCL's 255 char limit,
     # we put only 2 on a line.
     my($file,$fcnt);
-    my(@files) = qw{ $(FIRST_MAKEFILE) $(MAKEFILE_OLD) };
+    my(@files) = values %{$self->{PM}};
+    push @files, qw{ $(FIRST_MAKEFILE) $(MAKEFILE_OLD) };
     if ($self->has_link_code) {
        push(@files,qw{ $(INST_DYNAMIC) $(INST_STATIC) $(INST_BOOT) $(OBJECT) });
     }
index 405ce77..8191303 100644 (file)
@@ -2,8 +2,8 @@ package ExtUtils::MakeMaker;
 
 BEGIN {require 5.005_03;}
 
-$VERSION = '6.11';
-($Revision) = q$Revision: 1.123 $ =~ /Revision:\s+(\S+)/;
+$VERSION = '6.12';
+($Revision) = q$Revision: 1.124 $ =~ /Revision:\s+(\S+)/;
 
 require Exporter;
 use Config;
@@ -2037,7 +2037,7 @@ MakeMaker object. The following lines will be parsed o.k.:
 
     $VERSION = '1.00';
     *VERSION = \'1.01';
-    $VERSION = sprintf "%d.%03d", q$Revision: 1.123 $ =~ /(\d+)/g;
+    $VERSION = sprintf "%d.%03d", q$Revision: 1.124 $ =~ /(\d+)/g;
     $FOO::VERSION = '1.10';
     *FOO::VERSION = \'1.11';
     our $VERSION = 1.2.3;       # new for perl5.6.0 
index 3c1dc98..46e5402 100644 (file)
@@ -18,7 +18,7 @@ BEGIN {
         plan skip_all => 'Non-Unix platform';
     }
     else {
-        plan tests => 116;
+        plan tests => 115;
     }
 }
 
@@ -127,7 +127,6 @@ foreach ( qw /
   xs_c
   xs_cpp
   xs_o
-  xsubpp_version 
   / )
   {
       can_ok($class, $_);
index 9ae57c6..dcc5ed6 100644 (file)
@@ -29,7 +29,6 @@ BEGIN {
                    pm_to_blib
                    tool_autosplit
                    tool_xsubpp
-                   xsubpp_version
                    tools_other
                    dist
                    c_o