NAME

Perl::Dist::WiX::BuildPerl - 4th generation Win32 Perl distribution builder

VERSION

This document describes Perl::Dist::WiX::BuildPerl version 1.090.

DESCRIPTION

This module provides the routines that Perl::Dist::WiX uses in order to build Perl itself.

SYNOPSIS

# This module is not to be used independently.

INTERFACE

install_cpan_upgrades

The install_cpan_upgrades method is provided to upgrade all the modules that were installed with Perl that were not upgraded by the install_perl_toolchain subroutine.

Returns true or throws an exception.

This is recommended to be used as a task in the tasklist, and is in the default tasklist after the "perl toolchain" is installed.

install_perl

The install_perl method is a minimal routine provided to call the correct install_perl_* routine for the version of perl being created.

Returns true (technically, the object that called it), or throws an exception.

This is recommended to be used as a task in the tasklist, and is in the default tasklist after the "c toolchain" is installed.

install_perl_* (* = 589, 5100, or 5101)

$self->install_perl_5100;

The install_perl_* method provides a simplified way to install Perl into the distribution.

It takes care of calling install_perl_bin with the standard parameters.

Returns true, or throws an exception on error.

install_perl_bin

$self->install_perl_bin(
  name       => 'perl',
  dist       => 'RGARCIA/perl-5.10.0.tar.gz',
  unpack_to  => 'perl',
  license    => {
	  'perl-5.10.0/Readme'   => 'perl/Readme',
	  'perl-5.10.0/Artistic' => 'perl/Artistic',
	  'perl-5.10.0/Copying'  => 'perl/Copying',
  },
  install_to => 'perl',
);

The install_perl_bin method takes care of the detailed process of building the Perl binary and installing it into the distribution.

A short summary of the process would be that it downloads or otherwise fetches the named package, unpacks it, copies out any license files from the source code, then tweaks the Win32 makefile to point to the specific build directory, and then runs make/make test/make install. It also registers some environment variables for addition to the Inno Setup script.

It is normally called directly by install_perl_* rather than directly from the API, but is documented for completeness.

It takes a number of parameters that are sufficiently detailed above.

Returns true (after 20 minutes or so) or throws an exception on error.

install_perl_toolchain

The install_perl_toolchain method is a routine provided to install the "perl toolchain": the modules required for CPAN (and CPANPLUS on 5.10.x versions of perl) to be able to install modules.

Returns true (technically, the object that called it), or throws an exception.

This is recommended to be used as a task in the tasklist, and is in the default tasklist after the perl interpreter is installed.

DIAGNOSTICS

See Perl::Dist::WiX::Diagnostics for a list of exceptions that this module can throw.

BUGS AND LIMITATIONS (SUPPORT)

Bugs should be reported via:

1) The CPAN bug tracker at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Perl-Dist-WiX if you have an account there.

2) Email to <bug-Perl-Dist-WiX@rt.cpan.org> if you do not.

For other issues, contact the topmost author.

AUTHORS

Curtis Jewell <csjewell@cpan.org>

Adam Kennedy <adamk@cpan.org>

SEE ALSO

Perl::Dist, Perl::Dist::WiX, http://ali.as/, http://csjewell.comyr.com/perl/

COPYRIGHT AND LICENSE

Copyright 2009 Curtis Jewell.

Copyright 2008 - 2009 Adam Kennedy.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this distribution.