module Config:sig..end
System configuration
Warning: this module is unstable and part of compiler-libs.
val version : stringThe current version number of the system
val standard_library : stringThe directory containing the standard libraries
val ccomp_type : stringThe "kind" of the C compiler, assembler and linker used: one of "cc" (for Unix-style C compilers) "msvc" (for Microsoft Visual C++ and MASM)
val c_compiler : stringThe compiler to use for compiling C files
val c_output_obj : stringName of the option of the C compiler for specifying the output file
val c_has_debug_prefix_map : boolWhether the C compiler supports -fdebug-prefix-map
val as_has_debug_prefix_map : boolWhether the assembler supports --debug-prefix-map
val ocamlc_cflags : stringThe flags ocamlc should pass to the C compiler
val ocamlc_cppflags : stringThe flags ocamlc should pass to the C preprocessor
val ocamlopt_cflags : stringConfig.ocamlc_cflags should be used instead.
The flags ocamlopt should pass to the C compilerval ocamlopt_cppflags : stringConfig.ocamlc_cppflags should be used instead.
The flags ocamlopt should pass to the C preprocessorval bytecomp_c_libraries : stringThe C libraries to link with custom runtimes
val native_c_libraries : stringThe C libraries to link with native-code programs
val native_pack_linker : stringThe linker to use for packaging (ocamlopt -pack) and for partial links (ocamlopt -output-obj).
val mkdll : stringThe linker command line to build dynamic libraries.
val mkexe : stringThe linker command line to build executables.
val mkmaindll : stringThe linker command line to build main programs as dlls.
val ranlib : stringCommand to randomize a library, or "" if not needed
val ar : stringName of the ar command, or "" if not needed (MSVC)
val interface_suffix : string refSuffix for interface file names
val exec_magic_number : stringMagic number for bytecode executable files
val cmi_magic_number : stringMagic number for compiled interface files
val cmo_magic_number : stringMagic number for object bytecode files
val cma_magic_number : stringMagic number for archive files
val cmx_magic_number : stringMagic number for compilation unit descriptions
val cmxa_magic_number : stringMagic number for libraries of compilation unit descriptions
val ast_intf_magic_number : stringMagic number for file holding an interface syntax tree
val ast_impl_magic_number : stringMagic number for file holding an implementation syntax tree
val cmxs_magic_number : stringMagic number for dynamically-loadable plugins
val cmt_magic_number : stringMagic number for compiled interface files
val max_tag : intBiggest tag that can be stored in the header of a regular block.
val lazy_tag : intNormally the same as Obj.lazy_tag. Separate definition because of technical reasons for bootstrapping.
val max_young_wosize : intMaximal size of arrays that are directly allocated in the minor heap
val stack_threshold : intSize in words of safe area at bottom of VM stack, see runtime/caml/config.h
val stack_safety_margin : intSize in words of the safety margin between the bottom of the stack and the stack pointer. This margin can be used by intermediate computations of some instructions, or the event handler.
val architecture : stringName of processor type for the native-code compiler
val model : stringName of processor submodel for the native-code compiler
val system : stringName of operating system for the native-code compiler
val asm : stringThe assembler (and flags) to use for assembling ocamlopt-generated code.
val asm_cfi_supported : boolWhether assembler understands CFI directives
val with_frame_pointers : boolWhether assembler should maintain frame pointers
val ext_obj : stringExtension for object files, e.g. .o under Unix.
val ext_asm : stringExtension for assembler files, e.g. .s under Unix.
val ext_lib : stringExtension for library files, e.g. .a under Unix.
val ext_dll : stringExtension for dynamically-loaded libraries, e.g. .so under Unix.
val default_executable_name : stringName of executable produced by linking if none is given with -o,
e.g. a.out under Unix.
val systhread_supported : boolWhether the system thread library is implemented
val flexdll_dirs : string listDirectories needed for the FlexDLL objects
val host : stringWhether the compiler is a cross-compiler
val target : stringWhether the compiler is a cross-compiler
val flambda : boolWhether the compiler was configured for flambda
val with_flambda_invariants : boolWhether the invariants checks for flambda are enabled
val spacetime : boolWhether the compiler was configured for Spacetime profiling
val enable_call_counts : boolWhether call counts are to be available when Spacetime profiling
val profinfo : boolWhether the compiler was configured for profiling
val profinfo_width : intHow many bits are to be used in values' headers for profiling information
val libunwind_available : boolWhether the libunwind library is available on the target
val libunwind_link_flags : stringLinker flags to use libunwind
val safe_string : boolWhether the compiler was configured with -force-safe-string; in that case, the -unsafe-string compile-time option is unavailable
val default_safe_string : boolWhether the compiler was configured to use the -safe-string or -unsafe-string compile-time option by default.
val flat_float_array : boolWhether the compiler and runtime automagically flatten float arrays
val function_sections : boolWhether the compiler was configured to generate each function in a separate section
val windows_unicode : boolWhether Windows Unicode runtime is enabled
: boolWhether shared libraries are supported
val afl_instrument : boolWhether afl-fuzz instrumentation is generated by default
val print_config : out_channel -> unitAccess to configuration values
val config_var : string -> string optionthe configuration value of a variable, if it exists