Curtis Jewell > Perl-Dist-WiX-1.500002 > Perl::Dist::WiX::Mixin::Support

Perl-Dist-WiX-1.500002.tar.gz

Dependencies

Annotate this POD

Website

# CPAN RT

 New 1 Open 3
View/Report Bugs
Module Version: 1.500002

# NAME

Perl::Dist::WiX::Mixin::Support - Provides support routines for building a Win32 perl distribution.

# VERSION

This document describes Perl::Dist::WiX::Mixin::Support version 1.500002.

# SYNOPSIS

        # This module is not to be used independently.
# It provides methods to be called on a Perl::Dist::WiX object.

# DESCRIPTION

This module provides support methods for copying, extracting, and executing files, directories, and programs for Perl::Dist::WiX.

# METHODS

## dir

        my $dir =$dist->dir(qw(perl bin));

Returns the subdirectory of the image directory with these components in order.

## file

        my $file =$dist->file(qw(perl bin perl.exe));

Returns the filename contained in the image directory with these components in order.

## mirror_url

        my $file =$dist->mirror_url(
'http://www.strawberryperl.com/strawberry-perl.zip',
'C:\strawberry\',
);

Downloads a file from the url in the first parameter to the directory in the second parameter.

## copy_file

        # Copy a file to a directory.
$dist->copy_file( 'C:\strawberry\perl\bin\perl.exe', 'C:\strawberry\perl\lib\' ); # Copy a file to a file.$dist->copy_file(
'C:\strawberry\perl\bin\perl.exe',
'C:\strawberry\perl\lib\perl.exe'
);

# Copy a directory to a directory.
$dist->copy_file( 'C:\strawberry\license\', 'C:\strawberry\text\' ); Copies a file or directory into a directory, or a file to another file. If you are copying a file, the destination file already exists, and the destination file is not writable, the destination is temporarily set to be writable, the copy is performed, and the destination is set to read-only. ## move_file  # Move a file into a directory.$dist->move_file(
'C:\strawberry\perl\bin\perl.exe',
'C:\strawberry\perl\lib\'
);

# Move a file to a file.
$dist->move_file( 'C:\strawberry\perl\bin\perl.exe', 'C:\strawberry\perl\lib\perl.exe' ); # Move a directory to a directory.$dist->move_file(
'C:\strawberry\text\'
);

Moves a file or directory into a directory, or a file to another file.

        my $dir =$dist->push_dir($dist->image_dir(), qw(perl bin)); Changes the current directory to the location specified by the components passed in. When the object that is returned (a File::pushd object) is destroyed, the current directory is changed back to the previous value. ## execute_build $dist->execute_build('install');

Executes a Module::Build script with the options given (which can be empty).

        $dist->execute_make('install'); Executes a ExtUtils::MakeMaker-generated makefile with the options given (which can be empty) using the dmake being installed. ## execute_perl $self->execute_perl('Build.PL', 'INSTALLDIR=vendor');

Executes a perl script (given in the first parameter) with the options given using the perl being installed.

        $self->execute_any('dmake'); Executes a program, saving the STDOUT and STDERR in the files specified by debug_stdout() and debug_stderr(). ## extract_archive $dist->extract_archive($archive,$to);

Extracts an archive file (set in the first parameter) to a specified directory (set in the second parameter).

The archive file must be a .tar.gz, .tar.bz2, .tar.xz, or .zip file.

        $dist->make_path('perl\bin'); Creates a path if it does not already exist. The path passed in is converted to an absolute path using File::Spec::Functions::rel2abs() before creation occurs. ## remake_path $dist->remake_path('perl\bin');

Creates a path, removing all the files in it if the path already exists.

The path passed in is converted to an absolute path using File::Spec::Functions::rel2abs() before creation occurs.

        $dist->remove_path('perl\bin'); Removes a path, removing all the files in it if the path already exists. The path passed in is converted to an absolute path using File::Spec::Functions::rel2abs() before deletion occurs. ## make_relocation_file $dist->make_relocation_file('strawberry_merge_module.reloc.txt');

\$dist->make_relocation_file('strawberry_ui.reloc.txt',
'strawberry_merge_module.reloc.txt');

Creates a file to be input to relocation.pl.

The first file is created, and it includes all files in the .source file that actually exist, and adds all .packlist files that are not already being processed for relocation in files after the first.

If there is no second parameter, the first file will include all .packlist files existing to that point.

# SUPPORT

Bugs should be reported via the CPAN bug tracker at

http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Perl-Dist-WiX

For other issues, contact the author.

# AUTHOR

Curtis Jewell <csjewell@cpan.org>