From: Jarkko Hietaniemi Date: Wed, 30 Jul 2003 09:54:46 +0000 (+0000) Subject: Upgrade to ExtUtils::MakeMaker 6.12. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=1b0fc07371681ebcc84e8b3186ecb0bce2c19f5d;p=p5sagit%2Fp5-mst-13.2.git Upgrade to ExtUtils::MakeMaker 6.12. p4raw-id: //depot/perl@20341 --- diff --git a/lib/ExtUtils/Changes b/lib/ExtUtils/Changes index 6c6a03f..69c148a 100644 --- a/lib/ExtUtils/Changes +++ b/lib/ExtUtils/Changes @@ -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 diff --git a/lib/ExtUtils/META.yml b/lib/ExtUtils/META.yml index d2d083c..bc6dac4 100644 --- a/lib/ExtUtils/META.yml +++ b/lib/ExtUtils/META.yml @@ -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 diff --git a/lib/ExtUtils/MM_MacOS.pm b/lib/ExtUtils/MM_MacOS.pm index 30520ec..6dcf820 100644 --- a/lib/ExtUtils/MM_MacOS.pm +++ b/lib/ExtUtils/MM_MacOS.pm @@ -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) diff --git a/lib/ExtUtils/MM_Unix.pm b/lib/ExtUtils/MM_Unix.pm index ef96d3d..62ed883 100644 --- a/lib/ExtUtils/MM_Unix.pm +++ b/lib/ExtUtils/MM_Unix.pm @@ -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 <= 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 diff --git a/lib/ExtUtils/MM_VMS.pm b/lib/ExtUtils/MM_VMS.pm index 02c4669..c8e9358 100644 --- a/lib/ExtUtils/MM_VMS.pm +++ b/lib/ExtUtils/MM_VMS.pm @@ -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 good) -rather than Unix rules ($sts == 0 ==E 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 < 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) }); } diff --git a/lib/ExtUtils/MakeMaker.pm b/lib/ExtUtils/MakeMaker.pm index 405ce77..8191303 100644 --- a/lib/ExtUtils/MakeMaker.pm +++ b/lib/ExtUtils/MakeMaker.pm @@ -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 diff --git a/lib/ExtUtils/t/MM_Unix.t b/lib/ExtUtils/t/MM_Unix.t index 3c1dc98..46e5402 100644 --- a/lib/ExtUtils/t/MM_Unix.t +++ b/lib/ExtUtils/t/MM_Unix.t @@ -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, $_); diff --git a/lib/ExtUtils/t/MM_VMS.t b/lib/ExtUtils/t/MM_VMS.t index 9ae57c6..dcc5ed6 100644 --- a/lib/ExtUtils/t/MM_VMS.t +++ b/lib/ExtUtils/t/MM_VMS.t @@ -29,7 +29,6 @@ BEGIN { pm_to_blib tool_autosplit tool_xsubpp - xsubpp_version tools_other dist c_o