convert Makefile.PL to using Distar
Karen Etheridge [Tue, 18 Jun 2013 22:30:18 +0000 (15:30 -0700)]
.gitignore
MANIFEST.SKIP [deleted file]
Makefile.PL
lib/Devel/Declare.pm

index 08411e0..cd1075d 100644 (file)
@@ -24,3 +24,5 @@
 !/Declare.xs
 /Debian*
 /README
+/Distar/
+/MANIFEST.SKIP
diff --git a/MANIFEST.SKIP b/MANIFEST.SKIP
deleted file mode 100644 (file)
index 9da520c..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-^(?!script/|lib/|inc/|t/|example/|Makefile.PL$|README$|MANIFEST$|Changes$|META.yml|.*?.xs$|stolen_chunk_of_toke.c$)
-^MYMETA\.
-\b\..*\.swp
index b965a35..56c0ed0 100644 (file)
@@ -1,40 +1,65 @@
-use inc::Module::Install 0.91;
+use strict;
+use warnings FATAL => 'all';
 
 use 5.008001;
+use ExtUtils::MakeMaker;
+(do 'maint/Makefile.PL.include' or die $@) unless -f 'META.yml';
 
 use ExtUtils::Depends;
+my $pkg = ExtUtils::Depends->new('Devel::Declare', 'B::Hooks::OP::Check');
 
-name 'Devel-Declare';
-all_from 'lib/Devel/Declare.pm';
+my %TEST_DEPS = (
+    'B::Hooks::OP::Check' => '0.19',
+    'Test::More' => '0.88',
+    'Test::Requires' => '0',
+);
 
-requires 'Scalar::Util' => 1.11; # set_prototype appeared in this version
-requires 'B::Hooks::OP::Check' => '0.19';
-requires 'B::Hooks::EndOfScope' => '0.05';
-requires 'Sub::Name';
+# 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 };
 
-build_requires 'B::Hooks::OP::Check' => '0.19';
+*MY::postamble = sub {
+    my ($self, %extra) = @_;
+    join('', %extra) if keys %extra;
+} if not &MY::postamble;
 
-# minimum version that works on Win32+gcc
-configure_requires 'ExtUtils::Depends' => 0.302;
+WriteMakefile(
+    NAME => 'Devel::Declare',
+    AUTHOR => ['Matt S Trout - <mst@shadowcat.co.uk> - original author'],
+    VERSION_FROM => 'lib/Devel/Declare.pm',
+    MIN_PERL_VERSION => '5.008001',
 
-# minimum version that depends on ExtUtils::Depends 0.302
-configure_requires 'B::Hooks::OP::Check' => '0.19';
+    CONFIGURE_REQUIRES => {
+        # minimum version that works on Win32+gcc
+        'ExtUtils::Depends' => 0.302,
 
-test_requires 'Test::More' => '0.88';
-test_requires 'Test::Requires' => '0';
+        # minimum version that depends on ExtUtils::Depends 0.302
+        'B::Hooks::OP::Check' => '0.19',
+    },
 
-# r/w: p5sagit@git.shadowcat.co.uk:Devel-Declare.git
-repository 'git://git.shadowcat.co.uk/p5sagit/Devel-Declare.git';
+    PREREQ_PM => {
+        'Scalar::Util' => 1.11, # set_prototype appeared in this version
+        'B::Hooks::OP::Check' => '0.19',
+        'B::Hooks::EndOfScope' => '0.05',
+        'Sub::Name' => 0,
+        ($mymeta_works ? () : (%TEST_DEPS)),
+    },
 
-postamble(<<'EOM');
-$(OBJECT) : stolen_chunk_of_toke.c
-EOM
+    $mymeta_works ? (BUILD_REQUIRES => \%TEST_DEPS) : (),
 
-my $pkg = ExtUtils::Depends->new('Devel::Declare', 'B::Hooks::OP::Check');
+    META_MERGE => {
+        dynamic_config => 0,
 
-WriteMakefile(
-  dist => {
-    PREOP => 'pod2text lib/Devel/Declare.pm >README'
-  },
-  $pkg->get_makefile_vars,
+        resources => {
+            # r/w: p5sagit@git.shadowcat.co.uk:Devel-Declare.git
+            repository => 'git://git.shadowcat.co.uk/p5sagit/Devel-Declare.git',
+            homepage => 'http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit/Devel-Declare.git',
+        },
+    },
+
+    C => [ 'stolen_chunk_of_toke.c' ],
+    XS => { 'Declare.xs' => 'Declare.c' },
+    postamble => { '' => '$(OBJECT) : stolen_chunk_of_toke.c' },
+
+    $pkg->get_makefile_vars,
 );
+
index a7263f1..d50c6cf 100644 (file)
@@ -1,4 +1,5 @@
 package Devel::Declare;
+# ABSTRACT: Adding keywords to perl, in perl
 
 use strict;
 use warnings;