module Lib:sig..end
Defines a library's build products by gathering a set of
unit parts.
typekind =[ `C | `OCaml | `OCaml_pp ]
`OCaml is an OCaml library.`OCaml_pp is an OCaml pre-processing library`C is a C library.val pp_kind : Format.formatter -> kind -> unitpp_kind ppf k prints an unspecified representation of k on
ppf.val kind : [< `Lib ] Assemblage.part -> kindkind p is the kind of p.val byte : [< `Lib ] Assemblage.part -> boolbyte p is true if p can compile to OCaml byte code.val native : [< `Lib ] Assemblage.part -> boolnative p is true if p can compile to native code.val native_dynlink : [< `Lib ] Assemblage.part -> boolnative p is true if p can compile to native dynamically
linked code.val ocaml : [< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Lib ] Assemblage.part optionocaml p is Some p iff p is an `OCaml library.val ocaml_pp : [< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Lib ] Assemblage.part optionocaml_pp p is Some p iff p is `OCaml_pp library.val c : [< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Lib ] Assemblage.part optionc p is Some p iff p is a `C library.val v : ?usage:Assemblage.Part.usage ->
?exists:bool Assemblage.Conf.value ->
?args:Assemblage.Args.t ->
?byte:bool ->
?native:bool ->
?native_dynlink:bool ->
string ->
kind ->
[< `Lib | `Pkg | `Unit ] Assemblage.part list ->
[< Assemblage.part_kind > `Lib ] Assemblage.partv ?byte ?native ?native_dynlink name kind needs is a library
named name of the given kind. needs has the compilation
units us that define the libary, they are integrated. The
package and libraries that are in needs are automatically
added to us needs.
The library's ability to compile to different targets is
specified by the arguments ?byte, ?native and
?native_dynlink whose defaults respectively depend on kind
as follows.
`OCaml, true, true, true`OCaml_pp, true, false, false`C, false (not applicable), true, trueAssemblage.Conf.ocaml_byte, Assemblage.Conf.ocaml_native,
Assemblage.Conf.ocaml_native_dynlink and Assemblage.Conf.c_dynlink.