Subject: | better Makefile.PL |
Which declares which OSes it supports and has more metadata.
--
Alexandr Ciornii, http://chorny.net
Subject: | Makefile.PL |
use 5.016;
use strict;
use warnings;
use ExtUtils::MakeMaker;
unless ($^O eq "MSWin32" || $^O eq "cygwin" || $^O eq "interix") {
die "OS unsupported\n";
}
WriteMakefile1(
MIN_PERL_VERSION => '5.016',
META_MERGE => {
resources => {
#repository => 'URL to repository here',
},
},
NAME => 'Win32::HTA',
VERSION_FROM => 'lib/Win32/HTA.pm',
PREREQ_PM => {
'Win32::Process' => 0,
},
TEST_REQUIRES => {
'Test::More' = > 0,
},
ABSTRACT_FROM => 'lib/Win32/HTA.pm',
AUTHOR => 'Thomas Kratz <tomk@cpan.org>',
LICENSE => 'perl',
);
sub WriteMakefile1 { #Compatibility code for old versions of EU::MM. Written by Alexandr Ciornii, version 2. Added by eumm-upgrade.
my %params=@_;
my $eumm_version=$ExtUtils::MakeMaker::VERSION;
$eumm_version=eval $eumm_version;
die "EXTRA_META is deprecated" if exists $params{EXTRA_META};
die "License not specified" if not exists $params{LICENSE};
if ($params{AUTHOR} and ref($params{AUTHOR}) eq 'ARRAY' and $eumm_version < 6.5705) {
$params{META_ADD}->{author}=$params{AUTHOR};
$params{AUTHOR}=join(', ',@{$params{AUTHOR}});
}
if ($params{TEST_REQUIRES} and $eumm_version < 6.64) {
$params{BUILD_REQUIRES}={ %{$params{BUILD_REQUIRES} || {}} , %{$params{TEST_REQUIRES}} };
delete $params{TEST_REQUIRES};
}
if ($params{BUILD_REQUIRES} and $eumm_version < 6.5503) {
#EUMM 6.5502 has problems with BUILD_REQUIRES
$params{PREREQ_PM}={ %{$params{PREREQ_PM} || {}} , %{$params{BUILD_REQUIRES}} };
delete $params{BUILD_REQUIRES};
}
delete $params{CONFIGURE_REQUIRES} if $eumm_version < 6.52;
delete $params{MIN_PERL_VERSION} if $eumm_version < 6.48;
delete $params{META_MERGE} if $eumm_version < 6.46;
delete $params{META_ADD} if $eumm_version < 6.46;
delete $params{LICENSE} if $eumm_version < 6.31;
WriteMakefile(%params);
}
Subject: | Makefile.PL.patch |
--- Makefile.PL.dist 2016-02-10 11:28:43.000000000 +0200
+++ Makefile.PL 2016-02-25 13:05:16.531250000 +0200
@@ -5,11 +5,55 @@
use ExtUtils::MakeMaker;
-WriteMakefile(
+unless ($^O eq "MSWin32" || $^O eq "cygwin" || $^O eq "interix") {
+ die "OS unsupported\n";
+}
+
+WriteMakefile1(
+ MIN_PERL_VERSION => '5.016',
+ META_MERGE => {
+ resources => {
+ #repository => 'URL to repository here',
+ },
+ },
NAME => 'Win32::HTA',
VERSION_FROM => 'lib/Win32/HTA.pm',
- PREREQ_PM => {},
+ PREREQ_PM => {
+ 'Win32::Process' => 0,
+ },
+ TEST_REQUIRES => {
+ 'Test::More' = > 0,
+ },
ABSTRACT_FROM => 'lib/Win32/HTA.pm',
AUTHOR => 'Thomas Kratz <tomk@cpan.org>',
LICENSE => 'perl',
);
+
+sub WriteMakefile1 { #Compatibility code for old versions of EU::MM. Written by Alexandr Ciornii, version 2. Added by eumm-upgrade.
+ my %params=@_;
+ my $eumm_version=$ExtUtils::MakeMaker::VERSION;
+ $eumm_version=eval $eumm_version;
+ die "EXTRA_META is deprecated" if exists $params{EXTRA_META};
+ die "License not specified" if not exists $params{LICENSE};
+ if ($params{AUTHOR} and ref($params{AUTHOR}) eq 'ARRAY' and $eumm_version < 6.5705) {
+ $params{META_ADD}->{author}=$params{AUTHOR};
+ $params{AUTHOR}=join(', ',@{$params{AUTHOR}});
+ }
+ if ($params{TEST_REQUIRES} and $eumm_version < 6.64) {
+ $params{BUILD_REQUIRES}={ %{$params{BUILD_REQUIRES} || {}} , %{$params{TEST_REQUIRES}} };
+ delete $params{TEST_REQUIRES};
+ }
+ if ($params{BUILD_REQUIRES} and $eumm_version < 6.5503) {
+ #EUMM 6.5502 has problems with BUILD_REQUIRES
+ $params{PREREQ_PM}={ %{$params{PREREQ_PM} || {}} , %{$params{BUILD_REQUIRES}} };
+ delete $params{BUILD_REQUIRES};
+ }
+ delete $params{CONFIGURE_REQUIRES} if $eumm_version < 6.52;
+ delete $params{MIN_PERL_VERSION} if $eumm_version < 6.48;
+ delete $params{META_MERGE} if $eumm_version < 6.46;
+ delete $params{META_ADD} if $eumm_version < 6.46;
+ delete $params{LICENSE} if $eumm_version < 6.31;
+
+ WriteMakefile(%params);
+}
+