NAME
App::Packer - pack applications in a single executable file
DESCRIPTION
App::Packer packs perl scripts and all of their dependencies inside an executable.
RETURN VALUES
All methods return a false value on failure, unless otherwise specified.
METHODS
new
my $packer = App::Packer->new( frontend => class,
backend => class );
Creates a new App::Packer
instance, using the given classes as frontend and backend.
'frontend' defaults to App::Packer::Frontend::ModuleInfo
, 'backend' to App::Packer::Backend::DemoPack
. You need to use My::Module;
if you pass My::Module
as frontend or backend, unless you use the default value.
Currently known frontends are App::Packer::Frontend::ModuleInfo
(default, distributed with App::Packer
), and Module::ScanDeps
.
Currently known backends are App::Packer::Backend::DemoPack
(default, distributed with App::Packer
), and App::Packer::Backend::PAR
.
set_file
$packer->set_file( 'path/to/file' );
Sets the file name of the script to be packed.
write
my $file = $packer->write( 'my_executable' );
Writes the executable file; the file name is just the basename of the file: $Config{_exe} will be appended, and the file will be made executable (via chmod 0755).
The return value is the file name that was actually created.
set_options
$packer->set_options( frontend => { option1 => value1,
... },
backend => { option9 => value9,
... },
);
Sets the options for frontend and backend; see the documentation for App::Packer::Frontend
and App::Packer::Backend
for details.
SEE ALSO
App::Packer::Frontend, App::Packer::Backend.
AUTHOR
Mattia Barbon <mbarbon@dsi.unive.it>