Release commit for 5.9013
[catagits/Catalyst-Manual.git] / Makefile.PL
index 5f0bc03..83f096e 100644 (file)
 use strict;
-use warnings FATAL => 'all';
-use ExtUtils::MakeMaker;
-(do './maint/Makefile.PL.include' or die $@) unless -f 'META.yml';
-
-my %WriteMakefileArgs = (
-  NAME => 'Catalyst::Manual',
-  VERSION_FROM => 'lib/Catalyst/Manual.pm',
-  AUTHOR => [ 'Catalyst Contributors, see Catalyst.pm', 'Kieren Diment <zarquon@cpan.org>' ],
-
-  META_MERGE => {
-    'meta-spec' => { version => 2 },
-    dynamic_config => 0,
-    resources => {
-      repository => {
-        url => 'https://github.com/perl-catalyst/Catalyst-Manual.git',
-        web => 'https://github.com/perl-catalyst/Catalyst-Manual',
-        type => 'git',
-      },
-      bugtracker => {
-        mailto => 'bug-Catalyst-Manual@rt.cpan.org',
-        web => 'https://rt.cpan.org/Public/Dist/Display.html?Name=Catalyst-Manual',
-      },
-      x_IRC => 'irc://irc.perl.org/#catalyst',
-      x_MailingList => 'http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst',
+use warnings;
+use 5.006;
+use utf8;
+
+my %META = (
+  name => 'Catalyst-Manual',
+  license => 'perl_5',
+  author => [
+    'Catalyst Contributors, see Catalyst.pm',
+    'Kieren Diment <zarquon@cpan.org>',
+  ],
+  dynamic_config => 0,
+  resources => {
+    repository => {
+      url => 'https://github.com/perl-catalyst/Catalyst-Manual.git',
+      web => 'https://github.com/perl-catalyst/Catalyst-Manual',
+      type => 'git',
+    },
+    bugtracker => {
+      mailto => 'bug-Catalyst-Manual@rt.cpan.org',
+      web => 'https://rt.cpan.org/Public/Dist/Display.html?Name=Catalyst-Manual',
     },
-    x_contributors => [ # manually added, from git shortlog -e -s -n
-      'Kennedy Clark <hkclark@gmail.com>',
-      'Tomas Doran <bobtfish@bobtfish.net>',
-      'Kieren Diment <diment@gmail.com>',
-      'Karen Etheridge <ether@cpan.org>',
-      'Jonathan Rockway <jon@jrock.us>',
-      'Jesse Sheidlower <jester@panix.com>',
-      'Brian Cassidy <bricas@cpan.org>',
-      'Caleb Cushing <xenoterracide@gmail.com>',
-      'Dan Dascalescu <bigbang7@gmail.com>',
-      'Rafael Kitover <rkitover@cpan.org>',
-      'Jason Felds <wolfman.ncsu2000@gmail.com>',
-      'Frederik Schwarzer <schwarzerf@gmail.com>',
-      'Jonathan Yu <jawnsy@cpan.org>',
-      'Breno G. de Oliveira <garu@cpan.org>',
-      'Matt S Trout <mst@shadowcat.co.uk>',
-      'Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org>',
-      'Jess Robinson <cpan@desert-island.me.uk>',
-      'Florian Ragwitz <rafl@debian.org>',
-      'Eden Cardim <e.cardim@shadowcat.co.uk>',
-      'Andrew Rodland <arodland@cpan.org>',
-      'Justin Hunter <justin.d.hunter@gmail.com>',
-      'Matthew Horsfall <wolfsage@gmail.com>',
-      'Ricardo SIGNES <rjbs@cpan.org>',
-      'Robert \'phaylon\' Sedlacek <rs@474.at>',
-      'Shlomi Fish <shlomif@iglu.org.il>',
-      'Jay Kuri <jayk@cpan.org>',
-      'u-foka <no@se.com>',
-      'Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>',
-      'Alexander Hartmaier <abraxxa@cpan.org>',
-      'Peter Karman <perl@peknet.com>',
-      'Andreas Marienborg <andreas.marienborg@gmail.com>',
-      'Gerda Shank <gshank@cpan.org>',
-      'Ian Wells <ijw@cack.org.uk>',
-      'Mark A. Stratman <stratman@gmail.com>',
-      'sockmonk <wes.sheldahl@gmail.com>',
-      'Mateu X. Hunter <hunter@missoula.org>',
-      'Ash Berlin <ash@cpan.org>',
-      'Marcus Ramberg <marcus@nordaaker.com>',
-      'Andy Grundman <andy@hybridized.org>',
-      'kostya <kostya@cpan.org>',
-      'Matthias Dietrich <perl@rb.ly>',
-      'Paul Waring <paul@xk7.net>',
-      'kthakore <thakore.kartik@gmail.com>',
-      'Ronald J Kimball <rjk@tamias.net>',
-      'Tom Feist <shabble@metavore.org>',
-      'Ton Voon <ton.voon@opsera.com>',
-      'Zsolt Zemancsik <darwick@cyberground.hu>',
-      'Iñigo Tejedor Arrondo <poisonbit@gmail.com>',
-      'Eric A. Zarko <ezarko@cpan.org>',
-      'Jay Hannah <jay@jays.net>',
-      'Eisenberger Tamás <tamas@eisenberger.hu>',
-      'Edwin de Graaf <egraaf@egraaf.org>',
-      'Jonathan "Duke" Leto <jonathan@leto.net>',
-      'Jonathan Otsuka <djgoku@gmail.com>',
-      'Alastair McGowan-Douglas <altreus@cpan.org>',
-      'Dominic Humphries <djh@thermeon.eu>',
-      'antgel <no@se.com>',
-      'KMX <kmx@cpan.org>',
-      'David Steinbrunner <dsteinbrunner@pobox.com>',
-      'David Schmidt <davewood@gmx.at>',
-    ],
+    x_IRC => 'irc://irc.perl.org/#catalyst',
+    x_MailingList => 'http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst',
   },
-
-  META_ADD => {
-    prereqs => {
-      configure => {
-        requires => {
-          'ExtUtils::MakeMaker' => '0',
-        },
+  # perl -MData::Dumper -e'$Data::Dumper::Indent = $Data::Dumper::Terse = $Data::Dumper::Trailingcomma = 1; print Dumper([map /^\s*\d+\s+(.*)/, `git shortlog -e -s -n`]);'
+  x_contributors => [
+    'Kennedy Clark <hkclark@gmail.com>',
+    'Tomas Doran <bobtfish@bobtfish.net>',
+    'Kieren Diment <diment@gmail.com>',
+    'Karen Etheridge <ether@cpan.org>',
+    'Graham Knop <haarg@haarg.org>',
+    'Jonathan Rockway <jon@jrock.us>',
+    'Jesse Sheidlower <jester@panix.com>',
+    'Brian Cassidy <bricas@cpan.org>',
+    'Caleb Cushing <xenoterracide@gmail.com>',
+    'Dan Dascalescu <bigbang7@gmail.com>',
+    'Rafael Kitover <rkitover@cpan.org>',
+    'Jason Felds <wolfman.ncsu2000@gmail.com>',
+    'Frederik Schwarzer <schwarzerf@gmail.com>',
+    'Jonathan Yu <jawnsy@cpan.org>',
+    'Breno G. de Oliveira <garu@cpan.org>',
+    'Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org>',
+    'Matt S Trout <mst@shadowcat.co.uk>',
+    'Florian Ragwitz <rafl@debian.org>',
+    'Jess Robinson <cpan@desert-island.me.uk>',
+    'Matthew Horsfall <wolfsage@gmail.com>',
+    'Andrew Rodland <andrew@cleverdomain.org>',
+    'Artem Konev <artem.konev@nginx.com>',
+    'Eden Cardim <edencardim@gmail.com>',
+    'Justin Hunter <justin.d.hunter@gmail.com>',
+    'Ricardo Signes <rjbs@semiotic.systems>',
+    'Robert \'phaylon\' Sedlacek <rs@474.at>',
+    'Shlomi Fish <shlomif@iglu.org.il>',
+    'antgel <no@se.com>',
+    'Alexander Hartmaier <abraxxa@cpan.org>',
+    'Andreas Marienborg <omega@palle.net>',
+    'Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>',
+    'Gerda Shank <gerda.shank@gmail.com>',
+    'Ian Wells <ijw@cack.org.uk>',
+    'Jay Hannah <jay@jays.net>',
+    'Jay Kuri <jayk@cpan.org>',
+    'Mark A. Stratman <stratman@gmail.com>',
+    'Mateu X. Hunter <hunter@missoula.org>',
+    'Nick Tonkin <1nickt@users.noreply.github.com>',
+    'Peter Karman <perl@peknet.com>',
+    'Wes Sheldahl <wes.sheldahl@gmail.com>',
+    'Alastair McGowan-Douglas <altreus@cpan.org>',
+    'Andy Grundman <andy@hybridized.org>',
+    'Ash Berlin <ash@cpan.org>',
+    'David Schmidt <mail@davidschmidt.at>',
+    'David Steinbrunner <dsteinbrunner@pobox.com>',
+    'Dominic Humphries <djh@thermeon.eu>',
+    'Edwin de Graaf <egraaf@egraaf.org>',
+    'Eisenberger Tamás <tamas@eisenberger.hu>',
+    'Eric A. Zarko <ezarko@cpan.org>',
+    'Iñigo Tejedor Arrondo <poisonbit@gmail.com>',
+    'Jonathan "Duke" Leto <jonathan@leto.net>',
+    'Jonathan Otsuka <djgoku@gmail.com>',
+    'Kartik Thakore <thakore.kartik@gmail.com>',
+    'Kostya Ten <kostya@cpan.org>',
+    'Lilly An <lilly@ziprecruiter.com>',
+    'Marcus Ramberg <marcus@nordaaker.com>',
+    'Matthias Dietrich <perl@rb.ly>',
+    'Paul Waring <paul@xk7.net>',
+    'Ronald J Kimball <rjk@tamias.net>',
+    'Tom Feist <shabble@metavore.org>',
+    'Ton Voon <ton.voon@opsera.com>',
+    'Zsolt Zemancsik <darwick@cyberground.hu>',
+    'kmx <kmx@cpan.org>',
+  ],
+  prereqs => {
+    configure => {
+      requires => {
+        'ExtUtils::MakeMaker' => '0',
       },
-      runtime => {
-        requires => {
-          perl => '5.006',
-        },
+    },
+    runtime => {
+      requires => {
+        perl => '5.006',
       },
-      test => {
-        requires => {
-          'Test::More' => '0.88',
-        },
+    },
+    test => {
+      requires => {
+        'Test::More' => '0.88',
       },
-      develop => {
-        requires => {
-          'Pod::Simple' => '3.11', # L<Foo|http://foo.com> support
-          'Test::Pod' => '1.14',
-          'Test::Pod::Coverage' => '1.04',
-        },
+    },
+    develop => {
+      requires => {
+        'Pod::Simple' => '3.11', # L<Foo|http://foo.com> support
+        'Test::Pod' => '1.14',
+        'Test::Pod::Coverage' => '1.04',
       },
     },
   },
-
-  realclean => { FILES => [ 'Distar/', 'MANIFEST*' ] },
 );
 
+my %MM_ARGS = ();
+
+## BOILERPLATE ###############################################################
+require ExtUtils::MakeMaker;
+(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;
+my $mymeta        = $eumm_version >= 6.57_02;
+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;
+$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 }
+  unless -f 'META.yml';
+$MM_ARGS{PL_FILES} ||= {};
+$MM_ARGS{NORECURS} = 1
+  if not exists $MM_ARGS{NORECURS};
 
 for (qw(configure build test runtime)) {
   my $key = $_ eq 'runtime' ? 'PREREQ_PM' : uc $_.'_REQUIRES';
-  next unless exists $WriteMakefileArgs{META_ADD}{prereqs}{$_}
-           or exists $WriteMakefileArgs{$key};
-  my $r = $WriteMakefileArgs{$key} = {
-    %{$WriteMakefileArgs{META_ADD}{prereqs}{$_}{requires} || {}},
-    %{delete $WriteMakefileArgs{$key} || {}},
+  my $r = $MM_ARGS{$key} = {
+    %{$META{prereqs}{$_}{requires} || {}},
+    %{delete $MM_ARGS{$key} || {}},
   };
   defined $r->{$_} or delete $r->{$_} for keys %$r;
 }
 
-# dynamic prereqs get added here.
-
-$WriteMakefileArgs{MIN_PERL_VERSION} = delete $WriteMakefileArgs{PREREQ_PM}{perl} || 0;
-
-$WriteMakefileArgs{BUILD_REQUIRES} = {
-    %{$WriteMakefileArgs{BUILD_REQUIRES} || {}},
-    %{delete $WriteMakefileArgs{TEST_REQUIRES}}
-} if $eumm_version < 6.63_03;
+$MM_ARGS{MIN_PERL_VERSION} = delete $MM_ARGS{PREREQ_PM}{perl} || 0;
 
-$WriteMakefileArgs{PREREQ_PM} = {
-    %{$WriteMakefileArgs{PREREQ_PM}},
-    %{delete $WriteMakefileArgs{BUILD_REQUIRES}}
-} if $eumm_version < 6.55_01;
-
-delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
+delete $MM_ARGS{MIN_PERL_VERSION}
+  if $eumm_version < 6.47_01;
+$MM_ARGS{BUILD_REQUIRES} = {%{$MM_ARGS{BUILD_REQUIRES}}, %{delete $MM_ARGS{TEST_REQUIRES}}}
+  if $eumm_version < 6.63_03;
+$MM_ARGS{PREREQ_PM} = {%{$MM_ARGS{PREREQ_PM}}, %{delete $MM_ARGS{BUILD_REQUIRES}}}
+  if $eumm_version < 6.55_01;
+delete $MM_ARGS{CONFIGURE_REQUIRES}
   if $eumm_version < 6.51_03;
 
-delete $WriteMakefileArgs{MIN_PERL_VERSION}
-  if $eumm_version < 6.48;
-
-delete @WriteMakefileArgs{qw(META_ADD META_MERGE)}
-  if $eumm_version < 6.46;
-
-delete $WriteMakefileArgs{LICENSE}
-  if $eumm_version < 6.31;
-
-WriteMakefile(%WriteMakefileArgs);
-
+ExtUtils::MakeMaker::WriteMakefile(%MM_ARGS);
+## END BOILERPLATE ###########################################################