ExtUtil...CPANfile(3)
π NAME π
Okay so welcome to the ExtUtils::MakeMaker::CPANfile(3) page, bestie β this is User Contributed Perl Documentation, and the module is ExtUtils::MakeMaker::CPANfile β cpanfile support for EUMM. That's the whole vibe. π
β¨ SYNOPSIS β¨
Here's the setup, and yes you're gonna slay it:
# 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';
};
πΈ DESCRIPTION πΈ
So ExtUtils::MakeMaker::CPANfile literally loads the cpanfile in your distribution and modifies the parameters for WriteMakefile in your Makefile.PL. Just use it instead of ExtUtils::MakeMaker β which should be loaded internally β and have your cpanfile ready, bestie. π«Ά
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. Iconic behavior, honestly. β¨
π LIMITATION π
Yeah, there are a couple of caveats β don't come for me. π
π complex version ranges π
As of this writing, complex version ranges are simply ignored. That's it. They're just ignored. π
ποΈ dynamic config ποΈ
Strictly speaking, cpanfile is a Perl script, and it 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). π
π FOR MODULE AUTHORS π
Listen up, module authors π β though the minimum version requirement of ExtUtils::MakeMaker is arbitrarily 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. No cap. π«Ά
π LICENSE π
Copyright (C) Kenichi Ishigaki.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
π«Ά AUTHOR π«Ά
Kenichi Ishigaki β ishigaki@cpan.org π
Later, bestie! This page is from perl v5.42.0, dated 2018-12-29, and the footer says ExtUtil...CPANfile(3). Mwah πβ¨
π¦ where this page comes from
- opensuse-leap 16.0: perl-ExtUtils-MakeMaker-CPANfile 0.09-bp160.1.4 Β· Artistic-1.0 OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms