diff options
author | Norbert Preining <norbert@preining.info> | 2024-03-15 03:06:35 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-03-15 03:06:35 +0000 |
commit | 12679ab7d3c2a210f4123163671b532b8b55d5f9 (patch) | |
tree | 0060d13467186ad977f4e73488ee20dd6c0017ab /systems/texlive/tlnet/tlpkg/tlperl/lib/ExtUtils/MakeMaker.pm | |
parent | 62170822e034fdd3f81de7274835d0d3b0467100 (diff) |
CTAN sync 202403150306
Diffstat (limited to 'systems/texlive/tlnet/tlpkg/tlperl/lib/ExtUtils/MakeMaker.pm')
-rw-r--r-- | systems/texlive/tlnet/tlpkg/tlperl/lib/ExtUtils/MakeMaker.pm | 69 |
1 files changed, 29 insertions, 40 deletions
diff --git a/systems/texlive/tlnet/tlpkg/tlperl/lib/ExtUtils/MakeMaker.pm b/systems/texlive/tlnet/tlpkg/tlperl/lib/ExtUtils/MakeMaker.pm index b9b38368e0..e8c3808b38 100644 --- a/systems/texlive/tlnet/tlpkg/tlperl/lib/ExtUtils/MakeMaker.pm +++ b/systems/texlive/tlnet/tlpkg/tlperl/lib/ExtUtils/MakeMaker.pm @@ -25,7 +25,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.62'; +our $VERSION = '7.70'; $VERSION =~ tr/_//d; # Emulate something resembling CVS $Revision$ @@ -393,7 +393,7 @@ sub full_setup { # we will use all these variables in the Makefile @Get_from_Config = qw( - ar cc cccdlflags ccdlflags dlext dlsrc exe_ext full_ar ld + ar cc cccdlflags ccdlflags cpprun dlext dlsrc exe_ext full_ar ld lddlflags ldflags libc lib_ext obj_ext osname osvers ranlib sitelibexp sitearchexp so ); @@ -525,7 +525,10 @@ sub new { # simulate "use warnings FATAL => 'all'" for vintage perls die @_; }; - version->new( $perl_version )->numify; + my $v = version->new($perl_version); + # we care about parse issues, not numify warnings + no warnings; + $v->numify; }; $perl_version =~ tr/_//d if defined $perl_version; @@ -634,7 +637,7 @@ END if (%unsatisfied && $self->{PREREQ_FATAL}){ my $failedprereqs = join "\n", map {" $_ $unsatisfied{$_}"} - sort { $a cmp $b } keys %unsatisfied; + sort { lc $a cmp lc $b } keys %unsatisfied; die <<"END"; MakeMaker FATAL: prerequisites not found. $failedprereqs @@ -720,7 +723,7 @@ END # 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; + sort { lc $a cmp lc $b } keys %unsatisfied; die <<"END"; MakeMaker FATAL: prerequisites not found. $failedprereqs @@ -1151,19 +1154,20 @@ sub check_hints { } sub _run_hintfile { - my ($self, $hint_file) = @_; + our $self; + local($self) = shift; # make $self available to the hint file. + my($hint_file) = shift; local($@, $!); print "Processing hints file $hint_file\n" if $Verbose; - if(open(my $fh, '<', $hint_file)) { - my $hints_content = do { local $/; <$fh> }; - no strict; - eval $hints_content; - warn "Failed to run hint file $hint_file: $@" if $@; - } - else { - warn "Could not open $hint_file for read: $!"; + # Just in case the ./ isn't on the hint file, which File::Spec can + # often strip off, we bung the curdir into @INC + local @INC = (File::Spec->curdir, @INC); + my $ret = do $hint_file; + if( !defined $ret ) { + my $error = $@ || $!; + warn $error; } } @@ -1262,6 +1266,7 @@ sub write_file_via_tmp { die "write_file_via_tmp: 2nd arg must be ref" unless ref $contents; for my $chunk (@$contents) { my $to_write = $chunk; + $to_write = '' unless defined $to_write; utf8::encode $to_write if !$CAN_DECODE && "$]" > 5.008; print $fh "$to_write\n" or die "Can't write to MakeMaker.tmp: $!"; } @@ -1331,26 +1336,6 @@ sub neatvalue { return "{ ".join(', ',@m)." }"; } -sub _find_magic_vstring { - my $value = shift; - return $value if $UNDER_CORE; - my $tvalue = ''; - require B; - my $sv = B::svref_2object(\$value); - my $magic = ref($sv) eq 'B::PVMG' ? $sv->MAGIC : undef; - while ( $magic ) { - if ( $magic->TYPE eq 'V' ) { - $tvalue = $magic->PTR; - $tvalue =~ s/^v?(.+)$/v$1/; - last; - } - else { - $magic = $magic->MOREMAGIC; - } - } - return $tvalue; -} - sub selfdocument { my($self) = @_; my(@m); @@ -1836,7 +1821,11 @@ currently used by MakeMaker but may be handy in Makefile.PLs. =item CCFLAGS String that will be included in the compiler call command line between -the arguments INC and OPTIMIZE. +the arguments INC and OPTIMIZE. Note that setting this will overwrite its +default value (C<$Config::Config{ccflags}>); to preserve that, include +the default value directly, e.g.: + + CCFLAGS => "$Config::Config{ccflags} ..." =item CONFIG @@ -1846,6 +1835,7 @@ ar cc cccdlflags ccdlflags +cpprun dlext dlsrc ld @@ -2671,10 +2661,9 @@ instead. See above, or the L<ExtUtils::MakeMaker::FAQ> entry. =item POLLUTE -Release 5.005 grandfathered old global symbol names by providing preprocessor -macros for extension source compatibility. As of release 5.6, these -preprocessor definitions are not available by default. The POLLUTE flag -specifies that the old names should still be defined: +Prior to 5.6 various interpreter variables were available without a C<PL_> +prefix, eg. C<PL_undef> was available as C<undef>. As of release 5.6, these +are only defined if the POLLUTE flag is enabled: perl Makefile.PL POLLUTE=1 @@ -3293,7 +3282,7 @@ are generated when F<Makefile.PL> generates a F<Makefile> (if L<CPAN::Meta> is installed). Clients like L<CPAN> or L<CPANPLUS> will read these files to see what prerequisites must be fulfilled before building or testing the distribution. If you wish to shut this feature off, set the C<NO_MYMETA> -C<WriteMakeFile()> flag to true. +C<WriteMakefile()> flag to true. =head2 Disabling an extension |