B00_ocaml.ConfToolchain configuration.
This module provides access to the OCaml toolchain configuration as output by ocaml{c,opt} -config.
The type for code generated by the OCaml compiler. Either bytecode or native-code.
val of_string : ?file:B00_std.Fpath.t -> string -> (t, string) resultof_string ~file data parses toolchain configuration from data as output by the compiler's -config option assuming it was read from file file (defaults to B00_std.Fpath.dash).
val write : B00.Memo.t -> comp:B00.Tool.t -> o:B00_std.Fpath.t -> unitwrite m ~o writes the toolchain configuration to o by running comp with -config.
val read : B00.Memo.t -> B00_std.Fpath.t -> t B00_std.Fut.tread m file reads a toolchain configuration from file.
val find : string -> t -> string optionfind f c looks up the field f in configuration c. See ocamlc -config for the list of fields.
val version : t -> int * int * int * string optionversion c is the compiler version string "major.minor[.patchlevel][+additional-info]" parsed using (major, minor, patch, additional-info). If patch-level is absent it is turned into a 0.
val where : t -> B00_std.Fpath.twhere c is the location of OCaml's library directory.
val asm_ext : t -> B00_std.Fpath.extasm_ext is the file extension for assembly files.
val dll_ext : t -> B00_std.Fpath.extdll_ext is the file extension for C dynamic libraries.
val exe_ext : t -> B00_std.Fpath.extext_ext is the file extension for executable binaries.
val lib_ext : t -> B00_std.Fpath.extext_lib is the file extension for C static libraries.
val obj_ext : t -> B00_std.Fpath.extobj_ext is the file extension for C object files.
val has_dynlink : t -> boolhas_dynlink determines whether the platform supports dynamic linking.
val to_string_map : t -> string B00_std.String.Map.tto_string_map c are the fields of c as a string map.
val of_string_map : string B00_std.String.Map.t -> (t, string) resultof_string_map m is a configuration from string map m. m needs at least on key for each parsed field above otherwise the function errors.