Subject: | Build.PL does not set installdirs=core |
I was updating ExtUtils::Install today and noticed this:
Running Build install
Installing /usr/local/lib/site_perl/ExtUtils/Install.pm
Installing /usr/local/lib/site_perl/ExtUtils/Installed.pm
Installing /usr/local/lib/site_perl/ExtUtils/Packlist.pm
Installing /usr/local/man/man3/ExtUtils::Install.3
Installing /usr/local/man/man3/ExtUtils::Installed.3
Installing /usr/local/man/man3/ExtUtils::Packlist.3
Writing
/usr/local/lib/site_perl/5.8/darwin-thread-multi-2level/auto/ExtUtils/Install/.packlist
## Differing version of ExtUtils/Install.pm found. You might like to
rm /usr/local/perl/5.8.8/lib/ExtUtils/Install.pm
## Differing version of ExtUtils/Installed.pm found. You might like to
rm /usr/local/perl/5.8.8/lib/ExtUtils/Installed.pm
## Differing version of ExtUtils/Packlist.pm found. You might like to
rm /usr/local/perl/5.8.8/lib/ExtUtils/Packlist.pm
## Running 'make install UNINST=1' will unlink all those files for you.
The problem is Makefile.PL sets INSTALLDIRS=perl but Build.PL does not.
The attached patch fixes this. While I was at it I eliminated the
dependency on ExtUtils::MM. Its safe to assume that when you load
ExtUtils::MakeMaker, MM will load too.
MM has been around for a long, long time, but ExtUtils::MM was only
introduced relatively recently, like say around 5.6.
Subject: | eu_install.patch |
diff -rN -u old-ExtUtils-Install-1.41/Build.PL new-ExtUtils-Install-1.41/Build.PL
--- old-ExtUtils-Install-1.41/Build.PL 2006-10-07 15:40:09.000000000 -0700
+++ new-ExtUtils-Install-1.41/Build.PL 2006-10-07 15:40:09.000000000 -0700
@@ -29,6 +29,8 @@
dist_version_from => 'lib/ExtUtils/Install.pm',
dynamic_config => 1,
+ installdirs => 'core',
+
build_requires => {
# 'Test::More' => 0, # This is bundled, but not in @INC for prereqs
},
@@ -55,7 +57,6 @@
($^O eq 'VMS' ? ('VMS::Filespec' => 0) : ()),
'ExtUtils::MakeMaker' => 0,
- 'ExtUtils::MM' => 0, # for parse_version; rework it ???
},
recommends => {
diff -rN -u old-ExtUtils-Install-1.41/Makefile.PL new-ExtUtils-Install-1.41/Makefile.PL
--- old-ExtUtils-Install-1.41/Makefile.PL 2006-10-07 15:40:09.000000000 -0700
+++ new-ExtUtils-Install-1.41/Makefile.PL 2006-10-07 15:40:09.000000000 -0700
@@ -56,10 +56,7 @@
($^O eq 'VMS' ? ('VMS::Filespec' => 0) : ()),
($Recommend_Win32API_File ? ('Win32API::File' => 0) : ()),
- # XXX: ExtUtils::MM apparently not present in perl5.005 MakeMaker
- # Need to correct version of MakeMaker below or eliminate need for it.
'ExtUtils::MakeMaker' => 0,
- 'ExtUtils::MM' => 0, # for parse_version; rework it ???
# 'Test::More' => 0, # This is bundled, but not in @INC for prereqs
},
@@ -88,4 +85,4 @@
$self->{PERLRUN} .= qq{ "-I$lib"};
$self->{FULLPERLRUN} .= qq{ "-I$lib"};
}
-}
\ No newline at end of file
+}
diff -rN -u old-ExtUtils-Install-1.41/lib/ExtUtils/Installed.pm new-ExtUtils-Install-1.41/lib/ExtUtils/Installed.pm
--- old-ExtUtils-Install-1.41/lib/ExtUtils/Installed.pm 2006-10-07 15:40:09.000000000 -0700
+++ new-ExtUtils-Install-1.41/lib/ExtUtils/Installed.pm 2006-10-07 15:40:09.000000000 -0700
@@ -121,7 +121,6 @@
if (-r $p) {
$module = _module_name($p, $module) if $Is_VMS;
- require ExtUtils::MM;
$self->{$module}{version} = MM->parse_version($p);
last;
}
diff -rN -u old-ExtUtils-Install-1.41/t/lib/MakeMaker/Test/Utils.pm new-ExtUtils-Install-1.41/t/lib/MakeMaker/Test/Utils.pm
--- old-ExtUtils-Install-1.41/t/lib/MakeMaker/Test/Utils.pm 2006-10-07 15:40:09.000000000 -0700
+++ new-ExtUtils-Install-1.41/t/lib/MakeMaker/Test/Utils.pm 2006-10-07 15:40:09.000000000 -0700
@@ -251,7 +251,7 @@
sub run {
my $cmd = shift;
- require ExtUtils::MM;
+ require ExtUtils::MakeMaker;
# Unix can handle 2>&1 and OS/2 from 5.005_54 up.
# This makes our failure diagnostics nicer to read.