Main Site Contents Up Previous Next

Global Preferences

Cava Packager uses Global Preferences to provide defaults for new projects.

The preferences dialog can by opened with:

File -> Preferences

New Project Defaults


Copyright

The Copyright notice is embedded in your executable and accessible at run time using Cava::Packager functions. On Windows it is also written to the executable version information structure.

The text can contain two replacement variables if you wish:

CURRENTYEAR This text will be replaced when packaged with the current year.

VENDORNAME This text will be replaced when packaged with the value from the 'Vendor' text below.

For example, the value of this field used to package Cava Packager is:

Copyright © 2006 - CURRENTYEAR VENDORNAME

Vendor

The Vendor details are embedded in your executable and accessible at run time using Cava::Packager functions. On Windows they are also written to the executable version information structure.

Trademarks

The Trademarks details are embedded in your executable and accessible at run time using Cava::Packager functions. On Windows they are also written to the executable version information structure.

Comments

The comments are embedded in your executable and accessible at run time using Cava::Packager functions. On Windows they are also written to the executable version information structure.

Code Package Method

Cava Packager can package your Perl code either as plaintext or as masked text that is retrieved using a source filter. The choice you make here will be the default for new projects. Within projects you can always override the default on a file, directory, or whole project basis.

Module Package Location

Cava Packager can include your modules in one of two ways. Either as part of a Virtual @INC folder where the directory structure is flattened and files cannot be retrieved by their original names or in a Standard @INC folder where the expected directory structure and file naming system is maintained. Some modules search for files by traversing an expected directory structure and the simplest method of packaging these modules in a working state is to preserve the directory structure in a Standard @INC folder. The choice you make here will be the default for new projects. Within projects you can always override the default on a file, directory, or whole project basis.

Absolute Path Rule

Select whether Cava Packager includes scripts or modules that your scanned code or modules use via a 'do' or 'require' statement with an absolute path.

For example, if you have a script named 'c:\myproject\myscripts\runscript.pl' and you call this from your main script with:

do 'c:\myproject\myscripts\runscript.pl';

then you have the option to choose whether Cava Packager should include the file 'runscript.pl' within your package.

Using 'do' or 'require' with an absolute path can have unexpected results. In the above example, if you run your package executable on a machine where a file named 'c:\myproject\myscripts\runscript.pl' exists, then the perl file on the machine will be loaded via 'do'. If the file 'c:\myproject\myscripts\runscript.pl' does not exist, then the packaged version distributed with your executable will be used.

You can avoid these problems simply by not using absolute paths in your code.

For example, if your normal perl code runs from the directory 'c:\myproject' and therefore 'c:\myproject' is always in your code's @INC, then you can simply change your 'do' statement to:

do 'myscripts\runscript.pl';

When packaging, just add 'c:\myproject' to your module search paths. Then your packaged executable will always load the packaged runscript.pl.

You can always override this default within an individual project.

Executable

Select a Perl executable to determine the installation of Perl that you will use to package your scripts.You can always override this default within an individual project. You can check the properties of the selected perl by using:

Display properties of selected Perl

Extra Module Search Paths

When scanning for your script dependencies, Cava Packager will search in the @INC array of the selected Perl executable. You can add additional directories to search here. Additional directories are always searched before directories in the @INC array and in the order specified in this dialog.

Add a new directory to the search paths.
Remove the selected directory from the search paths.
Move the selected directory UP in the search order.
Move the selected directory DOWN in the search order.


Application Defaults


Automatic Updates

To ensure that your global project rules are the latest available versions, Cava Packager will check for updates on application startup. You can enable or disable this behaviour by checking or unchecking this option.

When connecting to the server to check for rules, Cava Packager will use the environment variable HTTP_PROXY if present.

External Patch Executable

You can create patches for modules using Module Rule Patches. By default when applying patches Cava Packager uses an internal patch mechanism based on Text::Patch. If you wish yo can select some external patch executable to use instead.

The external patch executable must accept the following calling convention:

patchexec -l --input=/patchfile.patch --output=/outputfile.pm originalfile.pm





Contents Up Previous Next


Cava Packager Copyright © 2006-2012 Mark Dootson