#!/usr/bin/perl -w
use
5.006;
use
my
::bundles;
my
$BUILDING_AS_PACKAGE
=
$ENV
{BUILDING_AS_PACKAGE} || (
grep
{ m!^\-\-release$! }
@ARGV
);
my
$Is_VMS
= $^O eq
'VMS'
;
check_environment();
my
(
%Extra_Params
,
%Extra_Prereqs
,
%Extra_Test_Prereqs
);
if
(
$BUILDING_AS_PACKAGE
) {
%Extra_Prereqs
= (
'CPAN::Meta'
=>
'2.143240'
,
'ExtUtils::Install'
=>
'1.52'
,
'ExtUtils::Manifest'
=>
'1.70'
,
'version'
=>
'0'
,
);
$Extra_Prereqs
{
'JSON::PP::Compat5006'
} =
'1.09'
if
"$]"
< 5.008;
%Extra_Test_Prereqs
= (
'File::Temp'
=>
'0.22'
,
'Scalar::Util'
=>
'1.13'
,
);
}
else
{
eval
{
}
or
do
{
$Extra_Params
{PERL} =
"$^X -Iinc"
;
};
my
::bundles::copy_bundles(
"bundled"
,
"inc"
);
}
$Extra_Prereqs
{
'Test::Harness'
} = 2.00
if
$^O eq
'VMS'
;
my
$MM
= WriteMakefile(
NAME
=>
'ExtUtils::MakeMaker'
,
VERSION_FROM
=>
"lib/ExtUtils/MakeMaker.pm"
,
ABSTRACT_FROM
=>
"lib/ExtUtils/MakeMaker.pm"
,
PREREQ_PM
=> {
%Extra_Prereqs
,
'File::Spec'
=> 0.8,
'Pod::Man'
=> 0,
'File::Basename'
=> 0,
'Data::Dumper'
=> 0,
(
"$]"
> 5.008 ? (
Encode
=> 0) : ()),
},
TEST_REQUIRES
=> \
%Extra_Test_Prereqs
,
MIN_PERL_VERSION
=>
'5.006'
,
PMLIBDIRS
=> [
qw(lib inc)
],
PMLIBPARENTDIRS
=> [
qw(lib inc)
],
EXE_FILES
=> [
qw(bin/instmodsh)
],
META_MERGE
=> {
no_index
=> {
package
=> [
qw(DynaLoader in version)
],
directory
=> [
qw(bundled my)
],
},
resources
=> {
MailingList
=>
'makemaker@perl.org'
,
},
},
CONFIGURE_REQUIRES
=> {},
BUILD_REQUIRES
=> {},
INSTALLDIRS
=> (
"$]"
< 5.012 ?
'perl'
:
'site'
),
LICENSE
=>
'perl'
,
AUTHOR
=>
'Michael G Schwern <schwern@pobox.com>'
,
realclean
=> {
FILES
=>
"inc"
},
%Extra_Params
,
$^O =~ /win/i
? (
dist
=> {
TAR
=>
'ptar'
,
TARFLAGS
=>
'-c -C -f'
,
},
)
: (),
);
sub
check_environment {
if
(
$Is_VMS
&&
$ENV
{bin} ) {
print
<<BIN_WARN;
The logical name BIN may be present. This may interfere with MakeMaker's
tests and operations. GNV is the prime suspect for setting this.
BIN_WARN
sleep
2;
}
}
{
sub
init_PERL {
my
(
$self
) =
shift
;
$self
->SUPER::init_PERL;
$self
->{
$_
} .=
q[ "-I$(INST_ARCHLIB)" "-I$(INST_LIB)"]
for
qw( PERLRUN FULLPERLRUN ABSPERLRUN )
;
}
sub
special_targets {
my
(
$self
) =
shift
;
my
$make_frag
=
$self
->SUPER::special_targets(
@_
);
return
$make_frag
if
$Is_VMS
or
$self
->is_make_type(
'dmake'
);
$make_frag
.=
<<'MAKE_FRAG';
.NOTPARALLEL: pure_all
MAKE_FRAG
return
$make_frag
;
}
}