X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Makefile.PL;h=ef8d851c4a4858529e0e026685a37b5a30e93aad;hb=4d60ba9ba721cb2a8ea5a20e3381c323f3354818;hp=33df57ca3cdda392bb5f221d1c68c432a514c805;hpb=2ef98eddeb583f763b6b9ba13ae1c5003fb2bff1;p=p5sagit%2Fstrictures.git diff --git a/Makefile.PL b/Makefile.PL index 33df57c..ef8d851 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -1,11 +1,12 @@ use strict; use warnings FATAL => 'all'; use 5.006; +use lib 'inc'; +use ExtUtils::HasCompiler 'can_compile_loadable_object'; my $have_compiler = ! parse_args()->{PUREPERL_ONLY} - && eval { require ExtUtils::CBuilder; 1 } - && ExtUtils::CBuilder->new->have_compiler; + && can_compile_loadable_object(quiet => 1); my %extra_prereqs = ( indirect => 0, @@ -16,6 +17,7 @@ my %extra_prereqs = ( my %META = ( name => 'strictures', license => 'perl_5', + dynamic_config => 1, prereqs => { configure => { requires => { } }, build => { requires => { } }, @@ -23,21 +25,29 @@ my %META = ( 'Test::More' => 0, } }, runtime => { - requires => { }, - recommends => { - %extra_prereqs, + requires => { perl => '5.006', }, + suggests => { + %extra_prereqs, + }, }, develop => { requires => { + 'Test::Pod' => 0, + 'Test::Pod::Coverage' => 0, + 'Pod::Coverage::CountParents' => 0, %extra_prereqs, } }, }, resources => { + # GitHub mirrors from Shadowcat. We list it so we can get pull requests. + # The canonical repo is: + # r/o: git://git.shadowcat.co.uk/p5sagit/strictures.git # r/w: p5sagit@git.shadowcat.co.uk:strictures.git + # web: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit/strictures.git repository => { - url => 'git://git.shadowcat.co.uk/p5sagit/strictures.git', - web => 'http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit/strictures.git', + url => 'https://github.com/p5sagit/strictures.git', + web => 'https://github.com/p5sagit/strictures', type => 'git', }, bugtracker => { @@ -47,15 +57,23 @@ my %META = ( license => [ 'http://dev.perl.org/licenses/' ], }, no_index => { - directory => [ 't', 'xt' ] + directory => [ 't', 'xt', 'inc' ] }, + x_authority => 'cpan:MSTROUT', + x_contributors => [ # manually added, from git shortlog -e -s -n + 'Graham Knop ', + 'Karen Etheridge ', + 'Matt S Trout ', + 'Peter Rabbitson ', + 'Christian Walde ', + 'Diab Jerius ', + ], ); my %MM_ARGS = ( PREREQ_PM => { - ($] >= 5.008004 && $have_compiler ? %extra_prereqs : () ) + ("$]" >= 5.008004 && $have_compiler ? %extra_prereqs : () ) }, - realclean => { FILES => [ 'Distar/', 'MANIFEST*' ] }, ); sub parse_args { @@ -70,9 +88,9 @@ sub parse_args { return $tmp->{ARGS} || {}; } -############################################################################## +## BOILERPLATE ############################################################### require ExtUtils::MakeMaker; -(do 'maint/Makefile.PL.include' or die $@) unless -f 'META.yml'; +(do './maint/Makefile.PL.include' or die $@) unless -f 'META.yml'; # have to do this since old EUMM dev releases miss the eval $VERSION line my $eumm_version = eval $ExtUtils::MakeMaker::VERSION; @@ -81,8 +99,10 @@ my $mymeta_broken = $mymeta && $eumm_version < 6.57_07; ($MM_ARGS{NAME} = $META{name}) =~ s/-/::/g; ($MM_ARGS{VERSION_FROM} = "lib/$MM_ARGS{NAME}.pm") =~ s{::}{/}g; -$MM_ARGS{LICENSE} = $META{license} - if $eumm_version >= 6.30; +$META{license} = [ $META{license} ] + if $META{license} && !ref $META{license}; +$MM_ARGS{LICENSE} = $META{license}[0] + if $META{license} && $eumm_version >= 6.30; $MM_ARGS{NO_MYMETA} = 1 if $mymeta_broken; $MM_ARGS{META_ADD} = { 'meta-spec' => { version => 2 }, %META } @@ -109,3 +129,4 @@ delete $MM_ARGS{CONFIGURE_REQUIRES} if $eumm_version < 6.51_03; ExtUtils::MakeMaker::WriteMakefile(%MM_ARGS); +## END BOILERPLATE ###########################################################