package core_kernel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

This module gives access to the same version/build information returned by Command-based executables when called with the -version or -build-info flags by $0 version (-build-info | -version) or $0 (-build-info | -version).

Here's how it works: we arrange for the build system to, at link time, include an object file that defines symbols that version_util.ml uses to get the strings that contain the information that this module provides. When building with OMake, our OMakeroot runs build_info.sh to generate *.build_info.c with the symbols and that is linked in.

val version : Base.String.t

all hg repos and their versions

val version_list : Base.String.t Base.List.t

same as version, but one string per line

module Version : sig ... end

Version may be used to parse a single entry from version_list.

val arg_spec : (Base.String.t * Arg.spec * Base.String.t) Base.List.t
module Application_specific_fields : sig ... end

Application_specific_fields is a single field in the build-info sexp that holds a Sexp.t String.Map.t, which can be chosen by the application to hold custom fields that it needs.

val build_info : Base.String.t

Various additional information about the circumstances of the build: who built it, when, on what machine, etc. build_info is the information as it was generated by the build system. reprint_build_info parses and prints the string back, which alters a bit the layout and order of the fields but more importantly allows to display times in the current zone.

val build_info_as_sexp : Sexp.t
val reprint_build_info : (Base.Float.t -> Sexp.t) -> Base.String.t
val username : Base.String.t Base.Option.t
val hostname : Base.String.t Base.Option.t
val kernel : Base.String.t Base.Option.t
val build_time : Base.Float.t Base.Option.t
val x_library_inlining : Base.Bool.t
val portable_int63 : Base.Bool.t
val dynlinkable_code : Base.Bool.t
val compiled_for_speed : Base.Bool.t
val application_specific_fields : Application_specific_fields.t Base.Option.t
val ocaml_version : Base.String.t
val allowed_projections : Base.String.t Base.List.t Base.Option.t
val executable_path : Base.String.t

Relative to OMakeroot dir

val build_system : Base.String.t
OCaml

Innovation. Community. Security.