Dist::Zilla::Plugin::AssertOS - Require that our distribution is running on a particular OS
version 0.08
# In dist.ini - It is important that AssertOS follows MakeMaker or # ModuleBuild [MakeMaker] [AssertOS] os = Linux os = FreeBSD os = cygwin
The resultant distribution will die at Makefile.PL unless the platform the code is running on is Linux, FreeBSD or Cygwin.
Makefile.PL
Dist::Zilla::Plugin::AssertOS is a Dist::Zilla plugin that integrates Devel::AssertOS so that CPAN authors may easily stipulate which particular OS environments their distributions may be built and installed on.
The author specifies which OS or OS families are supported. The necessary Devel::AssertOS files are copied to the inc/ directory and Makefile.PL or Build.PL is mungled to include the necessary incantation.
inc/
Build.PL
On the module user side, the bundled inc/ Devel::AssertOS determines whether the current environment is supported or not and will die accordingly.
As this plugin mungles the Makefile.PL/Build.PL it is imperative that it is specified in dist.ini AFTER [MakeMaker] or [ModuleBuild].
dist.ini
[MakeMaker]
[ModuleBuild]
This plugin also automagically adds the no_index metadata so that inc/ is excluded from PAUSE indexing. If you use Dist::Zilla::Plugin::MetaNoIndex, there may be conflicts.
no_index
os
Specify as many times as wanted the OS that you wish your distribution to work with. See Devel::AssertOS and Devel::CheckOS for what may be given.
bundle
If set to c<0> Devel::AssertOS will not be bundled in the distribution. It will instead be added to configure_requires in the META files so CPAN clients can install it before running Makefile.PL. The default is 1, so Devel::AssertOS is bundled in inc.
configure_requires
META
1
inc
These are required by the roles that this plugin uses.
mvp_multivalue_args
gather_files
Required by Dist::Zilla::Role::FileGatherer.
setup_installer
Required by Dist::Zilla::Role::InstallTool.
metadata
Required by Dist::Zilla::Role::MetaProvider.
Based on use-devel-assertos by David Cantrell
Build.PL support contributed by Yanick Champoux
Thanks to Ricardo Signes, not only for Dist::Zilla, but for explaining Dist::Zilla::Role::InstallTool's place in the build process. This made this plugin possible.
Dist::Zilla
Devel::AssertOS
Devel::CheckOS
Chris Williams <chris@bingosnet.co.uk>
This software is copyright (c) 2017 by Chris Williams and David Cantrell.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Dist::Zilla::Plugin::AssertOS, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Dist::Zilla::Plugin::AssertOS
CPAN shell
perl -MCPAN -e shell install Dist::Zilla::Plugin::AssertOS
For more information on module installation, please visit the detailed CPAN module installation guide.