use strict;
use warnings FATAL => 'all';
use ExtUtils::MakeMaker;
(do 'maint/Makefile.PL.include' or die $@) unless -f 'META.yml';
my %build_requires = (
'Test::More' => 0.98,
);
my %requires = (
'strictures' => 1,
'JSON::MaybeXS' => 0,
);
# have to do this since old EUMM dev releases miss the eval $VERSION line
my $mymeta_works = do { no warnings; $ExtUtils::MakeMaker::VERSION >= 6.5707 };
my $mymeta = do { no warnings; $ExtUtils::MakeMaker::VERSION >= 6.5702 };
WriteMakefile(
NAME => 'JSON-Diffable',
VERSION_FROM => 'lib/JSON/Diffable.pm',
PREREQ_PM => {
%requires,
($mymeta_works ? () : (%build_requires)),
},
($mymeta_works
? ( # BUILD_REQUIRES makes MYMETA right, requires stops META being wrong
BUILD_REQUIRES => \%build_requires,
META_ADD => { requires => \%requires }
)
: ( # META_ADD both to get META right - only Makefile written
META_ADD => {
requires => \%requires,
build_requires => \%build_requires,
}
)
),
($mymeta && !$mymeta_works ? (NO_MYMETA => 1) : ()),
);