ExtUti...Develop(3pm)
β¨ NAME β¨
okay so this is ExtUtils::MakeMaker::Dist::Zilla::Develop β it makes bare-bones Makefile.PL files for use with dzil. that's the whole vibe bestie π
πΈ VERSION πΈ
version 0.03 β yeah she's a lil vintage but she WORKS
π SYNOPSIS π
# Makefile.PL
use ExtUtils::MakeMaker::Dist::Zilla::Develop;
WriteMakefile(NAME => 'Foo::Bar');
like. that's it. that's the whole thing. iconic honestly π¦
π DESCRIPTION π
okay so let me put you on real quick. Dist::Zilla makes developing modules SO much easier because it generates all kinds of boilerplate files for you, saving authors from having to hand-write them all π which is a slay. BUT. in some cases this actually makes developing more inconvenient, which is giving... irony. the most prominent example of this is with Makefile.PL files β even though the majority of distributions can be hacked on just by editing the files in a source control checkout and using prove for testing, for some distributions that just isn't sufficient. specifically: distributions which use an auto-generated test suite AND distributions which use XS both need special handling at build time before they will function. and with Dist::Zilla, that means running dzil build and rebuilding after every change. which is. tedious! SO tedious. we hate that here π
so this module provides an alternative. create a minimal Makefile.PL in source control which handles just enough functionality for basic development (it can be as minimal as just what is in the SYNOPSIS, but can also contain commands to generate your test suite, for example), and tell Dist::Zilla to replace it with a real Makefile.PL when you're actually ready to build a real distribution. β¨
to do this, make sure you're still using the MakeMaker plugin, either directly or through a pluginbundle like @Basic, and add the exclude_filename = Makefile.PL option to your dist.ini where you use [GatherDir].
in addition, this module also intercepts the install and dist rules in the generated Makefile to run the appropriate Dist::Zilla commands (dzil install and dzil build). this allows users to continue to use the perl Makefile.PL && make && make install set of commands, and have the correct thing continue to happen. no cap, everything just keeps working π
β οΈ heads up bestie: if you're using this module to ease testing of an XS distribution, you'll need to account for your module not containing a$VERSIONstatement (assuming you're using the PkgVersion plugin). to do this, you should use anXSLoaderinvocation similar to this:
BEGIN {
XSLoader::load(
'Foo::Bar',
$Foo::Bar::{VERSION} ? ${ $Foo::Bar::{VERSION} } : ()
);
}
this ensures that the $Foo::Bar::VERSION glob isn't created if it didn't exist initially, since this can confuse XSLoader. fr fr, don't skip this one π«Ά
π¦ BUGS π¦
no known bugs. she's clean. she's thriving. π
please report any bugs to GitHub Issues at <https://github.com/doy/extutils-makemaker-dist-zilla-develop/issues>.
π SEE ALSO π
- ExtUtils::MakeMaker
- Dist::Zilla
β SUPPORT β
you can find this documentation for this module with the perldoc command.
perldoc ExtUtils::MakeMaker::Dist::Zilla::Develop
you can also look for information at:
- MetaCPAN
<https://metacpan.org/release/ExtUtils-MakeMaker-Dist-Zilla-Develop>
- Github
<https://github.com/doy/extutils-makemaker-dist-zilla-develop>
- RT: CPAN's request tracker
<http://rt.cpan.org/NoAuth/Bugs.html?Dist=ExtUtils-MakeMaker-Dist-Zilla-Develop>
- CPAN Ratings
<http://cpanratings.perl.org/d/ExtUtils-MakeMaker-Dist-Zilla-Develop>
π AUTHOR π
Jesse Luehrs <doy@tozt.net> β king behavior honestly
π COPYRIGHT AND LICENSE π
this software is copyright (c) 2014 by Jesse Luehrs.
this is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
and that's a wrap bestie!! πβ¨ this page is from the perl v5.36.0 docs, dated 2022-12-12, and you read the whole thing, which is main character energy. go write your Makefile.PL. i believe in you. periodt ππ¦
π¦ where this page comes from
- debian bookworm: libextutils-makemaker-dist-zilla-develop-perl 0.03-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- debian trixie: libextutils-makemaker-dist-zilla-develop-perl 0.03-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: libextutils-makemaker-dist-zilla-develop-perl 0.03-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libextutils-makemaker-dist-zilla-develop-perl 0.03-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libextutils-makemaker-dist-zilla-develop-perl 0.03-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms