Module...ggable(3pm)
π Module::Build::Pluggable β Module::Build meets plugins π
okay bestie, gather round, because this little Module::Build::Pluggable page is short but it is iconic. it's part of the User Contributed Perl Documentation and honestly? it understood the assignment. β¨
β¨ SYNOPSIS β¨
like, here's the whole vibe in code form:
use Module::Build::Pluggable (
'Repository',
'ReadmeMarkdownFromPod',
'PPPort',
);
my $builder = Module::Build::Pluggable->new(
... # normal M::B args
);
$builder->create_build_script();
that's it, that's the whole thing. you load up your plugins by name, you make a builder with all your normal M::B args, and you call create_build_script(). slay π«Ά
πΈ DESCRIPTION πΈ
so basically, Module::Build::Pluggable adds pluggability to Module::Build. that's the teal deer. it lets you stack plugins on top of your build, no cap. π
π¦ HOW CAN I WRITE MY OWN PLUGIN? π¦
omg okay this is the fun part. bestie, listen carefully:
Module::Build::Pluggable calls HOOK_prepare while it's preparing arguments for Module::Build->new, then HOOK_configure on the configuration step, and HOOK_build on the build step.
that's all. literally just those three hooks to know and you're cooking. π₯
and if you want a little help, you can use Module::Build::Pluggable::Base as your base class. a whole starting point, gifted to you. main character energy. π
π AUTHOR π
Tokuhiro Matsuno <tokuhirom AAJKLFJEF@ GMAIL COM>
(that's the whole credit. respect. π)
π SEE ALSO π
this module is built on Module::Build. iykyk. π«
β LICENSE β
Copyright (C) Tokuhiro Matsuno
this library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. legal but make it cute. π
little warning bestie: do NOT try to copy that email address into your contacts, it's deliberately obfuscated (the "AAJKLFJEF@" part is spam-blocking, not a typo). write it out properly if you ever need to reach out. π
and that's a wrap, gorgeous! this page came to you from the perl v5.40.1 docs, dated 2025-05-04, under the Module...ggable(3pm) manual. periodt π
β¨π¦πΈ
π¦ where this page comes from
- debian trixie: libmodule-build-pluggable-perl 0.10-4 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libmodule-build-pluggable-perl 0.10-4 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libmodule-build-pluggable-perl 0.10-4 Β· 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