Main Site Contents Up Previous Next

Project Rule

The Project Rule node allows you to write rules that apply to this project alone in much the same way as you can attach rules to modules via the Global Module Rules application node.

The Project rules apply to this project alone. If you define a custom script for this project, that will be the first custom script that is run during your project scan. Cava packager adds an empty placeholder module, Cava::Project, as the first module or script in your scan.

Directory Slurp Tab

You can specify additional sub directories (relative to entries in the @INC array) that will be 'slurped' for modules and perl files or data.

Additional Files Tab

You can specify additional data files to include. You specify relative paths and the @INC array and any additional search paths will be searched at scan time.

Custom Script Tab

You can specify a custom script that will run first every time that you scan the project. The script has exactly the same format as that used in Global Module Rules.

Some of the commands available to custom scripts do not make sense when used in the context of the project as whole rather than in the context of a specific module, but this should be obvious from the purpose of the method. For example, $rule->get_dependent_library($libprefix) makes no sense in the context of the placeholder Cava::Project module which has no xs part.

You can integrate your usage of the Project Rule with the Cava::Global module rule for control over your project and global custom scanning scripts.

Contents Up Previous Next

Cava Packager Copyright © 2006-2012 Mark Dootson