ExtUtils::MakeMaker::CPANfile - cpanfile support for EUMM
# Makefile.PL
use ExtUtils::MakeMaker::CPANfile;
WriteMakefile(
NAME => 'Foo::Bar',
AUTHOR => 'A.U.Thor <author@cpan.org>',
);
# cpanfile
requires 'ExtUtils::MakeMaker' => '6.17';
on test => sub {
requires 'Test::More' => '0.88';
};
ExtUtils::MakeMaker::CPANfile loads "cpanfile"
in your distribution and modifies parameters for
"WriteMakefile" in your Makefile.PL. Just
use it instead of ExtUtils::MakeMaker (which should be loaded internally), and
prepare "cpanfile".
As of version 0.03, ExtUtils::MakeMaker::CPANfile also removes
WriteMakefile parameters that the installed version of ExtUtils::MakeMaker
doesn't know, to avoid warnings.
As of this writing, complex version ranges are simply ignored.
Strictly speaking, "cpanfile" is a Perl
script, and may have some conditions in it. That said, you don't need to run
Makefile.PL to determine prerequisites in most cases. Hence, as of 0.06,
ExtUtils::MakeMaker::CPANfile sets
"dynamic_config" to false by default. If you
do need a CPAN installer to run Makefile.PL to customize prerequisites
dynamically, set "dynamic_config" to true
explicitly (via META_ADD/META_MERGE).
Though the minimum version requirement of ExtUtils::MakeMaker is arbitrary set
to 6.17 (the one bundled in Perl 5.8.1), you need at least EUMM 6.52 (with
CONFIGURE_REQUIRES support) when you release a distribution.
Copyright (C) Kenichi Ishigaki.
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
Kenichi Ishigaki <ishigaki@cpan.org>