Perl::Maker - Make a Custom Perl with Modules
> perl-maker --make ingy-perl-maker.yaml > make install > make perlbrew > make debian > make dmg > make rpm > make msi
This software is pre-alpha quality. Don't use it yet.
Perl::Maker creates a custom Perl installation, complete with an entire set of modules, based on a simple YAML specification. You can share the installation as a system package (like Debian for instance). You can also share the YAML specification, or use an existing one from somebody else.
The point of Perl::Maker is to make usable Perl installations that are shareable. In many situations (especially in production environments), it is critical not just to require that Perl and some modules to be installed, but specific versions of things that are configured a specific way.
With Perl::Maker, you specify all your requirements in a clean and simple YAML file. Perl::Maker will turn this into a Makefile. Then you simply invoke
make to do all the necessary work. Since the Makefile targets know all their dependencies, when you make small changes to the YAML file, only the minimum work to accomplish your goals will be performed.
Perl::Maker installs a command line tool called
perl-maker. This section explains the commands you can use.
- perl-maker --new filename.yaml
This will create a sample Perl::Maker YAML specification for you.
- perl-maker --make filename.yaml
This will generate a
Makefilefrom the YAML specification.
This section describes the targets that you can use in the
Makefile, to do various tasks.
- make install
This will build everything and install it for you.
- make debian
This will make a Debian package that you can share and install on Debian based systems.
- make dmg
This will make a Mac OS X distribution.
- make perlbrew
Build and install in your perlbrew location.
Ingy döt Net <email@example.com>
Copyright (c) 2011. Ingy döt Net.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2 POD Errors
The following errors were encountered while parsing the POD:
- Around line 64:
Unknown directive: =enccoding
- Around line 151:
Non-ASCII character seen before =encoding in 'döt'. Assuming UTF-8