From 169bd0f086f56e4bb1f45605ca544388ceb061fd Mon Sep 17 00:00:00 2001 From: Alexandr Ciornii Date: Mon, 21 Apr 2014 05:58:02 +0300 Subject: [PATCH] better META.* --- Makefile.PL | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/Makefile.PL b/Makefile.PL index 2f6a848..3717a5f 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -1,3 +1,4 @@ +use 5.008; use strict; use warnings; @@ -65,7 +66,12 @@ print $out_pl "\n1;\n"; close $out_h; close $out_pl; -WriteMakefile( +WriteMakefile1( + META_MERGE => { + resources => { + repository => 'https://github.com/dland/BSD-Sysctl.git', + }, + }, NAME => $module_name, AUTHOR => 'David Landgren', ABSTRACT_FROM => 'Sysctl.pm', @@ -74,12 +80,44 @@ WriteMakefile( PREREQ_PM => { 'XSLoader' => 0 }, + TEST_REQUIRES => { + 'Test::More' => 0, + }, clean => { FILES => 'bsd-sysctl.h bsd-sysctl.pl', }, MIN_PERL_VERSION => '5.8.0', ); + +sub WriteMakefile1 { #Compatibility code for old versions of EU::MM. Written by Alexandr Ciornii, version 0.23. 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); +} + __DATA__ # # List of constant definitions.