Hello community,
here is the log from the commit of package perl-ExtUtils-MakeMaker for
openSUSE:Factory checked in at 2014-02-11 10:44:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-ExtUtils-MakeMaker (Old)
and /work/SRC/openSUSE:Factory/.perl-ExtUtils-MakeMaker.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-ExtUtils-MakeMaker"
Changes:
--------
---
/work/SRC/openSUSE:Factory/perl-ExtUtils-MakeMaker/perl-ExtUtils-MakeMaker.changes
2013-12-06 14:42:55.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.perl-ExtUtils-MakeMaker.new/perl-ExtUtils-MakeMaker.changes
2014-02-11 10:44:36.000000000 +0100
@@ -1,0 +2,34 @@
+Sat Feb 8 10:54:51 UTC 2014 - [email protected]
+
+- update to 6.88:
+ Misc:
+ * disable make parallelism for pure_all target
+ * Enable bootstrapping to work on v5.10.x again
+ Bug fixes:
+ * Don't recurse into stale dist dirs
+ * RT#90780 fix Macro `BOOTSTRAP' redefined warnings
+ * Only enable automatic OBJECT generation if MAGICXS is true
+ * harden xsubpp locating loop in MM_Unix
+ * RT#91540 PREREQ_FATAL not recognised on command line
+ * Export 'configure' section of prereqs when meta-spec version 2
+ * Explicitly require dynaloader before using mod2fname
+ * Expanded test coverage for metafiles
+ * Get rid of unused printf arguments in dir_target
+ * Get rid of unused printf arguments in dynamic_bs
+ * On Android, pass PERL_LIB through rel2abs().
+ * Synchronisation with blead to remove old cross-compilation model
+ New Features:
+ * OBJECT can now be specified as an array
+ * build C_FILES/O_FILES/OBJECT automatically from XS
+ * Added MAGICXS attribute to explicitly enable automagic
+ XS building.
+ * Added PPM_UNINSTALL_EXEC and PPM_UNINSTALL_SCRIPT options
+ to PPD generation
+ Doc fixes:
+ * Correct the documentation for MAGICXS
+ * Document BUILD_REQUIRES defaults
+ * Documentation expanded to mention JSON metafiles
+ * mention that TEST_REQUIRES is in v6.64 and above
+ * Update documentation for LICENSE attribute.
+
+-------------------------------------------------------------------
Old:
----
ExtUtils-MakeMaker-6.82.tar.gz
New:
----
ExtUtils-MakeMaker-6.88.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-ExtUtils-MakeMaker.spec ++++++
--- /var/tmp/diff_new_pack.gElF8Y/_old 2014-02-11 10:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.gElF8Y/_new 2014-02-11 10:44:36.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package perl-ExtUtils-MakeMaker
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: perl-ExtUtils-MakeMaker
-Version: 6.82
+Version: 6.88
Release: 0
%define cpan_name ExtUtils-MakeMaker
Summary: Create a module Makefile
++++++ ExtUtils-MakeMaker-6.82.tar.gz -> ExtUtils-MakeMaker-6.88.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/Changes
new/ExtUtils-MakeMaker-6.88/Changes
--- old/ExtUtils-MakeMaker-6.82/Changes 2013-11-04 20:20:56.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/Changes 2014-01-31 21:50:06.000000000 +0100
@@ -1,3 +1,103 @@
+6.88 Fri Jan 31 20:49:13 GMT 2014
+
+ No changes from 6.87_05
+
+6.87_05 Tue Jan 28 13:54:21 GMT 2014
+ Bug fixes:
+ * Synchronisation with blead to remove old cross-compilation model
+
+6.87_04 Sun Jan 26 19:29:05 GMT 2014
+ Bug fixes:
+ * On Android, pass PERL_LIB through rel2abs().
+
+6.87_03 Sun Jan 19 17:49:43 GMT 2014
+ Bug fixes:
+ * Get rid of unused printf arguments in dynamic_bs
+
+6.87_02 Sat Jan 18 13:00:36 GMT 2014
+ Doc fixes:
+ * Update documentation for LICENSE attribute.
+
+ Bug fixes:
+ * Get rid of unused printf arguments in dir_target
+
+6.87_01 Sun Jan 12 10:31:41 GMT 2014
+ Doc fixes:
+ * mention that TEST_REQUIRES is in v6.64 and above
+
+6.86 Sat Jan 4 12:17:53 GMT 2014
+
+ No changes from 6.85_07
+
+6.85_07 Wed Jan 1 18:55:22 GMT 2014
+ Bug fixes:
+ * Expanded test coverage for metafiles
+
+ Doc fixes:
+ * Documentation expanded to mention JSON metafiles
+
+6.85_06 Mon Dec 30 23:14:37 GMT 2013
+ Bug fixes:
+ * Explicitly require dynaloader before using mod2fname
+
+6.85_05 Sun Dec 29 11:25:00 GMT 2013
+ Bug fixes:
+ * Export 'configure' section of prereqs when meta-spec version 2
+
+ Doc fixes:
+ * Document BUILD_REQUIRES defaults
+
+6.85_04 Mon Dec 23 15:00:14 GMT 2013
+
+ No changes since v6.85_03 fixing repo tags
+
+6.85_03 Mon Dec 23 14:55:37 GMT 2013
+ Bug fixes:
+ * RT#91540 PREREQ_FATAL not recognised on command line
+
+6.85_02 Tue Dec 17 10:13:28 GMT 2013
+ New features:
+ * Added PPM_UNINSTALL_EXEC and PPM_UNINSTALL_SCRIPT options
+ to PPD generation
+
+6.85_01 Mon Dec 16 13:15:43 GMT 2013
+ Bug Fixes:
+ * harden xsubpp locating loop in MM_Unix
+
+6.84 Sat Nov 30 15:22:35 GMT 2013
+
+ No changes from 6.83_06
+
+6.83_06 Fri Nov 29 21:50:51 GMT 2013
+ Doc fixes:
+ * Correct the documentation for MAGICXS
+
+6.83_05 Mon Nov 25 22:51:11 GMT 2013
+ New Features:
+ * Added MAGICXS attribute to explicitly enable automagic
+ XS building.
+
+ Bug fixes:
+ * RT#90780 fix Macro `BOOTSTRAP' redefined warnings
+ * Only enable automatic OBJECT generation if MAGICXS is true
+
+6.83_04 Sun Nov 17 11:41:43 GMT 2013
+ New Features:
+ * OBJECT can now be specified as an array
+ * build C_FILES/O_FILES/OBJECT automatically from XS
+
+6.83_03 Fri Nov 15 09:44:26 GMT 2013
+ Bug fixes:
+ * Don't recurse into stale dist dirs
+
+6.83_02 Tue Nov 12 11:11:34 GMT 2013
+ Misc:
+ * Enable bootstrapping to work on v5.10.x again
+
+6.83_01 Tue Nov 5 11:43:50 GMT 2013
+ Misc:
+ * disable make parallelism for pure_all target
+
6.82 Mon Nov 4 19:20:07 GMT 2013
No changes from 6.81_05
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/META.json
new/ExtUtils-MakeMaker-6.88/META.json
--- old/ExtUtils-MakeMaker-6.82/META.json 2013-11-04 20:21:58.000000000
+0100
+++ new/ExtUtils-MakeMaker-6.88/META.json 2014-01-31 21:58:06.000000000
+0100
@@ -4,7 +4,7 @@
"Michael G Schwern <[email protected]>"
],
"dynamic_config" : 1,
- "generated_by" : "ExtUtils::MakeMaker version 6.82, CPAN::Meta::Converter
version 2.120351",
+ "generated_by" : "ExtUtils::MakeMaker version 6.88, CPAN::Meta::Converter
version 2.120351",
"license" : [
"perl_5"
],
@@ -58,5 +58,5 @@
},
"x_MailingList" : "[email protected]"
},
- "version" : "6.82"
+ "version" : "6.88"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/META.yml
new/ExtUtils-MakeMaker-6.88/META.yml
--- old/ExtUtils-MakeMaker-6.82/META.yml 2013-11-04 20:21:58.000000000
+0100
+++ new/ExtUtils-MakeMaker-6.88/META.yml 2014-01-31 21:58:06.000000000
+0100
@@ -6,7 +6,7 @@
Data::Dumper: 0
configure_requires: {}
dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.82, CPAN::Meta::Converter version
2.120351'
+generated_by: 'ExtUtils::MakeMaker version 6.88, CPAN::Meta::Converter version
2.120351'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -33,4 +33,4 @@
license: http://dev.perl.org/licenses/
repository: http://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker
x_MailingList: [email protected]
-version: 6.82
+version: 6.88
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/Makefile.PL
new/ExtUtils-MakeMaker-6.88/Makefile.PL
--- old/ExtUtils-MakeMaker-6.82/Makefile.PL 2013-09-22 19:39:56.000000000
+0200
+++ new/ExtUtils-MakeMaker-6.88/Makefile.PL 2014-01-22 21:12:31.000000000
+0100
@@ -244,4 +244,14 @@
END
}
+
+ sub special_targets {
+ my $make_frag = shift->SUPER::special_targets(@_);
+ $make_frag .= <<'MAKE_FRAG';
+.NOTPARALLEL: pure_all
+
+MAKE_FRAG
+ return $make_frag;
+ }
+
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ExtUtils-MakeMaker-6.82/bundled/CPAN-Meta/CPAN/Meta/Converter.pm
new/ExtUtils-MakeMaker-6.88/bundled/CPAN-Meta/CPAN/Meta/Converter.pm
--- old/ExtUtils-MakeMaker-6.82/bundled/CPAN-Meta/CPAN/Meta/Converter.pm
2013-08-01 10:09:55.000000000 +0200
+++ new/ExtUtils-MakeMaker-6.88/bundled/CPAN-Meta/CPAN/Meta/Converter.pm
2013-11-12 11:22:59.000000000 +0100
@@ -6,7 +6,7 @@
use CPAN::Meta::Validator;
-use version 0.82 ();
+use version (); # Removed 0.82 constraint, EUMM installed CPAN::Meta
use Parse::CPAN::Meta 1.4400 ();
sub _dclone {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Command/MM.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Command/MM.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Command/MM.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Command/MM.pm 2014-01-31
21:50:13.000000000 +0100
@@ -10,7 +10,7 @@
our @EXPORT = qw(test_harness pod2man perllocal_install uninstall
warn_if_old_packlist test_s cp_nonempty);
-our $VERSION = '6.82';
+our $VERSION = '6.88';
my $Is_VMS = $^O eq 'VMS';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Liblist/Kid.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Liblist/Kid.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Liblist/Kid.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Liblist/Kid.pm 2014-01-31
21:50:13.000000000 +0100
@@ -11,7 +11,7 @@
use strict;
use warnings;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
use ExtUtils::MakeMaker::Config;
use Cwd 'cwd';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Liblist.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Liblist.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Liblist.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Liblist.pm 2014-01-31
21:50:13.000000000 +0100
@@ -2,7 +2,7 @@
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
use File::Spec;
require ExtUtils::Liblist::Kid;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM.pm 2014-01-31
21:50:13.000000000 +0100
@@ -3,7 +3,7 @@
use strict;
use ExtUtils::MakeMaker::Config;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::Liblist;
require ExtUtils::MakeMaker;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_AIX.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_AIX.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_AIX.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_AIX.pm 2014-01-31
21:50:13.000000000 +0100
@@ -1,7 +1,7 @@
package ExtUtils::MM_AIX;
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Unix;
our @ISA = qw(ExtUtils::MM_Unix);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Any.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Any.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Any.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Any.pm 2014-01-31
21:50:13.000000000 +0100
@@ -1,7 +1,7 @@
package ExtUtils::MM_Any;
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
use Carp;
use File::Spec;
@@ -643,7 +643,7 @@
my $make = '';
foreach my $dir (@dirs) {
- $make .= sprintf <<'MAKE', ($dir) x 7;
+ $make .= sprintf <<'MAKE', ($dir) x 4;
%s$(DFSEP).exists :: Makefile.PL
$(NOECHO) $(MKPATH) %s
$(NOECHO) $(CHMOD) $(PERM_DIR) %s
@@ -806,9 +806,9 @@
Generate the metafile target.
-Writes the file META.yml YAML encoded meta-data about the module in
-the distdir. The format follows Module::Build's as closely as
-possible.
+Writes the file META.yml (YAML encoded meta-data) and META.json
+(JSON encoded meta-data) about the module in the distdir.
+The format follows Module::Build's as closely as possible.
=cut
@@ -959,7 +959,8 @@
my @metadata_pairs = $mm->metafile_data(\%meta_add, \%meta_merge);
-Returns the data which MakeMaker turns into the META.yml file.
+Returns the data which MakeMaker turns into the META.yml file
+and the META.json file.
Values of %meta_add will overwrite any existing metadata in those
keys. %meta_merge will be merged with them.
@@ -995,17 +996,6 @@
# The author key is required and it takes a list.
$meta{author} = defined $self->{AUTHOR} ? $self->{AUTHOR} : [];
- # Check the original args so we can tell between the user setting it
- # to an empty hash and it just being initialized.
- if( $self->{ARGS}{CONFIGURE_REQUIRES} ) {
- $meta{configure_requires}
- = _normalize_prereqs($self->{CONFIGURE_REQUIRES});
- } else {
- $meta{configure_requires} = {
- 'ExtUtils::MakeMaker' => 0,
- };
- }
-
{
my $vers = _metaspec_version( $meta_add, $meta_merge );
my $method = $vers =~ m!^2!
@@ -1046,6 +1036,15 @@
# Check the original args so we can tell between the user setting it
# to an empty hash and it just being initialized.
+ if( $self->{ARGS}{CONFIGURE_REQUIRES} ) {
+ $meta{configure_requires}
+ = _normalize_prereqs($self->{CONFIGURE_REQUIRES});
+ } else {
+ $meta{configure_requires} = {
+ 'ExtUtils::MakeMaker' => 0,
+ };
+ }
+
if( $self->{ARGS}{BUILD_REQUIRES} ) {
$meta{build_requires} = _normalize_prereqs($self->{BUILD_REQUIRES});
} else {
@@ -1074,6 +1073,15 @@
# Check the original args so we can tell between the user setting it
# to an empty hash and it just being initialized.
+ if( $self->{ARGS}{CONFIGURE_REQUIRES} ) {
+ $meta{prereqs}{configure}{requires}
+ = _normalize_prereqs($self->{CONFIGURE_REQUIRES});
+ } else {
+ $meta{prereqs}{configure}{requires} = {
+ 'ExtUtils::MakeMaker' => 0,
+ };
+ }
+
if( $self->{ARGS}{BUILD_REQUIRES} ) {
$meta{prereqs}{build}{requires} =
_normalize_prereqs($self->{BUILD_REQUIRES});
} else {
@@ -1270,8 +1278,8 @@
my $make_frag = $mm->distmeta_target;
-Generates the distmeta target to add META.yml to the MANIFEST in the
-distdir.
+Generates the distmeta target to add META.yml and META.json to the MANIFEST
+in the distdir.
=cut
@@ -1307,8 +1315,8 @@
my $mymeta = $mm->mymeta;
-Generate MYMETA information as a hash either from an existing META.yml
-or from internal data.
+Generate MYMETA information as a hash either from an existing CPAN Meta file
+(META.json or META.yml) or from internal data.
=cut
@@ -1376,9 +1384,7 @@
$self->write_mymeta( $mymeta );
-Write MYMETA information to MYMETA.yml.
-
-This will probably be refactored into a more generic YAML dumping method.
+Write MYMETA information to MYMETA.json and MYMETA.yml.
=cut
@@ -1627,14 +1633,7 @@
# you to build directly into, say $Config{privlibexp}.
unless ($self->{INST_LIB}){
if ($self->{PERL_CORE}) {
- if (defined $Cross::platform) {
- $self->{INST_LIB} = $self->{INST_ARCHLIB} =
- $self->catdir($self->{PERL_LIB},"..","xlib",
- $Cross::platform);
- }
- else {
- $self->{INST_LIB} = $self->{INST_ARCHLIB} = $self->{PERL_LIB};
- }
+ $self->{INST_LIB} = $self->{INST_ARCHLIB} = $self->{PERL_LIB};
} else {
$self->{INST_LIB} = $self->catdir($Curdir,"blib","lib");
}
@@ -2154,6 +2153,10 @@
}
if ( $self->{OBJECT} ) {
+ $self->{OBJECT} = join(" ", @{$self->{OBJECT}}) if ref $self->{OBJECT};
+ $self->{OBJECT} =~ s!\.o(bj)?\b!\$(OBJ_EXT)!g;
+ } elsif ( $self->{MAGICXS} && @{$self->{O_FILES}||[]} ) {
+ $self->{OBJECT} = join(" ", @{$self->{O_FILES}});
$self->{OBJECT} =~ s!\.o(bj)?\b!\$(OBJ_EXT)!g;
} else {
# init_dirscan should have found out, if we have C files
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_BeOS.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_BeOS.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_BeOS.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_BeOS.pm 2014-01-31
21:50:13.000000000 +0100
@@ -26,7 +26,7 @@
require ExtUtils::MM_Unix;
our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '6.82';
+our $VERSION = '6.88';
=item os_flavor
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Cygwin.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Cygwin.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Cygwin.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Cygwin.pm 2014-01-31
21:50:13.000000000 +0100
@@ -9,7 +9,7 @@
require ExtUtils::MM_Win32;
our @ISA = qw( ExtUtils::MM_Unix );
-our $VERSION = '6.82';
+our $VERSION = '6.88';
=head1 NAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_DOS.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_DOS.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_DOS.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_DOS.pm 2014-01-31
21:50:13.000000000 +0100
@@ -2,7 +2,7 @@
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Any;
require ExtUtils::MM_Unix;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Darwin.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Darwin.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Darwin.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Darwin.pm 2014-01-31
21:50:13.000000000 +0100
@@ -7,7 +7,7 @@
our @ISA = qw( ExtUtils::MM_Unix );
}
-our $VERSION = '6.82';
+our $VERSION = '6.88';
=head1 NAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_MacOS.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_MacOS.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_MacOS.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_MacOS.pm 2014-01-31
21:50:13.000000000 +0100
@@ -2,7 +2,7 @@
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
sub new {
die <<'UNSUPPORTED';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_NW5.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_NW5.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_NW5.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_NW5.pm 2014-01-31
21:50:13.000000000 +0100
@@ -22,7 +22,7 @@
use ExtUtils::MakeMaker::Config;
use File::Basename;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Win32;
our @ISA = qw(ExtUtils::MM_Win32);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_OS2.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_OS2.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_OS2.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_OS2.pm 2014-01-31
21:50:13.000000000 +0100
@@ -5,7 +5,7 @@
use ExtUtils::MakeMaker qw(neatvalue);
use File::Spec;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Any;
require ExtUtils::MM_Unix;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_QNX.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_QNX.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_QNX.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_QNX.pm 2014-01-31
21:50:13.000000000 +0100
@@ -1,7 +1,7 @@
package ExtUtils::MM_QNX;
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Unix;
our @ISA = qw(ExtUtils::MM_Unix);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_UWIN.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_UWIN.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_UWIN.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_UWIN.pm 2014-01-31
21:50:13.000000000 +0100
@@ -1,7 +1,7 @@
package ExtUtils::MM_UWIN;
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Unix;
our @ISA = qw(ExtUtils::MM_Unix);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Unix.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Unix.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Unix.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Unix.pm 2014-01-31
21:50:13.000000000 +0100
@@ -15,7 +15,7 @@
# If we make $VERSION an our variable parse_version() breaks
use vars qw($VERSION);
-$VERSION = '6.82';
+$VERSION = '6.88';
$VERSION = eval $VERSION; ## no critic [BuiltinFunctions::ProhibitStringyEval]
require ExtUtils::MM_Any;
@@ -37,6 +37,7 @@
$Is{BSD} = ($^O =~ /^(?:free|net|open)bsd$/ or
grep( $^O eq $_, qw(bsdos interix dragonfly) )
);
+ $Is{Android} = $^O =~ /android/;
}
BEGIN {
@@ -866,7 +867,7 @@
my $target = $Is{VMS} ? '$(MMS$TARGET)' : '$@';
- return sprintf <<'MAKE_FRAG', ($target) x 5;
+ return sprintf <<'MAKE_FRAG', ($target) x 2;
BOOTSTRAP = $(BASEEXT).bs
# As Mkbootstrap might not write a file (if none is required)
@@ -933,7 +934,7 @@
my $libs = '$(LDLOADLIBS)';
- if (($Is{NetBSD} || $Is{Interix}) && $Config{'useshrplib'} eq 'true') {
+ if (($Is{NetBSD} || $Is{Interix} || $Is{Android}) && $Config{'useshrplib'}
eq 'true') {
# Use nothing on static perl platforms, and to the flags needed
# to link against the shared libperl library on shared perl
# platforms. We peek at lddlflags to see if we need -Wl,-R
@@ -942,6 +943,10 @@
$libs .= ' -L$(PERL_INC) -Wl,-R$(INSTALLARCHLIB)/CORE
-Wl,-R$(PERL_ARCHLIB)/CORE -lperl';
} elsif ($Config{'lddlflags'} =~ /-R/) {
$libs .= ' -L$(PERL_INC) -R$(INSTALLARCHLIB)/CORE
-R$(PERL_ARCHLIB)/CORE -lperl';
+ } elsif ( $Is{Android} ) {
+ # The Android linker will not recognize symbols from
+ # libperl unless the module explicitly depends on it.
+ $libs .= ' -L$(PERL_INC) -lperl';
}
}
@@ -1039,8 +1044,6 @@
print "Executing $abs\n" if ($trace >= 2);
my $version_check = qq{$abs -le "require $ver; print qq{VER_OK}"};
- $version_check = "$Config{run} $version_check"
- if defined $Config{run} and length $Config{run};
# To avoid using the unportable 2>&1 to suppress STDERR,
# we close it before running the command.
@@ -1266,7 +1269,7 @@
sub init_dirscan { # --- File and Directory Lists (.xs .pm .pod etc)
my($self) = @_;
- my(%dir, %xs, %c, %h, %pl_files, %pm);
+ my(%dir, %xs, %c, %o, %h, %pl_files, %pm);
my %ignore = map {( $_ => 1 )} qw(Makefile.PL Build.PL test.pl t);
@@ -1274,10 +1277,21 @@
$Is{VMS} ? $ignore{"$self->{DISTVNAME}.dir"} = 1
: $ignore{$self->{DISTVNAME}} = 1;
+ my $distprefix = $Is{VMS} ? qr/^\Q$self->{DISTNAME}\E-.*\.dir$/i
+ : qr/^\Q$self->{DISTNAME}-/;
+
@ignore{map lc, keys %ignore} = values %ignore if $Is{VMS};
+ if ( defined $self->{XS} and !defined $self->{C} ) {
+ my @c_files = grep { m/\.c(pp|xx)?\z/i } values %{$self->{XS}};
+ my @o_files = grep { m/(?:.(?:o(?:bj)?)|\$\(OBJ_EXT\))\z/i } values
%{$self->{XS}};
+ %c = map { $_ => 1 } @c_files;
+ %o = map { $_ => 1 } @o_files;
+ }
+
foreach my $name ($self->lsdir($Curdir)){
next if $name =~ /\#/;
+ next if $name =~ $distprefix;
$name = lc($name) if $Is{VMS};
next if $name eq $Curdir or $name eq $Updir or $ignore{$name};
next unless $self->libscan($name);
@@ -1319,7 +1333,8 @@
$self->{PM} ||= \%pm;
my @o_files = @{$self->{C}};
- $self->{O_FILES} = [grep s/\.c(pp|xx|c)?\z/$self->{OBJ_EXT}/i, @o_files];
+ %o = (%o, map { $_ => 1 } grep s/\.c(pp|xx|c)?\z/$self->{OBJ_EXT}/i,
@o_files);
+ $self->{O_FILES} = [sort keys %o];
}
@@ -1582,6 +1597,8 @@
# Some systems have restrictions on files names for DLL's etc.
# mod2fname returns appropriate file base name (typically truncated)
# It may also edit @modparts if required.
+ # We require DynaLoader to make sure that mod2fname is loaded
+ eval { require DynaLoader };
if (defined &DynaLoader::mod2fname) {
$modfname = &DynaLoader::mod2fname(\@modparts);
}
@@ -1623,18 +1640,9 @@
if ($self->{PERL_SRC}){
$self->{PERL_LIB} ||= $self->catdir("$self->{PERL_SRC}","lib");
- if (defined $Cross::platform) {
- $self->{PERL_ARCHLIB} =
- $self->catdir("$self->{PERL_SRC}","xlib",$Cross::platform);
- $self->{PERL_INC} =
- $self->catdir("$self->{PERL_SRC}","xlib",$Cross::platform,
- $Is{Win32}?("CORE"):());
- }
- else {
- $self->{PERL_ARCHLIB} = $self->{PERL_LIB};
- $self->{PERL_INC} = ($Is{Win32}) ?
- $self->catdir($self->{PERL_LIB},"CORE") : $self->{PERL_SRC};
- }
+ $self->{PERL_ARCHLIB} = $self->{PERL_LIB};
+ $self->{PERL_INC} = ($Is{Win32}) ?
+ $self->catdir($self->{PERL_LIB},"CORE") : $self->{PERL_SRC};
# catch a situation that has occurred a few times in the past:
unless (
@@ -1694,6 +1702,17 @@
}
}
+ if ($Is{Android}) {
+ # Android fun times!
+ # ../../perl -I../../lib -MFile::Glob -e1 works
+ # ../../../perl -I../../../lib -MFile::Glob -e1 fails to find
+ # the .so for File::Glob.
+ # This always affects core perl, but may also affect an installed
+ # perl built with -Duserelocatableinc.
+ $self->{PERL_LIB} = File::Spec->rel2abs($self->{PERL_LIB});
+ $self->{PERL_ARCHLIB} = File::Spec->rel2abs($self->{PERL_ARCHLIB});
+ }
+
# We get SITELIBEXP and SITEARCHEXP directly via
# Get_from_Config. When we are running standard modules, these
# won't matter, we will set INSTALLDIRS to "perl". Otherwise we
@@ -2971,6 +2990,17 @@
}
}
+ if ($self->{PPM_UNINSTALL_SCRIPT}) {
+ if ($self->{PPM_UNINSTALL_EXEC}) {
+ $ppd_xml .= sprintf qq{ <UNINSTALL
EXEC="%s">%s</UNINSTALL>\n},
+ $self->{PPM_UNINSTALL_EXEC}, $self->{PPM_UNINSTALL_SCRIPT};
+ }
+ else {
+ $ppd_xml .= sprintf qq{ <UNINSTALL>%s</UNINSTALL>\n},
+ $self->{PPM_UNINSTALL_SCRIPT};
+ }
+ }
+
my ($bin_location) = $self->{BINARY_LOCATION} || '';
$bin_location =~ s/\\/\\\\/g;
@@ -3492,12 +3522,15 @@
# Make sure we pick up the new xsubpp if we're building perl.
unshift @xsubpp_dirs, $self->{PERL_LIB} if $self->{PERL_CORE};
+ my $foundxsubpp = 0;
foreach my $dir (@xsubpp_dirs) {
$xsdir = $self->catdir($dir, 'ExtUtils');
if( -r $self->catfile($xsdir, "xsubpp") ) {
+ $foundxsubpp = 1;
last;
}
}
+ die "ExtUtils::MM_Unix::tool_xsubpp : Can't find xsubpp" if !$foundxsubpp;
my $tmdir = File::Spec->catdir($self->{PERL_LIB},"ExtUtils");
my(@tmdeps) = $self->catfile($tmdir,'typemap');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_VMS.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_VMS.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_VMS.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_VMS.pm 2014-01-31
21:50:13.000000000 +0100
@@ -15,7 +15,7 @@
use File::Basename;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Any;
require ExtUtils::MM_Unix;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_VOS.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_VOS.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_VOS.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_VOS.pm 2014-01-31
21:50:13.000000000 +0100
@@ -1,7 +1,7 @@
package ExtUtils::MM_VOS;
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Unix;
our @ISA = qw(ExtUtils::MM_Unix);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Win32.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Win32.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Win32.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Win32.pm 2014-01-31
21:50:13.000000000 +0100
@@ -27,7 +27,7 @@
require ExtUtils::MM_Any;
require ExtUtils::MM_Unix;
our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '6.82';
+our $VERSION = '6.88';
$ENV{EMXSHELL} = 'sh'; # to run `commands`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Win95.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Win95.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MM_Win95.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MM_Win95.pm 2014-01-31
21:50:13.000000000 +0100
@@ -2,7 +2,7 @@
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require ExtUtils::MM_Win32;
our @ISA = qw(ExtUtils::MM_Win32);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MY.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MY.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MY.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MY.pm 2014-01-31
21:50:13.000000000 +0100
@@ -3,7 +3,7 @@
use strict;
require ExtUtils::MM;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
our @ISA = qw(ExtUtils::MM);
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker/Config.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker/Config.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker/Config.pm
2013-11-04 20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker/Config.pm
2014-01-31 21:50:13.000000000 +0100
@@ -2,7 +2,7 @@
use strict;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
use Config ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker/FAQ.pod
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker/FAQ.pod
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker/FAQ.pod 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker/FAQ.pod 2014-01-31
21:50:13.000000000 +0100
@@ -1,6 +1,6 @@
package ExtUtils::MakeMaker::FAQ;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
1;
__END__
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker/Tutorial.pod
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker/Tutorial.pod
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker/Tutorial.pod
2013-11-04 20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker/Tutorial.pod
2014-01-31 21:50:13.000000000 +0100
@@ -1,6 +1,6 @@
package ExtUtils::MakeMaker::Tutorial;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
=head1 NAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/MakeMaker.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/MakeMaker.pm 2014-01-31
21:50:13.000000000 +0100
@@ -18,7 +18,7 @@
my @Prepend_parent;
my %Recognized_Att_Keys;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
$VERSION = eval $VERSION; ## no critic [BuiltinFunctions::ProhibitStringyEval]
# Emulate something resembling CVS $Revision$
@@ -87,6 +87,7 @@
MAN3PODS => 'HASH',
META_ADD => 'HASH',
META_MERGE => 'HASH',
+ OBJECT => ['ARRAY', ''],
PL_FILES => 'HASH',
PM => 'HASH',
PMLIBDIRS => 'ARRAY',
@@ -278,9 +279,9 @@
MYEXTLIB NAME NEEDS_LINKING NOECHO NO_META NO_MYMETA NO_PACKLIST
NO_PERLLOCAL
NORECURS NO_VC OBJECT OPTIMIZE PERL_MALLOC_OK PERL PERLMAINCC PERLRUN
PERLRUNINST PERL_CORE
- PERL_SRC PERM_DIR PERM_RW PERM_RWX
- PL_FILES PM PM_FILTER PMLIBDIRS PMLIBPARENTDIRS POLLUTE PPM_INSTALL_EXEC
- PPM_INSTALL_SCRIPT PREREQ_FATAL PREREQ_PM PREREQ_PRINT PRINT_PREREQ
+ PERL_SRC PERM_DIR PERM_RW PERM_RWX MAGICXS
+ PL_FILES PM PM_FILTER PMLIBDIRS PMLIBPARENTDIRS POLLUTE PPM_INSTALL_EXEC
PPM_UNINSTALL_EXEC
+ PPM_INSTALL_SCRIPT PPM_UNINSTALL_SCRIPT PREREQ_FATAL PREREQ_PM
PREREQ_PRINT PRINT_PREREQ
SIGN SKIP TEST_REQUIRES TYPEMAPS UNINST VERSION VERSION_FROM XS XSOPT
XSPROTOARG
XS_VERSION clean depend dist dynamic_lib linkext macro realclean
tool_autosplit
@@ -315,7 +316,7 @@
special_targets
c_o xs_c xs_o
- top_targets blibdirs linkext dlsyms dynamic dynamic_bs
+ top_targets blibdirs linkext dlsyms dynamic_bs dynamic
dynamic_lib static static_lib manifypods processPL
installbin subdirs
clean_subdirs clean realclean_subdirs realclean
@@ -604,6 +605,17 @@
parse_args($self, _shellwords($ENV{PERL_MM_OPT} || ''),@ARGV);
}
+ # RT#91540 PREREQ_FATAL not recognized on command line
+ if (%unsatisfied && $self->{PREREQ_FATAL}){
+ my $failedprereqs = join "\n", map {" $_ $unsatisfied{$_}"}
+ sort { $a cmp $b } keys %unsatisfied;
+ die <<"END";
+MakeMaker FATAL: prerequisites not found.
+$failedprereqs
+
+Please install these modules first and rerun 'perl Makefile.PL'.
+END
+ }
$self->{NAME} ||= $self->guess_name;
@@ -1674,8 +1686,9 @@
A hash of modules that are needed to build your module but not run it.
-This will go into the C<build_requires> field of your CPAN Meta file.
-(F<META.yml> or F<META.json>).
+This will go into the C<build_requires> field of your F<META.yml> and the
C<build> of the C<prereqs> field of your F<META.json>.
+
+Defaults to C<<< { "ExtUtils::MakeMaker" => 0 } >>> if this attribute is not
specified.
The format is the same as PREREQ_PM.
@@ -1724,10 +1737,9 @@
A hash of modules that are required to run Makefile.PL itself, but not
to run your distribution.
-This will go into the C<configure_requires> field of your CPAN Meta file
-(F<META.yml> or F<META.json>)
+This will go into the C<configure_requires> field of your F<META.yml> and the
C<configure> of the C<prereqs> field of your F<META.json>.
-Defaults to C<<< { "ExtUtils::MakeMaker" => 0 } >>>
+Defaults to C<<< { "ExtUtils::MakeMaker" => 0 } >>> if this attribute is not
specified.
The format is the same as PREREQ_PM.
@@ -2071,10 +2083,10 @@
Available in version 6.31 and above.
-The licensing terms of your distribution. Generally it's "perl" for the
+The licensing terms of your distribution. Generally it's "perl_5" for the
same license as Perl itself.
-See L<Module::Build::API> for the list of options.
+See L<CPAN::Meta::Spec> for the list of options.
Defaults to "unknown".
@@ -2084,6 +2096,10 @@
config.sh). Should only be used to force static linking (also see
linkext below).
+=item MAGICXS
+
+When this is set to C<1>, C<OBJECT> will be automagically derived from C<XS>.
+
=item MAKE
Variant of make you intend to run the generated Makefile with. This
@@ -2270,8 +2286,8 @@
=item OBJECT
List of object files, defaults to '$(BASEEXT)$(OBJ_EXT)', but can be a long
-string containing all object files, e.g. "tkpBind.o
-tkpButton.o tkpCanvas.o"
+string or an array containing all object files, e.g. "tkpBind.o
+tkpButton.o tkpCanvas.o" or ["tkpBind.o", "tkpButton.o", "tkpCanvas.o"]
(Where BASEEXT is the last component of NAME, and OBJ_EXT is $Config{obj_ext}.)
@@ -2476,6 +2492,15 @@
Name of the script that gets executed by the Perl Package Manager after
the installation of a package.
+=item PPM_UNINSTALL_EXEC
+
+Name of the executable used to run C<PPM_UNINSTALL_SCRIPT> below. (e.g. perl)
+
+=item PPM_UNINSTALL_SCRIPT
+
+Name of the script that gets executed by the Perl Package Manager before
+the removal of a package.
+
=item PREFIX
This overrides all the default install locations. Man pages,
@@ -2516,8 +2541,7 @@
the module names ie. Test::More, and the minimum version is the
value. If the required version number is 0 any version will do.
-This will go into the C<requires> field of your CPAN Meta file
-(F<META.yml> or F<META.json>).
+This will go into the C<requires> field of your F<META.yml> and the C<runtime>
of the C<prereqs> field of your F<META.json>.
PREREQ_PM => {
# Require Test::More at least 0.47
@@ -2586,11 +2610,12 @@
=item TEST_REQUIRES
+Available in version 6.64 and above.
+
A hash of modules that are needed to test your module but not run or
build it.
-This will go into the C<test_requires> field of your CPAN Meta file.
-(F<META.yml> or F<META.json>).
+This will go into the C<build_requires> field of your F<META.yml> and the
C<test> of the C<prereqs> field of your F<META.json>.
The format is the same as PREREQ_PM.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Mkbootstrap.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Mkbootstrap.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Mkbootstrap.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Mkbootstrap.pm 2014-01-31
21:50:13.000000000 +0100
@@ -3,7 +3,7 @@
# There's just too much Dynaloader incest here to turn on strict vars.
use strict 'refs';
-our $VERSION = '6.82';
+our $VERSION = '6.88';
require Exporter;
our @ISA = ('Exporter');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Mksymlists.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Mksymlists.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/Mksymlists.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/Mksymlists.pm 2014-01-31
21:50:13.000000000 +0100
@@ -10,7 +10,7 @@
our @ISA = qw(Exporter);
our @EXPORT = qw(&Mksymlists);
-our $VERSION = '6.82';
+our $VERSION = '6.88';
sub Mksymlists {
my(%spec) = @_;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/testlib.pm
new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/testlib.pm
--- old/ExtUtils-MakeMaker-6.82/lib/ExtUtils/testlib.pm 2013-11-04
20:21:05.000000000 +0100
+++ new/ExtUtils-MakeMaker-6.88/lib/ExtUtils/testlib.pm 2014-01-31
21:50:13.000000000 +0100
@@ -3,7 +3,7 @@
use strict;
use warnings;
-our $VERSION = '6.82';
+our $VERSION = '6.88';
use Cwd;
use File::Spec;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/my/bundles.pm
new/ExtUtils-MakeMaker-6.88/my/bundles.pm
--- old/ExtUtils-MakeMaker-6.82/my/bundles.pm 2013-11-02 22:21:45.000000000
+0100
+++ new/ExtUtils-MakeMaker-6.88/my/bundles.pm 2013-11-12 12:09:22.000000000
+0100
@@ -48,6 +48,11 @@
# Special case for version, never override the XS version with a
# pure Perl version. Just check that it's there.
my $installed = find_installed("version.pm");
+ if ( $] == 5.010000 ) {
+ # Special special case
+ my $installed_version = $installed ? MM->parse_version( $installed )
: 0;
+ return should_use_dist('version') if $installed_version < 0.77;
+ }
return if $installed;
my $inc_version = MM->parse_version("$bundle_dir/version/version.pm");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/t/INST.t
new/ExtUtils-MakeMaker-6.88/t/INST.t
--- old/ExtUtils-MakeMaker-6.82/t/INST.t 2013-10-24 19:17:25.000000000
+0200
+++ new/ExtUtils-MakeMaker-6.88/t/INST.t 2014-01-26 20:27:08.000000000
+0100
@@ -100,9 +100,13 @@
is( keys %{$mm->{CHILDREN}}, 1 );
my($child_pack) = keys %{$mm->{CHILDREN}};
my $c_mm = $mm->{CHILDREN}{$child_pack};
-is( $c_mm->{INST_ARCHLIB},
- $c_mm->{PERL_CORE} ? $c_mm->{PERL_ARCHLIB}
- : File::Spec->catdir($Updir, 'blib', 'arch'),
+# Android passes ARCHLIB through ->rel2abs, so in case the same
+# path is presented in two different ways, we need to
+# pass it through Cwd::realpath.
+my $normalize = $^O =~ /android/ ? \&Cwd::realpath : sub {shift};
+is( $normalize->($c_mm->{INST_ARCHLIB}),
+ $normalize->($c_mm->{PERL_CORE} ? $c_mm->{PERL_ARCHLIB}
+ : File::Spec->catdir($Updir, 'blib', 'arch')),
'CHILD INST_ARCHLIB');
is( $c_mm->{INST_BIN}, File::Spec->catdir($Updir, 'blib', 'bin'),
'CHILD INST_BIN' );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/t/metafile_data.t
new/ExtUtils-MakeMaker-6.88/t/metafile_data.t
--- old/ExtUtils-MakeMaker-6.82/t/metafile_data.t 2013-08-01
10:09:55.000000000 +0200
+++ new/ExtUtils-MakeMaker-6.88/t/metafile_data.t 2014-01-01
19:47:49.000000000 +0100
@@ -3,7 +3,7 @@
}
use strict;
-use Test::More tests => 22;
+use Test::More tests => 29;
use Data::Dumper;
use File::Temp;
@@ -181,7 +181,7 @@
}
-# Test MIN_PERL_VERSION
+# Test MIN_PERL_VERSION meta-spec 1.4
{
my $mm = $new_mm->(
DISTNAME => 'Foo-Bar',
@@ -221,11 +221,68 @@
url =>
'http://module-build.sourceforge.net/META-spec-v1.4.html',
version => 1.4
},
- };
+ }, 'MIN_PERL_VERSION meta-spec 1.4';
}
+# Test MIN_PERL_VERSION meta-spec 2.0
+{
+ my $mm = $new_mm->(
+ DISTNAME => 'Foo-Bar',
+ VERSION => 1.23,
+ PM => {
+ "Foo::Bar" => 'lib/Foo/Bar.pm',
+ },
+ MIN_PERL_VERSION => 5.006,
+ );
+
+ is_deeply {
+ $mm->metafile_data(
+ {}, {
+ 'meta-spec' => {
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ } } )
+ }, {
+ name => 'Foo-Bar',
+ version => 1.23,
+ abstract => 'unknown',
+ author => [],
+ license => 'unknown',
+ dynamic_config => 1,
+ distribution_type => 'module',
+
+ prereqs => {
+ configure => {
+ requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ },
+ build => {
+ requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ },
+ runtime => {
+ requires => {
+ 'perl' => '5.006',
+ },
+ },
+ },
+
+ no_index => {
+ directory => [qw(t inc)],
+ },
+
+ generated_by => "ExtUtils::MakeMaker version
$ExtUtils::MakeMaker::VERSION",
+ 'meta-spec' => {
+
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ },
+ }, 'MIN_PERL_VERSION meta-spec 2.0';
+}
-# Test MIN_PERL_VERSION
+# Test MIN_PERL_VERSION meta-spec 1.4
{
my $mm = $new_mm->(
DISTNAME => 'Foo-Bar',
@@ -269,10 +326,10 @@
url =>
'http://module-build.sourceforge.net/META-spec-v1.4.html',
version => 1.4
},
- };
+ }, 'MIN_PERL_VERSION and PREREQ_PM meta-spec 1.4';
}
-# Test CONFIGURE_REQUIRES
+# Test CONFIGURE_REQUIRES meta-spec 1.4
{
my $mm = $new_mm->(
DISTNAME => 'Foo-Bar',
@@ -295,10 +352,10 @@
distribution_type => 'module',
configure_requires => {
- 'Fake::Module1' => 1.01,
+ 'Fake::Module1' => 1.01,
},
build_requires => {
- 'ExtUtils::MakeMaker' => 0,
+ 'ExtUtils::MakeMaker' => 0,
},
no_index => {
@@ -310,10 +367,65 @@
url =>
'http://module-build.sourceforge.net/META-spec-v1.4.html',
version => 1.4
},
- },'CONFIGURE_REQUIRES';
+ },'CONFIGURE_REQUIRES meta-spec 1.4';
}
-# Test BUILD_REQUIRES
+# Test CONFIGURE_REQUIRES meta-spec 2.0
+{
+ my $mm = $new_mm->(
+ DISTNAME => 'Foo-Bar',
+ VERSION => 1.23,
+ CONFIGURE_REQUIRES => {
+ "Fake::Module1" => 1.01,
+ },
+ PM => {
+ "Foo::Bar" => 'lib/Foo/Bar.pm',
+ },
+ );
+
+ is_deeply {
+ $mm->metafile_data(
+ {}, {
+ 'meta-spec' => {
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ } } )
+ }, {
+ name => 'Foo-Bar',
+ version => 1.23,
+ abstract => 'unknown',
+ author => [],
+ license => 'unknown',
+ dynamic_config => 1,
+ distribution_type => 'module',
+
+ prereqs => {
+ configure => {
+ requires => {
+ 'Fake::Module1' => 1.01,
+ },
+ },
+ build => {
+ requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ },
+ },
+
+ no_index => {
+ directory => [qw(t inc)],
+ },
+
+ generated_by => "ExtUtils::MakeMaker version
$ExtUtils::MakeMaker::VERSION",
+ 'meta-spec' => {
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ },
+ },'CONFIGURE_REQUIRES meta-spec 2.0';
+}
+
+
+# Test BUILD_REQUIRES meta-spec 1.4
{
my $mm = $new_mm->(
DISTNAME => 'Foo-Bar',
@@ -336,10 +448,107 @@
distribution_type => 'module',
configure_requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ build_requires => {
+ 'Fake::Module1' => 1.01,
+ },
+
+ no_index => {
+ directory => [qw(t inc)],
+ },
+
+ generated_by => "ExtUtils::MakeMaker version
$ExtUtils::MakeMaker::VERSION",
+ 'meta-spec' => {
+ url =>
'http://module-build.sourceforge.net/META-spec-v1.4.html',
+ version => 1.4
+ },
+ },'BUILD_REQUIRES meta-spec 1.4';
+}
+
+# Test BUILD_REQUIRES meta-spec 2.0
+{
+ my $mm = $new_mm->(
+ DISTNAME => 'Foo-Bar',
+ VERSION => 1.23,
+ BUILD_REQUIRES => {
+ "Fake::Module1" => 1.01,
+ },
+ PM => {
+ "Foo::Bar" => 'lib/Foo/Bar.pm',
+ },
+ META_MERGE => { "meta-spec" => { version => 2 }},
+ );
+
+ is_deeply {
+ $mm->metafile_data(
+ {}, {
+ 'meta-spec' => {
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ } } )
+ }, {
+ name => 'Foo-Bar',
+ version => 1.23,
+ abstract => 'unknown',
+ author => [],
+ license => 'unknown',
+ dynamic_config => 1,
+ distribution_type => 'module',
+
+ prereqs => {
+ configure => {
+ requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ },
+ build => {
+ requires => {
+ 'Fake::Module1' => 1.01,
+ },
+ },
+ },
+
+ no_index => {
+ directory => [qw(t inc)],
+ },
+
+ generated_by => "ExtUtils::MakeMaker version
$ExtUtils::MakeMaker::VERSION",
+ 'meta-spec' => {
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ },
+ },'BUILD_REQUIRES meta-spec 2.0';
+}
+
+# Test TEST_REQUIRES meta-spec 1.4
+{
+ my $mm = $new_mm->(
+ DISTNAME => 'Foo-Bar',
+ VERSION => 1.23,
+ TEST_REQUIRES => {
+ "Fake::Module1" => 1.01,
+ },
+ PM => {
+ "Foo::Bar" => 'lib/Foo/Bar.pm',
+ },
+ );
+
+ is_deeply {$mm->metafile_data}, {
+ name => 'Foo-Bar',
+ version => 1.23,
+ abstract => 'unknown',
+ author => [],
+ license => 'unknown',
+ dynamic_config => 1,
+ distribution_type => 'module',
+
+ configure_requires => {
'ExtUtils::MakeMaker' => 0,
},
build_requires => {
- 'Fake::Module1' => 1.01,
+ 'ExtUtils::MakeMaker' => 0,
+ 'Fake::Module1' => 1.01,
},
no_index => {
@@ -351,9 +560,70 @@
url =>
'http://module-build.sourceforge.net/META-spec-v1.4.html',
version => 1.4
},
- },'CONFIGURE_REQUIRES';
+ },'TEST_REQUIRES meta-spec 1.4';
}
+# Test TEST_REQUIRES meta-spec 2.0
+{
+ my $mm = $new_mm->(
+ DISTNAME => 'Foo-Bar',
+ VERSION => 1.23,
+ TEST_REQUIRES => {
+ "Fake::Module1" => 1.01,
+ },
+ PM => {
+ "Foo::Bar" => 'lib/Foo/Bar.pm',
+ },
+ META_MERGE => { "meta-spec" => { version => 2 }},
+ );
+
+ is_deeply {
+ $mm->metafile_data(
+ {}, {
+ 'meta-spec' => {
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ } } )
+ }, {
+ name => 'Foo-Bar',
+ version => 1.23,
+ abstract => 'unknown',
+ author => [],
+ license => 'unknown',
+ dynamic_config => 1,
+ distribution_type => 'module',
+
+ prereqs => {
+ configure => {
+ requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ },
+ build => {
+ requires => {
+ 'ExtUtils::MakeMaker' => 0,
+ },
+ },
+ test => {
+ requires => {
+ "Fake::Module1" => 1.01,
+ },
+ },
+ },
+
+ no_index => {
+ directory => [qw(t inc)],
+ },
+
+ generated_by => "ExtUtils::MakeMaker version
$ExtUtils::MakeMaker::VERSION",
+ 'meta-spec' => {
+ url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ version => 2
+ },
+ },'TEST_REQUIRES meta-spec 2.0';
+}
+
+
# Test _REQUIRES key priority over META_ADD
{
@@ -363,7 +633,7 @@
BUILD_REQUIRES => {
"Fake::Module1" => 1.01,
},
- META_ADD => (my $meta_add = { build_requires => {} }),
+ META_ADD => (my $meta_add = { build_requires => {}, configure_requires
=> {} }),
PM => {
"Foo::Bar" => 'lib/Foo/Bar.pm',
},
@@ -378,10 +648,8 @@
dynamic_config => 1,
distribution_type => 'module',
- configure_requires => {
- 'ExtUtils::MakeMaker' => 0,
- },
- build_requires => { },
+ configure_requires => { },
+ build_requires => { },
no_index => {
directory => [qw(t inc)],
@@ -405,7 +673,7 @@
license => ['perl_5'],
dynamic_config => 0,
- prereqs => {
+ prereqs => {
runtime => {
requires => {
"DirHandle" => 0,
@@ -417,6 +685,7 @@
},
configure => {
requires => {
+ 'ExtUtils::MakeMaker' => 0,
},
},
build => {
@@ -458,15 +727,23 @@
{
my $mm = $new_mm->(
- DISTNAME => 'Foo-Bar',
- VERSION => 1.23,
- BUILD_REQUIRES => { "Fake::Module1" => 1.01 },
- TEST_REQUIRES => { "Fake::Module2" => 1.23 },
+ DISTNAME => 'Foo-Bar',
+ VERSION => 1.23,
+ CONFIGURE_REQUIRES => { "Fake::Module0" => 0.99 },
+ BUILD_REQUIRES => { "Fake::Module1" => 1.01 },
+ TEST_REQUIRES => { "Fake::Module2" => 1.23 },
);
my $meta = $mm->mymeta('t/META_for_testing.json');
+ is($meta->{configure_requires}, undef, "no configure_requires in v2 META");
is($meta->{build_requires}, undef, "no build_requires in v2 META");
is_deeply(
+ $meta->{prereqs}{configure}{requires},
+ { "Fake::Module0" => 0.99 },
+ "configure requires are one thing in META v2...",
+ );
+
+ is_deeply(
$meta->{prereqs}{build}{requires},
{ "Fake::Module1" => 1.01 },
"build requires are one thing in META v2...",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ExtUtils-MakeMaker-6.82/t/parse_version.t
new/ExtUtils-MakeMaker-6.88/t/parse_version.t
--- old/ExtUtils-MakeMaker-6.82/t/parse_version.t 2013-08-01
10:09:55.000000000 +0200
+++ new/ExtUtils-MakeMaker-6.88/t/parse_version.t 2013-11-12
11:40:03.000000000 +0100
@@ -80,6 +80,10 @@
END
}
+if ( $] > 5.009 && $] < 5.012 ) {
+ delete $versions{'$VERSION = -1.0'};
+}
+
plan tests => (3 * keys %versions) + 4 + grep { !defined} (values %versions);
for my $code ( sort keys %versions ) {
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]