App::SmokeBrew::BuildPerl - build and install a particular version of Perl
use strict; use warnings; use App::SmokeBrew::BuildPerl; my $bp = App::SmokeBrew::BuildPerl->new( version => '5.12.0', builddir => 'build', prefix => 'prefix', skiptest => 1, verbose => 1, perlargs => [ '-Dusemallocwrap=y', '-Dusemymalloc=n' ], ); my $prefix = $bp->build_perl(); print $prefix, "\n";
App::SmokeBrew::BuildPerl encapsulates the task of configuring, building, testing and installing a perl executable ( and associated core modules ).
Creates a new App::SmokeBrew::BuildPerl object. Takes a number of options.
A required attribute, this is the version of perl to install. Must be a valid perl version.
prefix = /home/cpan/pit/rel perls will be installed as /home/cpan/pit/perl-5.12.0, /home/cpan/pit/perl-5.10.1, etc.
Optional boolean attribute, which defaults to 0, indicates whether the testing phase of the perl installation (
make test) should be skipped or not.
Optional attribute, takes an arrayref of perl configuration flags that will be passed to
Configure. There is no need to specify
-Dusedevelas the module handles these for you.
perlopts => [ '-Dusethreads', '-Duse64bitint' ],
Optional boolean attribute, which defaults to 0, indicates whether we should produce verbose output.
Optional boolean attribute, which defaults to 0, indicates whether we should cleanup files that we produce under the
This is an optional boolean attribute. Usually
manpages that are generated by the perl installation are removed. Specify this option if you wish the
manpages to be retained.
Optional attribute to specify the
makeutility to use. Defaults to
makeand you should only have to mess with this on wacky platforms.
This is an optional argument. Specify the URL of a CPAN mirror that should be used for retrieving required files during the build process. This may be a single URL or an arrayref of a number of URLs.
Fetches, extracts, configures, builds, tests (see
skiptest) and installs the
builddiris used for the first five processes. Installation is made into the given
Chris Williams <email@example.com>
This software is copyright (c) 2017 by Chris Williams.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.