NAME
ExtUtils::Builder::MakeMaker - A MakeMaker consumer for ExtUtils::Builder Plan objects
VERSION
version 0.017
SYNOPSIS
use ExtUtils::MakeMaker;
use ExtUtils::Builder::MakeMaker;
...
WriteMakeFile(
NAME => 'Foo',
VERSION => 0.001,
);
sub MY::make_plans {
my ($self, $planner) = @_;
$planner->load_extension('Some::Module');
... # Add plans to $planner
}
DESCRIPTION
This MakeMaker extension will call your MY::make_plans
method with a ExtUtils::Builder::Planner as argument so that you can add entries to it; these entries will be added to your Makefile. It will also call any .pl
files in /planner
as DSL files, these are run in a new scope so delegates don't leak out. Entries may depend on existing MakeMaker entries and vice-versa. Typically one would make their target a dependency of a MakeMaker entry like pure_all
or dynamic
.
DELEGATES
By default, the following delegates are defined on your planner:
meta
A CPAN::Meta object representing the
META.json
file.distribution
The name of the distribution
version
The version of the distribution
main_module
The main module of the distribution.
release_status
The release status of the distribution (e.g.
'stable'
).perl_path
The path to the perl executable.
config
The ExtUtils::Config::MakeMaker object for this build
is_os(@os_names)
This returns true if the current operating system matches any of the listed ones.
is_os_type($os_type)
This returns true if the type of the OS matches
$os_type
. Legal values areUnix
,Windows
andVMS
.verbose
This is always false.
uninst
The value of the
uninst
command line argument.jobs
This is always
1
.pureperl_only
The value of the
PUREPERL_ONLY
command line argument.
These are the same ones as Dist::Build sets except install_paths
is missing.
AUTHOR
Leon Timmermans <fawaka@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Leon Timmermans.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.