Chris Williams > smokebrew > App::SmokeBrew::BuildPerl

Download:
smokebrew-0.36.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.36   Source  

NAME ^

App::SmokeBrew::BuildPerl - build and install a particular version of Perl

SYNOPSIS ^

  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";

DESCRIPTION ^

App::SmokeBrew::BuildPerl encapsulates the task of configuring, building, testing and installing a perl executable ( and associated core modules ).

CONSTRUCTOR ^

new

Creates a new App::SmokeBrew::BuildPerl object. Takes a number of options.

version

A required attribute, this is the version of perl to install. Must be a valid perl version.

builddir

A required attribute, this is the working directory where builds can take place. It will be coerced into a Path::Class::Dir object by MooseX::Types::Path::Class.

prefix

A required attribute, this is the prefix of the location where perl installs will be made, it will be coerced into a Path::Class::Dir object by MooseX::Types::Path::Class.

example:

  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.
skiptest

Optional boolean attribute, which defaults to 0, indicates whether the testing phase of the perl installation ( make test ) should be skipped or not.

perlopts

Optional attribute, takes an arrayref of perl configuration flags that will be passed to Configure. There is no need to specify -Dprefix or -Dusedevel as the module handles these for you.

  perlopts => [ '-Dusethreads', '-Duse64bitint' ],
verbose

Optional boolean attribute, which defaults to 0, indicates whether we should produce verbose output.

noclean

Optional boolean attribute, which defaults to 0, indicates whether we should cleanup files that we produce under the builddir or not.

nozapman

This is an optional boolean attribute. Usually man pages that are generated by the perl installation are removed. Specify this option if you wish the man pages to be retained.

make

Optional attribute to specify the make utility to use. Defaults to make and you should only have to mess with this on wacky platforms.

mirrors

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.

METHODS ^

build_perl

Fetches, extracts, configures, builds, tests (see skiptest) and installs the perl executable.

The builddir is used for the first five processes. Installation is made into the given prefix directory.

AUTHOR ^

Chris BinGOs Williams

LICENSE ^

Copyright © Chris Williams

This module may be used, modified, and distributed under the same terms as Perl itself. Please see the license that came with your Perl distribution for details.

SEE ALSO ^

App::perlbrew

Module::CoreList

syntax highlighting: