my
$EUMM
=
eval
(
$ExtUtils::MakeMaker::VERSION
);
my
$meta
= {
"abstract"
=>
"a Dist::Inkt profile for TOBYINK"
,
"author"
=> [
"Toby Inkster (TOBYINK) <tobyink\@cpan.org>"
],
"dynamic_config"
=> 0,
"generated_by"
=>
"Dist::Inkt::Profile::TOBYINK version 0.021, CPAN::Meta::Converter version 2.140640"
,
"keywords"
=> [],
"license"
=> [
"perl_5"
],
"meta-spec"
=> {
version
=> 2,
},
"name"
=>
"Dist-Inkt-Profile-TOBYINK"
,
"no_index"
=> {
directory
=> [
"eg"
,
"examples"
,
"inc"
,
"t"
,
"xt"
] },
"prereqs"
=> {
configure
=> {
requires
=> {
"ExtUtils::MakeMaker"
=> 6.17 } },
runtime
=> {
requires
=> {
"Dist::Inkt"
=> 0.016,
"Dist::Inkt::DOAP"
=> 0.017,
"Dist::Inkt::Role::Hg"
=> 0.003,
"Dist::Inkt::Role::Release"
=> 0,
"Dist::Inkt::Role::Test::BumpedVersion"
=> 0,
"Dist::Inkt::Role::Test::Kwalitee"
=> 0,
"Dist::Inkt::Role::Test::SaneVersions"
=> 0,
"Dist::Inkt::Role::Test::TestSuite"
=> 0,
"perl"
=> 5.010001,
"Test::EOL"
=> 0,
"Test::Tabs"
=> 0,
},
},
test
=> {
requires
=> {
"Test::More"
=> 0.96 } },
},
"provides"
=> {
"Dist::Inkt::Profile::TOBYINK"
=> {
file
=>
"lib/Dist/Inkt/Profile/TOBYINK.pm"
,
version
=> 0.022 },
"Dist::Inkt::Role::Test::Whitespace"
=> {
file
=>
"lib/Dist/Inkt/Role/Test/Whitespace.pm"
,
version
=> 0.022 },
},
"release_status"
=>
"stable"
,
"resources"
=> {
bugtracker
=> {
},
repository
=> {
type
=>
"git"
,
},
},
"version"
=> 0.022,
};
my
%dynamic_config
;
my
%WriteMakefileArgs
= (
ABSTRACT
=>
$meta
->{abstract},
AUTHOR
=> (
$EUMM
>= 6.5702 ?
$meta
->{author} :
$meta
->{author}[0]),
DISTNAME
=>
$meta
->{name},
VERSION
=>
$meta
->{version},
EXE_FILES
=> [
map
$_
->{file},
values
%{
$meta
->{x_provides_scripts} || {} } ],
NAME
=>
do
{
my
$n
=
$meta
->{name};
$n
=~ s/-/::/g;
$n
},
test
=> {
TESTS
=>
"t/*.t"
},
%dynamic_config
,
);
$WriteMakefileArgs
{LICENSE} =
$meta
->{license}[0]
if
$EUMM
>= 6.3001;
sub
deps
{
my
%r
;
for
my
$stage
(
@_
)
{
for
my
$dep
(
keys
%{
$meta
->{prereqs}{
$stage
}{requires}})
{
next
if
$dep
eq
'perl'
;
my
$ver
=
$meta
->{prereqs}{
$stage
}{requires}{
$dep
};
$r
{
$dep
} =
$ver
if
!
exists
(
$r
{
$dep
}) ||
$ver
>=
$r
{
$dep
};
}
}
\
%r
;
}
my
(
$build_requires
,
$configure_requires
,
$runtime_requires
,
$test_requires
);
if
(
$EUMM
>= 6.6303)
{
$WriteMakefileArgs
{BUILD_REQUIRES} ||= deps(
'build'
);
$WriteMakefileArgs
{CONFIGURE_REQUIRES} ||= deps(
'configure'
);
$WriteMakefileArgs
{TEST_REQUIRES} ||= deps(
'test'
);
$WriteMakefileArgs
{PREREQ_PM} ||= deps(
'runtime'
);
}
elsif
(
$EUMM
>= 6.5503)
{
$WriteMakefileArgs
{BUILD_REQUIRES} ||= deps(
'build'
,
'test'
);
$WriteMakefileArgs
{CONFIGURE_REQUIRES} ||= deps(
'configure'
);
$WriteMakefileArgs
{PREREQ_PM} ||= deps(
'runtime'
);
}
elsif
(
$EUMM
>= 6.52)
{
$WriteMakefileArgs
{CONFIGURE_REQUIRES} ||= deps(
'configure'
);
$WriteMakefileArgs
{PREREQ_PM} ||= deps(
'runtime'
,
'build'
,
'test'
);
}
else
{
$WriteMakefileArgs
{PREREQ_PM} ||= deps(
'configure'
,
'build'
,
'test'
,
'runtime'
);
}
{
my
(
$minperl
) =
reverse
sort
(
grep
defined
&& /^[0-9]+(\.[0-9]+)?$/,
map
$meta
->{prereqs}{
$_
}{requires}{perl},
qw( configure build runtime )
);
if
(
defined
(
$minperl
))
{
die
"Installing $meta->{name} requires Perl >= $minperl"
unless
$] >=
$minperl
;
$WriteMakefileArgs
{MIN_PERL_VERSION} ||=
$minperl
if
$EUMM
>= 6.48;
}
}
sub
FixMakefile
{
return
unless
-d
'inc'
;
my
$file
=
shift
;
local
*MAKEFILE
;
open
MAKEFILE,
"< $file"
or
die
"FixMakefile: Couldn't open $file: $!; bailing out"
;
my
$makefile
=
do
{
local
$/; <MAKEFILE> };
close
MAKEFILE or
die
$!;
$makefile
=~ s/\b(test_harness\(\$\(TEST_VERBOSE\), )/$1
'inc'
, /;
$makefile
=~ s/( -I\$\(INST_ARCHLIB\))/ -Iinc$1/g;
$makefile
=~ s/(
"-I\$\(INST_LIB\)"
)/
"-Iinc"
$1/g;
$makefile
=~ s/^(FULLPERL = .*)/$1
"-Iinc"
/m;
$makefile
=~ s/^(PERL = .*)/$1
"-Iinc"
/m;
open
MAKEFILE,
"> $file"
or
die
"FixMakefile: Couldn't open $file: $!; bailing out"
;
print
MAKEFILE
$makefile
or
die
$!;
close
MAKEFILE or
die
$!;
}
my
$mm
= WriteMakefile(
%WriteMakefileArgs
);
FixMakefile(
$mm
->{FIRST_MAKEFILE} ||
'Makefile'
);
exit
(0);