Чтв Окт 22 05:12:09 2009, REHSACK писал:
Show quoted text> This isn't true - it should be put to test requirements, but neither
> build requirements nor test requirements are supported by
> ExtUtils::MakeMaker.
>
> So unless ExtUtils::MakeMaker improves such support, I need it to leave
> where it is.
It is already supported in EU::MM 6.56. I used my utility eumm-upgrade on your Makefule.PL and done some work manually. Patch attached.
--
Alexandr Ciornii,
http://chorny.net
--- Makefile.PL.bak 2009-11-20 22:31:06.000000000 +0200
+++ Makefile.PL 2009-12-29 23:31:52.296875000 +0200
@@ -1,7 +1,8 @@
# -*- perl -*-
+use 5.006; #warnings.pm used
use strict;
-require ExtUtils::MakeMaker;
+use ExtUtils::MakeMaker;
eval { require SQL::Statement; };
@@ -49,30 +50,56 @@
}
}
-my %opts = (
- 'NAME' => 'SQL::Statement',
- 'VERSION_FROM' => 'lib/SQL/Statement.pm',
- 'dist' => {
- 'SUFFIX' => ".gz",
- 'DIST_DEFAULT' => 'manifest tardist',
- 'COMPRESS' => "gzip -9vf"
- },
- 'PREREQ_PM' => {
- 'Carp' => '0',
- 'Clone' => '0.30',
- 'Data::Dumper' => '0',
- 'Params::Util' => '1.00',
- 'Scalar::Util' => '1.0',
-
- # to be true, these are TEST_DEPENDS
+WriteMakefile1(
+ MIN_PERL_VERSION => '5.006',
+ META_MERGE => {
+ resources => {
+ #repository => 'URL to repository here',
+ },
+ },
+ 'NAME' => 'SQL::Statement',
+ 'VERSION_FROM' => 'lib/SQL/Statement.pm',
+ 'dist' => {
+ 'SUFFIX' => ".gz",
+ 'DIST_DEFAULT' => 'manifest tardist',
+ 'COMPRESS' => "gzip -9vf"
+ },
+ 'PREREQ_PM' => {
+ 'Carp' => '0',
+ 'Clone' => '0.30',
+ 'Data::Dumper' => '0',
+ 'Params::Util' => '1.00',
+ 'Scalar::Util' => '1.0',
+ },
+ LICENSE => 'perl',
+ BUILD_REQUIRES => {
'Test::Simple' => '0.86',
# means: DBI >= 1.609
'DBD::File' => '0.37',
- },
- LICENSE => 'perl',
- );
-if ( $ExtUtils::MakeMaker::VERSION >= 5.43 )
-{
- $opts{'AUTHOR'} = 'Jeff Zucker <jeff@vpservices.com>, Jens Rehsack <rehsack@cpan.org>';
+ },
+ AUTHOR => 'Jeff Zucker <jeff@vpservices.com>, Jens Rehsack <rehsack@cpan.org>',
+);
+
+sub WriteMakefile1 { #Written by Alexandr Ciornii, version 0.21. 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{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;
+ delete $params{AUTHOR} if $] < 5.005;
+ delete $params{ABSTRACT_FROM} if $] < 5.005;
+ delete $params{BINARY_LOCATION} if $] < 5.005;
+
+ WriteMakefile(%params);
}
-ExtUtils::MakeMaker::WriteMakefile(%opts);
+