Module BaseSetup

module BaseSetup: sig .. end

Entry points for 'setup.ml'


type std_args_fun = ctxt:OASISContext.t -> OASISTypes.package -> OASISTypes.arg array -> unit 
type ('a, 'b) section_args_fun = OASISTypes.name *
(ctxt:OASISContext.t ->
OASISTypes.package ->
OASISTypes.common_section * 'a -> OASISTypes.arg array -> 'b)
type t = {
   configure : std_args_fun;
   build : std_args_fun;
   doc : (OASISTypes.doc, unit) section_args_fun list;
   test : (OASISTypes.test, float) section_args_fun list;
   install : std_args_fun;
   uninstall : std_args_fun;
   clean : std_args_fun list;
   clean_doc : (OASISTypes.doc, unit) section_args_fun list;
   clean_test : (OASISTypes.test, unit) section_args_fun list;
   distclean : std_args_fun list;
   distclean_doc : (OASISTypes.doc, unit) section_args_fun list;
   distclean_test : (OASISTypes.test, unit) section_args_fun list;
   package : OASISTypes.package;
   oasis_fn : string option; (*

Filename of _oasis that matches the package field.

*)
   oasis_version : string; (*

OASIS version that has generated this structure.

*)
   oasis_digest : Stdlib.Digest.t option; (*

Digest of _oasis that matches the package field.

*)
   oasis_exec : string option; (*

Name of oasis executable to use, only for testing.

*)
   oasis_setup_args : string list; (*

Args to use when updating the setup.ml.

*)
   setup_update : bool; (*

Are we allowed to update the setup.ml (eq. of -setup-update weak).

*)
}
val configure : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the configure step.

val build : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the build step.

val doc : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the doc step: build all documents.

val test : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the test step: run all tests.

val install : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the install step.

val uninstall : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the uninstall step.

val clean : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the clean step.

val distclean : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the distclean step.

val reinstall : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run the reinstall step: deinstall and install.

val all : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Run all steps: configure, build, doc, test and install.

val version : ctxt:OASISContext.t -> t -> OASISTypes.arg array -> unit

Display OASIS version used to generate this setup.ml.

val setup : t -> unit

The first function called when running 'setup.ml'.

val default_oasis_fn : OASISTypes.host_filename

Default filename for '_oasis'.

val default_filename : OASISTypes.host_filename

Default filename for 'setup.ml'. Not exported

val find : OASISPlugin.context_act -> OASISFileTemplate.template

Get template 'setup.ml' file out of the plugin context. Not exported.

val of_package : ?ctxt:OASISContext.t ->
?oasis_fn:OASISTypes.host_filename ->
?oasis_exec:OASISTypes.host_filename ->
?oasis_setup_args:string list ->
setup_update:bool ->
OASISSetupUpdate.t ->
OASISTypes.package -> OASISPlugin.context_act * t

Create t and plugin context from an OASIS package and the matching _oasis. Not exported.