In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/7b8e5ef0662e52d98602ab69b7b9af6778e78e42?hp=450a7a1bbac26c29f4d17e66c5c3387e73388838>

- Log -----------------------------------------------------------------
commit 7b8e5ef0662e52d98602ab69b7b9af6778e78e42
Author: George Greer <[email protected]>
Date:   Wed Sep 28 18:34:59 2011 -0400

    perldelta for ExtUtils::MakeMaker version 6.61_01.

M       pod/perldelta.pod

commit 33cc85ac950468181dff9f2be5ebf4e0e2a69d55
Author: George Greer <[email protected]>
Date:   Tue Sep 27 23:16:09 2011 -0400

    Update ExtUtils::MakeMaker to CPAN version 6.61_01
    
    [DELTA]
    
    6.61_01  Sat Sep 24 22:16:13 PDT 2011
        Win32
        * Liblist::Kid now checks the ActiveState MinGW library path environment
          variable [MITHALDU]
        * Further fixes to the Win32 quoting rules.  Fixes failures on VC8+.
          [rt.cpan.org #69528] [SHAY]

M       Porting/Maintainers.pl
M       cpan/ExtUtils-MakeMaker/Changes
M       cpan/ExtUtils-MakeMaker/MANIFEST
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
M       cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
M       cpan/ExtUtils-MakeMaker/t/MM_Win32.t
M       cpan/ExtUtils-MakeMaker/t/oneliner.t
M       cpan/ExtUtils-MakeMaker/t/split_command.t
-----------------------------------------------------------------------

Summary of changes:
 Porting/Maintainers.pl                             |    2 +-
 cpan/ExtUtils-MakeMaker/Changes                    |   10 ++++
 cpan/ExtUtils-MakeMaker/MANIFEST                   |    1 +
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm    |    2 +-
 .../ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm |   22 ++++----
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm         |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm    |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm  |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm  |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm   |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm    |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm    |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm     |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm   |   50 +++++++-------------
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm   |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm         |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm  |    2 +-
 .../lib/ExtUtils/MakeMaker/Config.pm               |    2 +-
 .../lib/ExtUtils/MakeMaker/FAQ.pod                 |    2 +-
 .../lib/ExtUtils/MakeMaker/Tutorial.pod            |    2 +-
 .../ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm |    2 +-
 cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm    |    2 +-
 cpan/ExtUtils-MakeMaker/t/MM_Win32.t               |    3 +-
 cpan/ExtUtils-MakeMaker/t/oneliner.t               |   12 ++++-
 cpan/ExtUtils-MakeMaker/t/split_command.t          |    3 +-
 pod/perldelta.pod                                  |    4 ++
 35 files changed, 85 insertions(+), 74 deletions(-)

diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl
index 997d97b..9e76e03 100755
--- a/Porting/Maintainers.pl
+++ b/Porting/Maintainers.pl
@@ -734,7 +734,7 @@ use File::Glob qw(:case);
     'ExtUtils::MakeMaker' =>
        {
        'MAINTAINER'    => 'mschwern',
-       'DISTRIBUTION'  => 'MSTROUT/ExtUtils-MakeMaker-6.59.tar.gz',
+       'DISTRIBUTION'  => 'MSCHWERN/ExtUtils-MakeMaker-6.61_01.tar.gz',
        'FILES'         => q[cpan/ExtUtils-MakeMaker],
        'EXCLUDED'      => [ qr{^t/lib/Test/},
            qr{^(bundled|my)/},
diff --git a/cpan/ExtUtils-MakeMaker/Changes b/cpan/ExtUtils-MakeMaker/Changes
index 3938910..7b69e5c 100644
--- a/cpan/ExtUtils-MakeMaker/Changes
+++ b/cpan/ExtUtils-MakeMaker/Changes
@@ -1,6 +1,15 @@
+6.61_01  Sat Sep 24 22:16:13 PDT 2011
+    Win32
+    * Liblist::Kid now checks the ActiveState MinGW library path environment
+      variable [MITHALDU]
+    * Further fixes to the Win32 quoting rules.  Fixes failures on VC8+.
+      [rt.cpan.org #69528] [SHAY]
+
+
 6.59  Fri Aug  5 12:09:00 BST
     No changes since 6.58_01
 
+
 6.58_01  Wed Aug  3 21:12:00 BST
     Doc Fixes
     * Corrected the repository location [chorny]
@@ -13,6 +22,7 @@
       in site_perl shadowing our installation of other bundled modules.
       [rt.cpan.org 69465] [rt.cpan.org 69900] [MSTROUT]
 
+
 6.58  Wed Jul  6 14:17:06 PDT 2011
     No changes since 6.57_11
 
diff --git a/cpan/ExtUtils-MakeMaker/MANIFEST b/cpan/ExtUtils-MakeMaker/MANIFEST
index ef9ec12..0f31fec 100644
--- a/cpan/ExtUtils-MakeMaker/MANIFEST
+++ b/cpan/ExtUtils-MakeMaker/MANIFEST
@@ -164,3 +164,4 @@ t/xs.t
 TODO
 META.yml                                 Module YAML meta-data (added by 
MakeMaker)
 META.json                                Module JSON meta-data (added by 
MakeMaker)
+SIGNATURE                                Public-key signature (added by 
MakeMaker)
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
index 269514f..dde078b 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
@@ -10,7 +10,7 @@ our @ISA = qw(Exporter);
 
 our @EXPORT  = qw(test_harness pod2man perllocal_install uninstall 
                   warn_if_old_packlist);
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 my $Is_VMS = $^O eq 'VMS';
 
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
index 23b199a..53ddbb0 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
@@ -2,7 +2,7 @@ package ExtUtils::Liblist;
 
 use strict;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 use File::Spec;
 require ExtUtils::Liblist::Kid;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
index 125d2be..55c17fa 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
@@ -11,7 +11,7 @@ use 5.006;
 
 use strict;
 use warnings;
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 use ExtUtils::MakeMaker::Config;
 use Cwd 'cwd';
@@ -258,13 +258,14 @@ sub _win32_ext {
     # TODO: make this use MM_Win32.pm's compiler detection
     my %libs_seen;
     my @extralibs;
-    my $cc         = $Config{cc} || '';
-    my $VC         = $cc =~ /\bcl\b/i;
-    my $GC         = $cc =~ /\bgcc\b/i;
+    my $cc = $Config{cc} || '';
+    my $VC = $cc =~ /\bcl\b/i;
+    my $GC = $cc =~ /\bgcc\b/i;
+
     my $libext     = _win32_lib_extensions();
-    my @searchpath = ( '' );                               # from "-L/path" 
entries in $potential_libs
-    my @libpath    = _win32_default_search_paths( $VC );
-    my $pwd        = cwd();                                # from Cwd.pm
+    my @searchpath = ( '' );                                    # from 
"-L/path" entries in $potential_libs
+    my @libpath    = _win32_default_search_paths( $VC, $GC );
+    my $pwd        = cwd();                                     # from Cwd.pm
     my $search     = 1;
 
     # compute @extralibs from $potential_libs
@@ -353,7 +354,7 @@ sub _win32_make_lib_search_list {
 }
 
 sub _win32_default_search_paths {
-    my ( $VC ) = @_;
+    my ( $VC, $GC ) = @_;
 
     my $libpth = $Config{'libpth'} || '';
     $libpth =~ s,\\,/,g;            # normalize to forward slashes
@@ -361,9 +362,8 @@ sub _win32_default_search_paths {
     my @libpath = Text::ParseWords::quotewords( '\s+', 0, $libpth );
     push @libpath, "$Config{installarchlib}/CORE";    # add 
"$Config{installarchlib}/CORE" to default search path
 
-    if ( $VC and exists $ENV{LIB} and $ENV{LIB} ) {
-        push @libpath, split /;/, $ENV{LIB};
-    }
+    push @libpath, split /;/, $ENV{LIB}          if $VC and $ENV{LIB};
+    push @libpath, split /;/, $ENV{LIBRARY_PATH} if $GC and $ENV{LIBRARY_PATH};
 
     return @libpath;
 }
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
index dd43cc7..6911be0 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
@@ -3,7 +3,7 @@ package ExtUtils::MM;
 use strict;
 use ExtUtils::MakeMaker::Config;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::Liblist;
 require ExtUtils::MakeMaker;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
index 0d356e3..b841d5f 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_AIX;
 
 use strict;
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
index ee3e6bf..1744f0d 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_Any;
 
 use strict;
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 use Carp;
 use File::Spec;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
index 368d370..2a6bbca 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
@@ -26,7 +26,7 @@ require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
 
 our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 
 =item os_flavor
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
index 5f10d1e..8f327cf 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
@@ -9,7 +9,7 @@ require ExtUtils::MM_Unix;
 require ExtUtils::MM_Win32;
 our @ISA = qw( ExtUtils::MM_Unix );
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 
 =head1 NAME
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
index a8643c6..48a9f62 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
@@ -2,7 +2,7 @@ package ExtUtils::MM_DOS;
 
 use strict;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
index 05cbd92..748e26e 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
@@ -7,7 +7,7 @@ BEGIN {
     our @ISA = qw( ExtUtils::MM_Unix );
 }
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 
 =head1 NAME
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
index 4582a6d2..39100f6 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
@@ -2,7 +2,7 @@ package ExtUtils::MM_MacOS;
 
 use strict;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 sub new {
     die <<'UNSUPPORTED';
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
index a1ef531..43d9cf7 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
@@ -22,7 +22,7 @@ use strict;
 use ExtUtils::MakeMaker::Config;
 use File::Basename;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Win32;
 our @ISA = qw(ExtUtils::MM_Win32);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
index 9af648c..c84ab5e 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
@@ -5,7 +5,7 @@ use strict;
 use ExtUtils::MakeMaker qw(neatvalue);
 use File::Spec;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
index 402e72c..9f3d87e 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_QNX;
 
 use strict;
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
index 17afb3b..a2b6cae 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_UWIN;
 
 use strict;
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index 324885e..37f523d 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -15,7 +15,7 @@ use ExtUtils::MakeMaker qw($Verbose neatvalue);
 
 # If we make $VERSION an our variable parse_version() breaks
 use vars qw($VERSION);
-$VERSION = '6.59';
+$VERSION = '6.61_01';
 $VERSION = eval $VERSION;
 
 require ExtUtils::MM_Any;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
index 9e640f3..73c96c3 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
@@ -15,7 +15,7 @@ BEGIN {
 
 use File::Basename;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
index b0fd476..7e4e22d 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
@@ -1,7 +1,7 @@
 package ExtUtils::MM_VOS;
 
 use strict;
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
index 05a1976..46af63c 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
@@ -27,7 +27,7 @@ use ExtUtils::MakeMaker qw( neatvalue );
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
 our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 $ENV{EMXSHELL} = 'sh'; # to run `commands`
 
@@ -487,42 +487,28 @@ sub oneliner {
 sub quote_literal {
     my($self, $text) = @_;
 
-    # DOS batch processing is hilarious:
-    # Quotes need to be converted into triple quotes.
-    # Certain special characters need to be escaped with a caret if an odd
-    # number of quotes came before them.
-    my @text        = split '', $text;
-    my $quote_count = 0;
-    my %caret_chars = map { $_ => 1 } qw( < > | );
-    for my $char ( @text ) {
-        if ( $char eq '"' ) {
-            $quote_count++;
-            $char = '"""';
-        }
-        elsif ( $caret_chars{$char} and $quote_count % 2 ) {
-            $char = "^$char";
-        }
-        elsif ( $char eq "\\" ) {
-            $char = "\\\\";
-        }
-    }
-    $text = join '', @text;
+    # See: http://www.autohotkey.net/~deleyd/parameters/parameters.htm#CPP
+
+    # Apply the Microsoft C/C++ parsing rules
+    $text =~ s{\\\\"}{\\\\\\\\\\"}g;  # \\" -> \\\\\"
+    $text =~ s{(?<!\\)\\"}{\\\\\\"}g; # \"  -> \\\"
+    $text =~ s{(?<!\\)"}{\\"}g;       # "   -> \"
+    $text = qq{"$text"} if $text =~ /[ \t]/;
+
+    # Apply the Command Prompt parsing rules (cmd.exe)
+    my @text = split /("[^"]*")/, $text;
+    # We should also escape parentheses, but it breaks one-liners containing
+    # $(MACRO)s in makefiles.
+    s{([<>|&^@!])}{^$1}g foreach grep { !/^"[^"]*"$/ } @text;
+    $text = join('', @text);
     
-    # There is a terribly confusing edge case here, where this will do 
entirely the wrong thing:
-    # perl -e "use Data::Dumper; @ARGV = '%PATH%'; print Dumper( \@ARGV 
);print qq{@ARGV};" --
-    # I have no idea how to fix this manually, much less programmatically.
-    # However as it is such a rare edge case i'll just leave this 
documentation here and hope it never happens.
-
-    # dmake eats '{' inside double quotes and leaves alone { outside double
-    # quotes; however it transforms {{ into { either inside and outside double
-    # quotes.  It also translates }} into }.  The escaping below is not
-    # 100% correct.
+    # dmake expands {{ to { and }} to }.
     if( $self->is_make_type('dmake') ) {
         $text =~ s/{/{{/g;
-        $text =~ s/}}/}}}/g;
+        $text =~ s/}/}}/g;
     }
 
-    return qq{"$text"};
+    return $text;
 }
 
 
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
index b015828..2da186e 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
@@ -2,7 +2,7 @@ package ExtUtils::MM_Win95;
 
 use strict;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require ExtUtils::MM_Win32;
 our @ISA = qw(ExtUtils::MM_Win32);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
index 1e8eb4d..01dda8d 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
@@ -3,7 +3,7 @@ package ExtUtils::MY;
 use strict;
 require ExtUtils::MM;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 our @ISA = qw(ExtUtils::MM);
 
 {
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
index c8c3c23..8d5fd26 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
@@ -18,7 +18,7 @@ our @Overridable;
 my @Prepend_parent;
 my %Recognized_Att_Keys;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 $VERSION = eval $VERSION;
 
 # Emulate something resembling CVS $Revision$
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
index 58bbdd6..0cb12de 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
@@ -2,7 +2,7 @@ package ExtUtils::MakeMaker::Config;
 
 use strict;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 use Config ();
 
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
index ae9cf1a..e94d4f0 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
@@ -1,6 +1,6 @@
 package ExtUtils::MakeMaker::FAQ;
 
-our $VERSION = '6.58';
+our $VERSION = '6.61_01';
 
 1;
 __END__
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
index dee1b10..8db5fdb 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
@@ -1,6 +1,6 @@
 package ExtUtils::MakeMaker::Tutorial;
 
-our $VERSION = 6.58;
+our $VERSION = 6.61_01;
 
 
 =head1 NAME
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
index bf855b9..b5c8ef5 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
@@ -3,7 +3,7 @@ package ExtUtils::Mkbootstrap;
 # There's just too much Dynaloader incest here to turn on strict vars.
 use strict 'refs';
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 require Exporter;
 our @ISA = ('Exporter');
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
index 9609f64..ce1247c 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
@@ -10,7 +10,7 @@ use Config;
 
 our @ISA = qw(Exporter);
 our @EXPORT = qw(&Mksymlists);
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 sub Mksymlists {
     my(%spec) = @_;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm 
b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
index 2d235ac..007cf0d 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
@@ -3,7 +3,7 @@ package ExtUtils::testlib;
 use strict;
 use warnings;
 
-our $VERSION = '6.59';
+our $VERSION = '6.61_01';
 
 use Cwd;
 use File::Spec;
diff --git a/cpan/ExtUtils-MakeMaker/t/MM_Win32.t 
b/cpan/ExtUtils-MakeMaker/t/MM_Win32.t
index 98601d6..44a01e3 100644
--- a/cpan/ExtUtils-MakeMaker/t/MM_Win32.t
+++ b/cpan/ExtUtils-MakeMaker/t/MM_Win32.t
@@ -107,7 +107,7 @@ delete $ENV{PATHEXT} unless $had_pathext;
 # init_others(): check if all keys are created and set?
 # qw( TOUCH CHMOD CP RM_F RM_RF MV NOOP TEST_F LD AR LDLOADLIBS DEV_NUL )
 {
-    my $mm_w32 = bless( { BASEEXT => 'Foo' }, 'MM' );
+    my $mm_w32 = bless( { BASEEXT => 'Foo', MAKE => $Config{make} }, 'MM' );
     $mm_w32->init_others();
     my @keys = qw( TOUCH CHMOD CP RM_F RM_RF MV NOOP 
                    TEST_F LD AR LDLOADLIBS DEV_NULL );
@@ -124,6 +124,7 @@ delete $ENV{PATHEXT} unless $had_pathext;
         NAME         => 'TestMM_Win32', 
         VERSION      => '1.00',
         PM           => { 'MM_Win32.pm' => 1 },
+        MAKE         => $Config{make},
     }, 'MM';
 
     # XXX Hack until we have a proper init method.
diff --git a/cpan/ExtUtils-MakeMaker/t/oneliner.t 
b/cpan/ExtUtils-MakeMaker/t/oneliner.t
index 4523441..5e89295 100644
--- a/cpan/ExtUtils-MakeMaker/t/oneliner.t
+++ b/cpan/ExtUtils-MakeMaker/t/oneliner.t
@@ -6,15 +6,16 @@ BEGIN {
 
 chdir 't';
 
+use Config;
 use MakeMaker::Test::Utils;
-use Test::More tests => 11;
+use Test::More tests => 16;
 use File::Spec;
 
 my $TB = Test::More->builder;
 
 BEGIN { use_ok('ExtUtils::MM') }
 
-my $mm = bless { NAME => "Foo" }, 'MM';
+my $mm = bless { NAME => "Foo", MAKE => $Config{make} }, 'MM';
 isa_ok($mm, 'ExtUtils::MakeMaker');
 isa_ok($mm, 'ExtUtils::MM_Any');
 
@@ -47,6 +48,13 @@ try_oneliner(q{print " \" < "}, [],  q{ " < },  'quote, then 
bracket' );
 try_oneliner(q{print " < \"\" < \" < \" < "}, [],  q{ < "" < " < " < },  
'quotes and brackets mixed' );
 try_oneliner(q{print " < \" | \" < | \" < \" < "}, [],  q{ < " | " < | " < " < 
},  'brackets, pipes and quotes' );
 
+# some examples from 
http://www.autohotkey.net/~deleyd/parameters/parameters.htm#CPP
+try_oneliner(q{print q[ &<>^|()@ ! ]}, [],  q{ &<>^|()@ ! },  'example 8.1' );
+try_oneliner(q{print q[ &<>^|@()!"&<>^|@()! ]}, [],  q{ &<>^|@()!"&<>^|@()! }, 
 'example 8.2' );
+try_oneliner(q{print q[ "&<>^|@() !"&<>^|@() !" ]}, [],  q{ "&<>^|@() 
!"&<>^|@() !" },  'example 8.3' );
+try_oneliner(q{print q[ "C:\TEST A\" ]}, [],  q{ "C:\TEST A\" },  'example 
8.4' );
+try_oneliner(q{print q[ "C:\TEST %&^ A\" ]}, [],  q{ "C:\TEST %&^ A\" },  
'example 8.5' );
+
 # XXX gotta rethink the newline test.  The Makefile does newline
 # escaping, then the shell.
 
diff --git a/cpan/ExtUtils-MakeMaker/t/split_command.t 
b/cpan/ExtUtils-MakeMaker/t/split_command.t
index e57a542..6e6bab3 100644
--- a/cpan/ExtUtils-MakeMaker/t/split_command.t
+++ b/cpan/ExtUtils-MakeMaker/t/split_command.t
@@ -6,6 +6,7 @@ BEGIN {
 
 chdir 't';
 
+use Config;
 use ExtUtils::MM;
 use MakeMaker::Test::Utils;
 
@@ -15,7 +16,7 @@ my $Is_Win32 = $^O eq 'MSWin32';
 use Test::More tests => 7;
 
 my $perl = which_perl;
-my $mm = bless { NAME => "Foo" }, "MM";
+my $mm = bless { NAME => "Foo", MAKE => $Config{make} }, "MM";
 
 # I don't expect anything to have a length shorter than 256 chars.
 cmp_ok( $mm->max_exec_len, '>=', 256,   'max_exec_len' );
diff --git a/pod/perldelta.pod b/pod/perldelta.pod
index 825288e..a9ae7ee 100644
--- a/pod/perldelta.pod
+++ b/pod/perldelta.pod
@@ -102,6 +102,10 @@ XXX
 
 L<perlfaq> has been upgraded from version 5.0150034 to version 5.0150035.
 
+=item *
+
+L<ExtUtils::MakeMaker> has been upgraded from version 6.59 to version 6.61_01.
+
 =back
 
 =head2 Removed Modules and Pragmata

--
Perl5 Master Repository

Reply via email to