use Config;
# Solaris (and possibly other Unices) have a tar in /usr/bin that, among
-# other things, does not understand @LongLink. This can cause
+# other things, does not understand @LongLink. This can cause
# extraction to look like it succeeded, but it actually failed (because
# the error message for the @LongLink failure scrolled offscreen).
# Therefore, given the fact that GNU tar is the most widespread tar available,
# dashes, it's better to die loudly telling the user exactly what happened
# so they don't make the same mistake again rather than being the only
# program in the universe that works with them.
- if(grep { /−/ } @ARGV) {
+ # the fancy dash is U+2212 or \xE2\x88\x92
+ if(grep { /\xE2\x88\x92/ } @ARGV or grep { /−/ } @ARGV) {
die <<'DEATH';
WHOA THERE! It looks like you've got some fancy dashes in your commandline!
These are *not* the traditional -- dashes that software recognizes. You
# <mst> we must set PERL_AUTOINSTALL_PREFER_CPAN too
$ENV{PERL_AUTOINSTALL_PREFER_CPAN} = 1;
- system($^X, '-MExtUtils::MakeMaker 6.31', '-e1');
+ system($^X, '-MExtUtils::MakeMaker 6.74', '-e1');
my $eumm = $? >> 8;
system($^X, '-MExtUtils::Install 1.43', '-e1');
}
return $orig->(@_);
};
- # not yet -- apeiron, 2010-03-10
+ # not yet -- apeiron, 2010-03-10
#$CPAN::Config->{urllist} = ["http://cpan.shadowcatprojects.net"];
# <mst> all bootstrapped fine on one DH account
# <mst> on another, it tries to install man stuff into /usr/local
system($^X, '-MCPAN', '-e', $cpan_config_command)
unless $did_cpan_config;
system($^X, '-MCPAN',
- '-e',
+ '-e',
q[CPAN::HandleConfig->load;],
- '-e',
- q[$CPAN::Config->{makepl_arg} = ] .
+ '-e',
+ q[$CPAN::Config->{makepl_arg} = ] .
q['INSTALLMAN1DIR=none INSTALLMAN3DIR=none';],
'-e',
q[$CPAN::Config->{buildpl_arg} = ] .
name 'local-lib';
all_from 'lib/local/lib.pm';
-requires 'ExtUtils::MakeMaker' => '6.31'; # version INSTALL_BASE was added
-requires 'ExtUtils::Install' => '1.43'; # ditto
+requires 'ExtUtils::MakeMaker' => '6.74'; # version PERL_MM_OPT is shell parsed
+requires 'ExtUtils::Install' => '1.43'; # version INSTALL_BASE was added
requires 'Module::Build' => '0.36'; # PERL_MB_OPT
# don't bother fixing CPAN.pm if bootstrapped from cpanminus
if (!$@ ) {
CPAN::HandleConfig->require_myconfig_or_config;
if ( $CPAN::Config ) {
- for my $eumm_setting ( qw/makepl_arg make_install_arg/ ) {
- if ($CPAN::Config->{$eumm_setting} =~ /(?:PREFIX|INSTALL_BASE)/) {
- die <<"DEATH";
-WHOA THERE! It looks like you've got $CPAN::Config->{$eumm_setting} set. This is
-known to cause problems with local::lib. Please either remove this setting or
-clear out your .cpan directory.
-DEATH
- }
- }
-
- for my $mb_setting (qw/mbuild_arg mbuild_install_arg mbuildpl_arg/) {
- if ($CPAN::Config->{$mb_setting} =~ /(?:--prefix|--install_base)/) {
+ for my $setting (qw(
+ makepl_arg make_install_arg
+ mbuild_arg mbuild_install_arg mbuildpl_arg
+ )) {
+ my $value = $CPAN::Config->{$setting} or next;
+ if ($setting =~ /^make/
+ ? $value =~ /(?:PREFIX|INSTALL_BASE)/
+ : /(?:--prefix|--install_base)/
+ ) {
die <<"DEATH";
-WHOA THERE! It looks like you've got $CPAN::Config->{$mb_setting} set. This is
-known to cause problems with local::lib. Please either remove this setting or
-clear out your .cpan directory.
+WHOA THERE! It looks like you've got $CPAN::Config->{$setting} set in
+your CPAN config. This is known to cause problems with local::lib. Please
+either remove this setting or clear out your .cpan directory.
DEATH
}
}
homepage => 'http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit/local-lib.git',
bugtracker => 'http://rt.cpan.org/Public/Dist/Display.html?Name=local-lib',
);
+
+makemaker_args(
+ clean => { FILES => 't/dist/*/MYMETA* t/dist/*/blib t/dist/EUMM/Makefile t/dist/EUMM/pm_to_blib t/dist/MB/Build t/dist/MB/_build' },
+ realclean => { FILES => 'MANIFEST MANIFEST.SKIP.bak' },
+);
+
WriteAll;