Plugins creation and management
The whole module is not exported.
OCaml module embedded code.
#
chng_moduls
| : modul list | ; | (* | OCaml module to be added to setup file | *) |
#
chng_main
| : 'a ODNFunc.func | ; | (* | Main function to be added to BaseSetup.t (i.e. the one that that really do something: configure, build, test...) | *) |
#
chng_clean
| : 'b ODNFunc.func option | ; | (* | Function to be called when cleaning | *) |
#
chng_distclean
| : 'b ODNFunc.func option | ; | (* | Function to be called when distcleaning | *) |
Describe setup file changes.
#
ctxt
| : OASISContext.t | ; | (* | Global context. | *) |
#
update
| : OASISSetupUpdate.t | ; | (* | What is the value given to -setup-update ? | *) |
#
error
| : bool | ; | (* | Are there errors? | *) |
#
files
| : OASISFileTemplate.templates | ; | (* | Generated files. | *) |
#
other_actions
| : (unit -> unit) list | ; | (* | Extra actions. | *) |
Describe context when applying a plugin.
Generator for sections (document, test).
Generator with a package argument only (build, install).
Base types to build plugin: register fields, action, generators...
Register a quickstart completion for this plugin
Get quickstart completion
Call generator for provided plugin
Register a generator for a section, to store data of a plugin
Call generator for provided plugin on a section
Register general help. We only rely on plugin name and version. The replacement field will be computed using the kind of the plugin.
This module manage plugin that can handle configure step.
This module manage plugin that can handle build step.
This module manage plugin that can handle building documents.
This module manage plugin that can handle running tests.
This module manage plugin that can handle install/uninstall steps.
This module manage plugin that can handle configure step.
Check that a field name has the form to match a plugin. Don't check that the plugin exists. This functions help to ignore plugin fields.
Use a builtin plugin (i.e. version = OASIS version).
Define an error in context. It doesn't stop processing, it just sets the CUSTOM(context_act) .error value.
Get a list of plugins from a string
Compare plugin, caseless for name and don't take into account version if one is not set.
Test equality for plugins, a special case of plugin_compare.
data_new_property plg
Create a property that can store plugin data. Beware
that the the couple (plg, purpose)
must be unique.