summaryrefslogtreecommitdiff
path: root/cpan/ExtUtils-MakeMaker/lib
diff options
context:
space:
mode:
authorChris 'BinGOs' Williams <chris@bingosnet.co.uk>2017-06-09 17:41:20 +0100
committerChris 'BinGOs' Williams <chris@bingosnet.co.uk>2017-06-09 17:41:20 +0100
commit7ad910c539e81fc14531489c2ef9c54784deef8f (patch)
treebcddf009ab209be2abf262614a9311b6ff3d7965 /cpan/ExtUtils-MakeMaker/lib
parent42752acc4959c5b770bbc29532bf2677f4533c4e (diff)
downloadperl-7ad910c539e81fc14531489c2ef9c54784deef8f.tar.gz
Update ExtUtils-MakeMaker to CPAN version 7.28
[DELTA] 7.28 Tue May 30 22:01:08 BST 2017 No changes since v7.27_02 7.27_02 Tue May 30 09:27:56 BST 2017 Bug fixes: - Prune auto/share from search paths RT#121918 7.27_01 Sun May 28 11:35:46 BST 2017 Bug fixes: - Fix regression with metadata RT#121913 7.26 Sat May 27 21:01:47 BST 2017 No changes since 7.25_06 7.25_06 Tue May 23 20:18:01 BST 2017 Bug fixes: - Fix regression with XS tests on MSWin32 with MS toolchain 7.25_05 Mon May 15 10:18:01 BST 2017 Bug fixes: - Make MakeMaker pass compilation tests on AIX again - Test, fix test dep on SKIPped linktype 7.25_04 Fri May 12 12:24:09 BST 2017 Enhancements: - Add os_unsupported() function 7.25_03 Thu May 11 17:51:23 BST 2017 Bug fixes: - processPL now depends on 'pure_all' instead of 'all' 7.25_02 Thu May 11 11:54:42 BST 2017 Bug fixes: - Only add staticlibs that are installed under auto/ - Correct the order of tests of chmod() Doc fixes: - Fixed typo in MakeMaker.pm 7.25_01 Fri Feb 3 13:36:25 GMT 2017 Bug fixes: - Make perllocal.pod files reproducible - META_ADD/MERGE default meta version based on each other - Eliminate an ancient, unneeded, dangerous call to Carp::longmess
Diffstat (limited to 'cpan/ExtUtils-MakeMaker/lib')
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm5
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm26
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm17
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm36
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm26
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod4
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm2
-rw-r--r--cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm2
32 files changed, 108 insertions, 58 deletions
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm
index c9ff022f03..b96609d08c 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command.pm
@@ -7,7 +7,7 @@ use vars qw(@ISA @EXPORT @EXPORT_OK $VERSION);
@ISA = qw(Exporter);
@EXPORT = qw(cp rm_f rm_rf mv cat eqtime mkpath touch test_f test_d chmod
dos2unix);
-$VERSION = '7.24';
+$VERSION = '7.28';
$VERSION = eval $VERSION;
my $Is_VMS = $^O eq 'VMS';
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Command/MM.pm
index 69779b2912..ea69e14798 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 test_s cp_nonempty);
-our $VERSION = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
my $Is_VMS = $^O eq 'VMS';
@@ -219,7 +219,8 @@ sub perllocal_install {
: @ARGV;
my $pod;
- $pod = sprintf <<'POD', scalar(localtime), $type, $name, $name;
+ my $time = gmtime($ENV{SOURCE_DATE_EPOCH} || time);
+ $pod = sprintf <<'POD', scalar($time), $type, $name, $name;
=head2 %s: C<%s> L<%s|%s>
=over 4
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist.pm
index 7b2ca535ce..58418815cd 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
use File::Spec;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm
index a7fae86276..0dc9fc5c1c 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
use ExtUtils::MakeMaker::Config;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM.pm
index b327932388..ec1aa80132 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::Liblist;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
index ea646606fc..19f1d5c6c3 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_AIX.pm
@@ -1,9 +1,10 @@
package ExtUtils::MM_AIX;
use strict;
-our $VERSION = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
+use ExtUtils::MakeMaker::Config;
require ExtUtils::MM_Unix;
our @ISA = qw(ExtUtils::MM_Unix);
@@ -34,13 +35,7 @@ Define DL_FUNCS and DL_VARS and write the *.exp files.
sub dlsyms {
my($self,%attribs) = @_;
return '' unless $self->needs_linking;
- my @m;
- # these will need XSMULTI-fying but maybe that already happens
- push @m,"\ndynamic :: $self->{BASEEXT}.exp\n\n"
- unless $self->{SKIPHASH}{'dynamic'}; # dynamic and static are subs, so...
- push @m,"\nstatic :: $self->{BASEEXT}.exp\n\n"
- unless $self->{SKIPHASH}{'static'}; # we avoid a warning if we tick them
- join "\n", @m, $self->xs_dlsyms_iterator(\%attribs);
+ join "\n", $self->xs_dlsyms_iterator(\%attribs);
}
=head3 xs_dlsyms_ext
@@ -53,6 +48,21 @@ sub xs_dlsyms_ext {
'.exp';
}
+sub xs_dlsyms_arg {
+ my($self, $file) = @_;
+ return qq{-bE:${file}};
+}
+
+sub init_others {
+ my $self = shift;
+ $self->SUPER::init_others;
+ # perl "hints" add -bE:$(BASEEXT).exp to LDDLFLAGS. strip that out
+ # so right value can be added by xs_make_dynamic_lib to work for XSMULTI
+ $self->{LDDLFLAGS} ||= $Config{lddlflags};
+ $self->{LDDLFLAGS} =~ s#(\s*)\S*\Q$(BASEEXT)\E\S*(\s*)#$1$2#;
+ return;
+}
+
=head1 AUTHOR
Michael G Schwern <schwern@pobox.com> with code from ExtUtils::MM_Unix
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Any.pm
index 433a8dd7a3..4afe450604 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
use Carp;
@@ -910,6 +910,17 @@ MAKE_FRAG
}
+=head3 xs_dlsyms_arg
+
+Returns command-line arg(s) to linker for file listing dlsyms to export.
+Defaults to returning empty string, can be overridden by e.g. AIX.
+
+=cut
+
+sub xs_dlsyms_arg {
+ return '';
+}
+
=head3 xs_dlsyms_ext
Returns file-extension for C<xs_make_dlsyms> method's output file,
@@ -1318,8 +1329,10 @@ sub metafile_data {
# needs to be based on the original version
my $v1_add = _metaspec_version($meta_add) !~ /^2/;
+ my ($add_v, $merge_v) = map _metaspec_version($_), $meta_add, $meta_merge;
for my $frag ($meta_add, $meta_merge) {
- $frag = CPAN::Meta::Converter->new($frag, default_version => "1.4")->upgrade_fragment;
+ my $def_v = $frag == $meta_add ? $merge_v : $add_v;
+ $frag = CPAN::Meta::Converter->new($frag, default_version => $def_v)->upgrade_fragment;
}
# if we upgraded a 1.x _ADD fragment, we gave it a prereqs key that
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_BeOS.pm
index 9ede797146..a2700b50a7 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Cygwin.pm
index e180a44530..ce2084449f 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_DOS.pm
index a453278b2f..ee24ac338f 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Any;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Darwin.pm
index 03dfe27376..557a9f5487 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_MacOS.pm
index 8207502f71..787a82e328 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
sub new {
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_NW5.pm
index 6ec9b7cb8f..f46ecb6f5e 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Win32;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_OS2.pm
index f23ec5a2a6..7b4f8fac54 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Any;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_QNX.pm
index 6475983eb8..2c8d56b5c4 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_UWIN.pm
index e7e65ef2ad..0a4f0bf53d 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
index 66a24d7838..ce3dc1abd0 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
@@ -14,7 +14,7 @@ use ExtUtils::MakeMaker qw($Verbose neatvalue _sprintf562);
# If we make $VERSION an our variable parse_version() breaks
use vars qw($VERSION);
-$VERSION = '7.24';
+$VERSION = '7.28';
$VERSION = eval $VERSION; ## no critic [BuiltinFunctions::ProhibitStringyEval]
require ExtUtils::MM_Any;
@@ -932,6 +932,7 @@ sub dynamic_lib {
return '' unless $self->has_link_code;
my @m = $self->xs_dynamic_lib_macros(\%attribs);
my @libs;
+ my $dlsyms_ext = eval { $self->xs_dlsyms_ext };
if ($self->{XSMULTI}) {
my @exts = $self->_xs_list_basenames;
for my $ext (@exts) {
@@ -952,10 +953,14 @@ sub dynamic_lib {
my $ldfrom = $self->_xsbuild_value('xs', $ext, 'LDFROM');
$ldfrom = $objfile unless defined $ldfrom;
my $exportlist = "$ext.def";
- push @libs, [ $objfile, $instfile, $instdir, $ldfrom, $exportlist ];
+ my @libchunk = ($objfile, $instfile, $instdir, $ldfrom, $exportlist);
+ push @libchunk, $dlsyms_ext ? $ext.$dlsyms_ext : undef;
+ push @libs, \@libchunk;
}
} else {
- @libs = ([ qw($(OBJECT) $(INST_DYNAMIC) $(INST_ARCHAUTODIR) $(LDFROM) $(EXPORT_LIST)) ]);
+ my @libchunk = qw($(OBJECT) $(INST_DYNAMIC) $(INST_ARCHAUTODIR) $(LDFROM) $(EXPORT_LIST));
+ push @libchunk, $dlsyms_ext ? '$(BASEEXT)'.$dlsyms_ext : undef;
+ @libs = (\@libchunk);
}
push @m, map { $self->xs_make_dynamic_lib(\%attribs, @$_); } @libs;
@@ -999,10 +1004,11 @@ Defines the recipes for the C<dynamic_lib> section.
=cut
sub xs_make_dynamic_lib {
- my ($self, $attribs, $object, $to, $todir, $ldfrom, $exportlist) = @_;
+ my ($self, $attribs, $object, $to, $todir, $ldfrom, $exportlist, $dlsyms) = @_;
$exportlist = '' if $exportlist ne '$(EXPORT_LIST)';
my $armaybe = $self->_xs_armaybe($attribs);
- my @m = sprintf '%s : %s $(MYEXTLIB) %s$(DFSEP).exists %s $(PERL_ARCHIVEDEP) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP)'."\n", $to, $object, $todir, $exportlist;
+ my @m = sprintf '%s : %s $(MYEXTLIB) %s$(DFSEP).exists %s $(PERL_ARCHIVEDEP) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) %s'."\n", $to, $object, $todir, $exportlist, ($dlsyms || '');
+ my $dlsyms_arg = $self->xs_dlsyms_arg($dlsyms);
if ($armaybe ne ':'){
$ldfrom = 'tmp$(LIB_EXT)';
push(@m," \$(ARMAYBE) cr $ldfrom $object\n");
@@ -1043,8 +1049,8 @@ sub xs_make_dynamic_lib {
$ld_run_path_shell = 'LD_RUN_PATH="$(LD_RUN_PATH)" ';
}
- push @m, sprintf <<'MAKE', $ld_run_path_shell, $ldrun, $ldfrom, $self->xs_obj_opt('$@'), $libs, $exportlist;
- %s$(LD) %s $(LDDLFLAGS) %s $(OTHERLDFLAGS) %s $(MYEXTLIB) \
+ push @m, sprintf <<'MAKE', $ld_run_path_shell, $ldrun, $dlsyms_arg, $ldfrom, $self->xs_obj_opt('$@'), $libs, $exportlist;
+ %s$(LD) %s $(LDDLFLAGS) %s %s $(OTHERLDFLAGS) %s $(MYEXTLIB) \
$(PERL_ARCHIVE) %s $(PERL_ARCHIVE_AFTER) %s \
$(INST_DYNAMIC_FIX)
$(CHMOD) $(PERM_RWX) $@
@@ -2531,6 +2537,14 @@ $(MAKE_APERL_FILE) : static $(FIRST_MAKEFILE) pm_to_blib
'auto', $self->{FULLEXT}, "$self->{BASEEXT}$self->{LIB_EXT}"
);
File::Find::find(sub {
+ if ($File::Find::name =~ m{/auto/share\z}) {
+ # in a subdir of auto/share, prune because e.g.
+ # Alien::pkgconfig uses File::ShareDir to put .a files
+ # there. do not want
+ $File::Find::prune = 1;
+ return;
+ }
+
return unless m/\Q$self->{LIB_EXT}\E$/;
# Skip perl's libraries.
@@ -2578,7 +2592,7 @@ $(MAKE_APERL_FILE) : static $(FIRST_MAKEFILE) pm_to_blib
return if $File::Find::name =~ m:\Q$installed_version\E\z:;
use Cwd 'cwd';
$static{cwd() . "/" . $_}++;
- }, grep( -d $_, @{$searchdirs || []}) );
+ }, grep( -d $_, map { $self->catdir($_, 'auto') } @{$searchdirs || []}) );
# We trust that what has been handed in as argument, will be buildable
$static = [] unless $static;
@@ -3259,7 +3273,7 @@ sub processPL {
$m .= <<MAKE_FRAG;
-all :: $target
+pure_all :: $target
\$(NOECHO) \$(NOOP)
$target :: $plfile $pm_dep
@@ -3659,7 +3673,7 @@ test_ : test_$default_testtype
EOF
for my $linktype (qw(dynamic static)) {
- my $directdeps = "$linktype pure_all";
+ my $directdeps = join ' ', grep !$self->{SKIPHASH}{$_}, $linktype, "pure_all"; # no depend on a linktype if SKIPped
push @m, "subdirs-test_$linktype :: $directdeps\n";
foreach my $dir (@{ $self->{DIR} }) {
my $test = $self->cd($dir, "\$(MAKE) test_$linktype \$(PASTHRU)");
@@ -3869,7 +3883,7 @@ Obsolete, deprecated method. Not used since Version 5.21.
sub writedoc {
# --- perllocal.pod section ---
my($self,$what,$name,@attribs)=@_;
- my $time = localtime;
+ my $time = gmtime($ENV{SOURCE_DATE_EPOCH} || time);
print "=head2 $time: $what C<$name>\n\n=over 4\n\n=item *\n\n";
print join "\n\n=item *\n\n", map("C<$_>",@attribs);
print "\n\n=back\n\n";
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VMS.pm
index ed3ec8cab0..01c1807c57 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Any;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_VOS.pm
index c176118d4d..a280176f0b 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Unix;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win32.pm
index 9844d837b7..2f65eb9edf 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 _sprintf562);
require ExtUtils::MM_Any;
require ExtUtils::MM_Unix;
our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
$ENV{EMXSHELL} = 'sh'; # to run `commands`
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Win95.pm
index 0d6f0e31bf..c9f5bed3ea 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require ExtUtils::MM_Win32;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MY.pm
index 779c791297..af7faf6904 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
our @ISA = qw(ExtUtils::MM);
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
index d579256e86..1d81d5ec11 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker.pm
@@ -24,7 +24,7 @@ my %Recognized_Att_Keys;
our %macro_fsentity; # whether a macro is a filesystem name
our %macro_dep; # whether a macro is a dependency
-our $VERSION = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION; ## no critic [BuiltinFunctions::ProhibitStringyEval]
# Emulate something resembling CVS $Revision$
@@ -34,7 +34,7 @@ $Revision = int $Revision * 10000;
our $Filename = __FILE__; # referenced outside MakeMaker
our @ISA = qw(Exporter);
-our @EXPORT = qw(&WriteMakefile $Verbose &prompt);
+our @EXPORT = qw(&WriteMakefile $Verbose &prompt &os_unsupported);
our @EXPORT_OK = qw($VERSION &neatvalue &mkbootstrap &mksymlists
&WriteEmptyMakefile &open_for_writing &write_file_via_tmp
&_sprintf562);
@@ -227,6 +227,10 @@ sub prompt ($;$) { ## no critic
return (!defined $ans || $ans eq '') ? $def : $ans;
}
+sub os_unsupported {
+ die "OS unsupported\n";
+}
+
sub eval_in_subdirs {
my($self) = @_;
use Cwd qw(cwd abs_path);
@@ -652,11 +656,6 @@ END
}
}
- # This is for old Makefiles written pre 5.00, will go away
- if ( Carp::longmess("") =~ /runsubdirpl/s ){
- carp("WARNING: Please rerun 'perl Makefile.PL' to regenerate your Makefiles\n");
- }
-
my $newclass = ++$PACKNAME;
local @Parent = @Parent; # Protect against non-local exits
{
@@ -3014,6 +3013,8 @@ you provide your own C<TESTS> attribute, defaults to false.
{RECURSIVE_TEST_FILES=>1}
+This is supported since 6.76
+
=item tool_autosplit
{MAXLEN => 8}
@@ -3290,6 +3291,17 @@ prevents automated processes from blocking on user input.
If no $default is provided an empty string will be used instead.
+=item os_unsupported
+
+ os_unsupported();
+ os_unsupported if $^O eq 'MSWin32';
+
+The C<os_unsupported()> function provides a way to correctly exit your
+C<Makefile.PL> before calling C<WriteMakefile>. It is essentially a
+C<die> with the message "OS unsupported".
+
+This is supported since 7.26
+
=back
=head2 Supported versions of Perl
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Config.pm
index bce9c66dee..5ef367cb33 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
use Config ();
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/FAQ.pod
index 179c9d6f30..f4d9575a87 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
1;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
index bec2cc15a4..9d45f5e8a3 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Locale.pm
@@ -1,7 +1,7 @@
package ExtUtils::MakeMaker::Locale;
use strict;
-our $VERSION = "7.24";
+our $VERSION = "7.28";
$VERSION = eval $VERSION;
use base 'Exporter';
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/Tutorial.pod
index 76c08d1bed..74b933040e 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
@@ -125,7 +125,7 @@ Simply add another entry in the test location string. For example, to test:
You would use the following C<test> directive:
- test => {TESTS => 't/*.t t/*/*/*.t}
+ test => {TESTS => 't/*.t t/*/*/*.t'}
Note that in the above example, tests in the first subdirectory will not be
run. To run all tests in the intermediary subdirectory preceeding the one
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm
index bcfaaa342c..3e7b2aedfc 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version.pm
@@ -15,7 +15,7 @@ use strict;
use vars qw(@ISA $VERSION $CLASS $STRICT $LAX *declare *qv);
-$VERSION = '7.24';
+$VERSION = '7.28';
$VERSION = eval $VERSION;
$CLASS = 'version';
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm
index 0255909561..3be9475b87 100644
--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm
+++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MakeMaker/version/regex.pm
@@ -10,7 +10,7 @@ use strict;
use vars qw($VERSION $CLASS $STRICT $LAX);
-$VERSION = '7.24';
+$VERSION = '7.28';
$VERSION = eval $VERSION;
#--------------------------------------------------------------------------#
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mkbootstrap.pm
index 5eea8bc67e..d3344f3dae 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
require Exporter;
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Mksymlists.pm
index 0cfb22ac28..6211063319 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
sub Mksymlists {
diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/testlib.pm
index 0e774664ff..d342bd2abe 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 = '7.24';
+our $VERSION = '7.28';
$VERSION = eval $VERSION;
use Cwd;