Skip to content

Commit 5dca256

Browse files
committed
Upgrade to ExtUtils::MakeMaker 6.25
p4raw-id: //depot/perl@23653
1 parent baf7177 commit 5dca256

33 files changed

+405
-1222
lines changed

MANIFEST

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1317,6 +1317,7 @@ lib/ExtUtils/t/MM_Unix.t See if ExtUtils::MM_UNIX works
13171317
lib/ExtUtils/t/MM_VMS.t See if ExtUtils::MM_VMS works
13181318
lib/ExtUtils/t/MM_Win32.t See if ExtUtils::MM_Win32 works
13191319
lib/ExtUtils/TODO Things TODO in MakeMaker
1320+
lib/ExtUtils/t/dir_target.t Verify if dir_target() is supported
13201321
lib/ExtUtils/t/oneliner.t See if MM can generate perl one-liners
13211322
lib/ExtUtils/t/Packlist.t See if Packlist works
13221323
lib/ExtUtils/t/parse_version.t See if parse_version works

lib/ExtUtils/Changes

Lines changed: 59 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,74 @@
1-
6.22
1+
6.25 Wed Dec 15 06:59:46 EST 2004
2+
- Build.PL was being considered like Module_pm.PL. Build.PL is now
3+
ignored. [[email protected]] [rt.cpan.org 8809]
4+
- Devel::Cover cover_db/ directory now ignored by MANIFEST.SKIP
5+
6+
6.24_01 Thu Dec 9 00:44:48 EST 2004
7+
- Docs encouraged possibly insecure use of /tmp [CAN-2004-0976 via Debian]
8+
- Remove empty rpath from .so files [bleadperl@23183]
9+
- At long last the core man page title has its apostrophe.
10+
- BeOS tests fixed [Ingo Weinhold] [perlbug #32717]
11+
- Putting a pm_to_blib target back (alias of pm_to_blib.ts) in case
12+
anyone was depending on it being there (mod_perl was).
13+
14+
6.24 Tue Nov 30 15:35:13 EST 2004
15+
- dir_target() was accidentally named dir_targets() causing problems
16+
installing some Tk modules.
17+
18+
6.23 Fri Nov 26 16:01:50 EST 2004
19+
- MM_MacOS lost its $VERSION causing some CPAN indexing problems. Enough
20+
people noticed this to warrant a quick release.
21+
22+
6.22 Tue Nov 23 22:22:22 EST 2004
23+
- Minor glitch in Command.t test on Win32 [thanks Steve Hay]
24+
* Fixed MANIFEST.SKIP so it avoids all the new *.ts files.
25+
- Don't spuriously define pasthru arguments
26+
27+
6.21_03 Sat Apr 3 2004
28+
- pm_to_blib and blibdirs stamp files now pm_to_blib.ts and blibdirs.ts
29+
everywhere because some filesystems insist you have a dot in the
30+
filename. This eliminates a bunch of special case code.
231
- Minor potential glitch in the version check logic.
332
- Making Makefile rebuild logic more resistant to inconsequential
433
errors when cleaning up things that are going to be rebuilt anyway.
534
- Adding SCCS to the list of directories in MANIFEST.SKIP.
6-
- Fixing blibdirs so it doesn't rebuild every make run.
7-
- Using a more conservative MAX_EXEC_LEN for Win98 to allow building
35+
* Fixing blibdirs so it doesn't rebuild every make run.
36+
* Using a more conservative MAX_EXEC_LEN for Win98 to allow building
837
large modules like Encode. [Greg Matheson]
9-
- test target mangled by dmake. Doesn't seem to like q{}.
38+
* test target mangled by dmake. Doesn't seem to like q{}.
1039
[Greg Matheson]
1140
- instmodsh now using Archive::Tar to create archives if available.
1241
[Slaven Rezic]
1342
- instmodsh now using more portable tar flags to create archives.
1443
[Slaven Rezic]
1544
- Added FAQ entry for "How do I use a module without installing it?"
1645
and "How do I keep from installing man pages?" [Joe Cromie]
46+
- Fixed finding the default MANIFEST.SKIP if its on a different volume
47+
[Ilya Zakharevich]
48+
- When building Perl, we had a chance of picking up the old installed
49+
xsubpp from @INC [Andreas Koenig]
50+
- makeaperl() now a bit more intellegent about ignoring perl libraries
51+
not called libperl. [Ilya Zakharevich bleadperl@22032]
52+
* MacOS Classic (MacPerl) is no longer supported. Please use
53+
Module::Build instead.
54+
* Restored pm_to_blib.ts so pm_to_blib generation will be quiessent on
55+
VMS. [rt 4675]
56+
- For simplicity, dir_target() is now a no-op. Should not effect any
57+
existing uses.
58+
- Converted utility commands from using $(PERLRUN) to $(ABSPERLRUN).
59+
This allows distclean to work with SDBM_File. [rt 5616]
60+
- realclean was using "rm -f" instead of "rm -rf" meaning directories
61+
wouldn't be properly cleaned. Caused by bleadperl@7952. [rt 5208]
62+
- fixpath() could undo wraplist() on VMS [rt 4955]
63+
- ensure ExtUtils::Command::rm_f deletes all versions of a file on VMS
64+
[rt 4687]
65+
- hint.t generating improperly named hint files on OS's where $^O
66+
contains a '.'. They should be converted to underscores. Test
67+
mistake, not a bug. [rt 5365]
68+
- Fixed ExtUtils::Command::chmod() so it will work on directories on
69+
VMS. [rt 4676]
70+
- parse_version.t was using no_plan causing trouble on older T::Hs.
71+
[rt 5633]
1772

1873
6.21 Tue Nov 11 00:12:56 PST 2003
1974
- NetBSD was looking in INSTALLARCHLIB/CORE for libperl instead of

lib/ExtUtils/Command.pm

Lines changed: 41 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -103,19 +103,33 @@ Removes files (even if readonly)
103103
104104
=cut
105105

106-
sub rm_f
107-
{
108-
expand_wildcards();
109-
foreach (@ARGV)
110-
{
111-
next unless -f $_;
112-
next if unlink($_);
113-
chmod(0777,$_);
114-
next if unlink($_);
115-
carp "Cannot delete $_:$!";
116-
}
106+
sub rm_f {
107+
expand_wildcards();
108+
109+
foreach my $file (@ARGV) {
110+
next unless -f $file;
111+
112+
next if _unlink($file);
113+
114+
chmod(0777, $file);
115+
116+
next if _unlink($file);
117+
118+
carp "Cannot delete $file: $!";
119+
}
117120
}
118121

122+
sub _unlink {
123+
my $files_unlinked = 0;
124+
foreach my $file (@_) {
125+
my $delete_count = 0;
126+
$delete_count++ while unlink $file;
127+
$files_unlinked++ if $delete_count;
128+
}
129+
return $files_unlinked;
130+
}
131+
132+
119133
=item touch files ...
120134
121135
Makes files exist, with current timestamp
@@ -188,6 +202,22 @@ sub chmod {
188202
local @ARGV = @ARGV;
189203
my $mode = shift(@ARGV);
190204
expand_wildcards();
205+
206+
if( $Is_VMS ) {
207+
foreach my $idx (0..$#ARGV) {
208+
my $path = $ARGV[$idx];
209+
next unless -d $path;
210+
211+
# chmod 0777, [.foo.bar] doesn't work on VMS, you have to do
212+
# chmod 0777, [.foo]bar.dir
213+
my @dirs = File::Spec->splitdir( $path );
214+
$dirs[-1] .= '.dir';
215+
$path = File::Spec->catfile(@dirs);
216+
217+
$ARGV[$idx] = $path;
218+
}
219+
}
220+
191221
chmod(oct $mode,@ARGV) || die "Cannot chmod ".join(' ',$mode,@ARGV).":$!";
192222
}
193223

lib/ExtUtils/Command/MM.pm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use vars qw($VERSION @ISA @EXPORT);
99

1010
@EXPORT = qw(test_harness pod2man perllocal_install uninstall
1111
warn_if_old_packlist);
12-
$VERSION = '0.03';
12+
$VERSION = '0.03_01';
1313

1414
my $Is_VMS = $^O eq 'VMS';
1515

@@ -104,7 +104,7 @@ sub pod2man {
104104

105105
# Official sets --center, but don't override things explicitly set.
106106
if ($options{official} && !defined $options{center}) {
107-
$options{center} = 'Perl Programmers Reference Guide';
107+
$options{center} = q[Perl Programmer's Reference Guide];
108108
}
109109

110110
# This isn't a valid Pod::Man option and is only accepted for backwards

lib/ExtUtils/Liblist/Kid.pm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use 5.00503;
1010

1111
use strict;
1212
use vars qw($VERSION);
13-
$VERSION = 1.30_01;
13+
$VERSION = 1.30;
1414

1515
use Config;
1616
use Cwd 'cwd';

lib/ExtUtils/MANIFEST.SKIP

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
\bMakefile$
1111
\bblib/
1212
\bMakeMaker-\d
13-
\bpm_to_blib$
14-
\bblibdirs\.exists$
13+
\bpm_to_blib\.ts$
14+
\bblibdirs\.ts$
1515

1616
# Avoid Module::Build generated and utility files.
1717
\bBuild$
@@ -22,3 +22,6 @@
2222
\.old$
2323
\#$
2424
\b\.#
25+
26+
# Avoid Devel::Cover files.
27+
\bcover_db\b

lib/ExtUtils/META.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# http://module-build.sourceforge.net/META-spec.html
22
#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
33
name: ExtUtils-MakeMaker
4-
version: 6.22
4+
version: 6.25
55
version_from: lib/ExtUtils/MakeMaker.pm
66
installdirs: perl
77
requires:
@@ -11,4 +11,4 @@ requires:
1111
Pod::Man: 0
1212

1313
distribution_type: module
14-
generated_by: ExtUtils::MakeMaker version 6.22
14+
generated_by: ExtUtils::MakeMaker version 6.25

lib/ExtUtils/MM.pm

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -44,25 +44,24 @@ away.
4444
}
4545

4646
my %Is = ();
47-
$Is{VMS} = 1 if $^O eq 'VMS';
48-
$Is{OS2} = 1 if $^O eq 'os2';
49-
$Is{MacOS} = 1 if $^O eq 'MacOS';
47+
$Is{VMS} = $^O eq 'VMS';
48+
$Is{OS2} = $^O eq 'os2';
49+
$Is{MacOS} = $^O eq 'MacOS';
5050
if( $^O eq 'MSWin32' ) {
5151
Win32::IsWin95() ? $Is{Win95} = 1 : $Is{Win32} = 1;
5252
}
53-
$Is{UWIN} = 1 if $^O =~ /^uwin(-nt)?$/;
54-
$Is{Cygwin} = 1 if $^O eq 'cygwin';
55-
$Is{NW5} = 1 if $Config{osname} eq 'NetWare'; # intentional
56-
$Is{BeOS} = 1 if $^O =~ /beos/i; # XXX should this be that loose?
57-
$Is{DOS} = 1 if $^O eq 'dos';
58-
59-
$Is{Unix} = 1 if !keys %Is;
60-
53+
$Is{UWIN} = $^O =~ /^uwin(-nt)?$/;
54+
$Is{Cygwin} = $^O eq 'cygwin';
55+
$Is{NW5} = $Config{osname} eq 'NetWare'; # intentional
56+
$Is{BeOS} = $^O =~ /beos/i; # XXX should this be that loose?
57+
$Is{DOS} = $^O eq 'dos';
6158
if( $Is{NW5} ) {
6259
$^O = 'NetWare';
6360
delete $Is{Win32};
6461
}
62+
$Is{Unix} = !grep { $_ } values %Is;
6563

64+
map { delete $Is{$_} unless $Is{$_} } keys %Is;
6665
_assert( keys %Is == 1 );
6766
my($OS) = keys %Is;
6867

lib/ExtUtils/MM_Any.pm

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package ExtUtils::MM_Any;
22

33
use strict;
44
use vars qw($VERSION @ISA);
5-
$VERSION = 0.09_01;
5+
$VERSION = '0.10';
66
@ISA = qw(File::Spec);
77

88
use Config;
@@ -87,29 +87,47 @@ sub os_flavor_is {
8787
return (grep { $flavors{$_} } @_) ? 1 : 0;
8888
}
8989

90+
91+
=item dir_target B<DEPRECATED>
92+
93+
my $make_frag = $mm->dir_target(@directories);
94+
95+
I<This function is deprecated> its use is no longer necessary and is
96+
I<only provided for backwards compatibility>. It is now a no-op.
97+
blibdirs_target provides a much simpler mechanism and pm_to_blib() can
98+
create its own directories anyway.
99+
100+
=cut
101+
102+
sub dir_target {}
103+
104+
90105
=item blibdirs_target (o)
91106
92107
my $make_frag = $mm->blibdirs_target;
93108
94-
Creates the blibdirs.exists target which creates all the directories we use in
109+
Creates the blibdirs.ts target which creates all the directories we use in
95110
blib/.
96111
97112
=cut
98113

99114
sub blibdirs_target {
100115
my $self = shift;
101116

102-
my @dirs = map { uc "\$(INST_$_)" } qw(libdir
103-
autodir archautodir
104-
bin script
105-
man1dir man3dir
106-
);
117+
my @dirs = map { uc "\$(INST_$_)" } qw(libdir archlib
118+
autodir archautodir
119+
bin script
120+
man1dir man3dir
121+
);
107122
my @mkpath = $self->split_command('$(NOECHO) $(MKPATH)', @dirs);
108123
my @chmod = $self->split_command('$(NOECHO) $(CHMOD) 755', @dirs);
109124

110-
my $make = "\nblibdirs.exists :: Makefile.PL \n";
125+
my $make = "\nblibdirs.ts :\n";
111126
$make .= join "", map { "\t$_\n" } @mkpath, @chmod;
112-
$make .= "\t\$(NOECHO) \$(TOUCH) blibdirs.exists\n\n";
127+
$make .= <<'MAKE';
128+
$(NOECHO) $(TOUCH) $@
129+
130+
MAKE
113131

114132
return $make;
115133
}
@@ -914,15 +932,14 @@ sub platform_constants {
914932
corresponding to the MM_*.pm file we're using.
915933
916934
The first element of @os_flavor is the major family (ie. Unix,
917-
Windows, VMS, OS/2, MacOS, etc...) and the rest are sub families.
935+
Windows, VMS, OS/2, etc...) and the rest are sub families.
918936
919937
Some examples:
920938
921939
Cygwin98 ('Unix', 'Cygwin', 'Cygwin9x')
922940
Windows NT ('Win32', 'WinNT')
923941
Win98 ('Win32', 'Win9x')
924942
Linux ('Unix', 'Linux')
925-
MacOS Classic ('MacOS', 'MacOS Classic')
926943
MacOS X ('Unix', 'Darwin', 'MacOS', 'MacOS X')
927944
OS/2 ('OS/2')
928945

0 commit comments

Comments
 (0)