module Config_main:sig..end
System configuration
Warning: this module is unstable and part of compiler-libs.
val version : stringThe current version number of the system
val bindir : stringThe directory containing the binary programs
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_main.ocamlc_cflags should be used instead.
The flags ocamlopt should pass to the C compilerval ocamlopt_cppflags : stringConfig_main.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 default_rpath : stringOption to add a directory to be searched for libraries at runtime (used by ocamlmklib)
: stringOption to add a directory to be searched for shared libraries at runtime (used by ocamlmklib)
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 linear_magic_number : stringMagic number for Linear internal representation 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 native_compiler : boolWhether the native compiler is available or not
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 ext_exe : stringExtension for executable programs, e.g. .exe under Windows.
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 with_cmm_invariants : boolWhether the invariants checks for Cmm are enabled
val reserved_header_bits : intHow many bits of a block's header are reserved
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
val naked_pointers : boolWhether the runtime supports naked pointers
: boolWhether shared libraries are supported
val native_dynlink : boolWhether native shared libraries are supported
val afl_instrument : boolWhether afl-fuzz instrumentation is generated by default
val ar_supports_response_files : boolWhether ar supports @FILE arguments.
val print_config : out_channel -> unitAccess to configuration values
val config_var : string -> string optionthe configuration value of a variable, if it exists