Module OASISLibrary


module OASISLibrary: sig .. end
SourceRepository section
Author(s): Sylvain Le Gall

val generated_unix_files : ctxt:OASISContext.t ->
OASISTypes.common_section * OASISTypes.build_section * OASISTypes.library ->
(string -> bool) ->
(unit -> bool) ->
(unit -> string) -> (unit -> string) -> OASISTypes.unix_filename list list
generated_unix_files ~ctxt (cs, bs, lib) source_file_exists is_native ext_lib ext_dll Compute all files expected by a build of the library. For each file a list of alternatives is provided.

type group_t =
| Container of OASISTypes.findlib_name * group_t list
| Package of (OASISTypes.findlib_name * OASISTypes.common_section *
OASISTypes.build_section * OASISTypes.library * group_t list)
Library groups are organized in trees.
val group_libs : OASISTypes.package -> group_t list
Compute groups of libraries, associate root libraries with a tree of its children. A group of libraries is defined by the fact that these libraries has a parental relationship and must be isntalled together, with the same META file.
type library_name = OASISTypes.name 
val findlib_name_map : OASISTypes.package ->
(string option * OASISTypes.findlib_name) OASISUtils.MapString.t
Compute internal to findlib library matchings, including subpackage and return a map of it.
val findlib_of_name : ?recurse:bool ->
(string option * OASISTypes.findlib_name) OASISUtils.MapString.t ->
library_name -> string
Return the findlib name of the library without parents
val name_findlib_map : OASISTypes.package -> library_name OASISUtils.MapString.t
Compute findlib to internal library matching.
val findlib_of_group : group_t -> OASISTypes.findlib_name
Return the findlib root name of a group, it takes into account containers. So the return group name is the toplevel name for both libraries and theirs containers.
val root_of_group : group_t ->
OASISTypes.common_section * OASISTypes.build_section * OASISTypes.library
Return the root library, i.e. the first found into the group tree that has no parent.
val schema : (OASISTypes.common_section * OASISTypes.build_section * OASISTypes.library)
OASISSchema.t
Schema for the section. Not exported.