1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
(**************************************************************************)
(* *)
(* OCaml *)
(* *)
(* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
(* *)
(* Copyright 1996 Institut National de Recherche en Informatique et *)
(* en Automatique. *)
(* *)
(* All rights reserved. This file is distributed under the terms of *)
(* the GNU Lesser General Public License version 2.1, with the *)
(* special exception on linking described in the file LICENSE. *)
(* *)
(**************************************************************************)
(* System configuration *)
val version: string
(* The current version number of the system *)
val standard_library: string
(* The directory containing the standard libraries *)
val standard_runtime: string
(* The full path to the standard bytecode interpreter ocamlrun *)
val ccomp_type: string
(* The "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 bytecomp_c_compiler: string
(* The C compiler to use for compiling C files
with the bytecode compiler *)
val bytecomp_c_libraries: string
(* The C libraries to link with custom runtimes *)
val native_c_compiler: string
(* The C compiler to use for compiling C files
with the native-code compiler *)
val native_c_libraries: string
(* The C libraries to link with native-code programs *)
val native_pack_linker: string
(* The linker to use for packaging (ocamlopt -pack) and for partial
links (ocamlopt -output-obj). *)
val mkdll: string
(* The linker command line to build dynamic libraries. *)
val mkexe: string
(* The linker command line to build executables. *)
val mkmaindll: string
(* The linker command line to build main programs as dlls. *)
val ranlib: string
(* Command to randomize a library, or "" if not needed *)
val ar: string
(* Name of the ar command, or "" if not needed (MSVC) *)
val cc_profile : string
(* The command line option to the C compiler to enable profiling. *)
val load_path: string list ref
(* Directories in the search path for .cmi and .cmo files *)
val interface_suffix: string ref
(* Suffix for interface file names *)
val exec_magic_number: string
(* Magic number for bytecode executable files *)
val cmi_magic_number: string
(* Magic number for compiled interface files *)
val cmo_magic_number: string
(* Magic number for object bytecode files *)
val cma_magic_number: string
(* Magic number for archive files *)
val cmx_magic_number: string
(* Magic number for compilation unit descriptions *)
val cmxa_magic_number: string
(* Magic number for libraries of compilation unit descriptions *)
val ast_intf_magic_number: string
(* Magic number for file holding an interface syntax tree *)
val ast_impl_magic_number: string
(* Magic number for file holding an implementation syntax tree *)
val cmxs_magic_number: string
(* Magic number for dynamically-loadable plugins *)
val cmt_magic_number: string
(* Magic number for compiled interface files *)
val max_tag: int
(* Biggest tag that can be stored in the header of a regular block. *)
val lazy_tag : int
(* Normally the same as Obj.lazy_tag. Separate definition because
of technical reasons for bootstrapping. *)
val max_young_wosize: int
(* Maximal size of arrays that are directly allocated in the
minor heap *)
val stack_threshold: int
(* Size in words of safe area at bottom of VM stack,
see byterun/config.h *)
val architecture: string
(* Name of processor type for the native-code compiler *)
val model: string
(* Name of processor submodel for the native-code compiler *)
val system: string
(* Name of operating system for the native-code compiler *)
val asm: string
(* The assembler (and flags) to use for assembling
ocamlopt-generated code. *)
val asm_cfi_supported: bool
(* Whether assembler understands CFI directives *)
val with_frame_pointers : bool
(* Whether assembler should maintain frame pointers *)
val ext_obj: string
(* Extension for object files, e.g. [.o] under Unix. *)
val ext_asm: string
(* Extension for assembler files, e.g. [.s] under Unix. *)
val ext_lib: string
(* Extension for library files, e.g. [.a] under Unix. *)
val ext_dll: string
(* Extension for dynamically-loaded libraries, e.g. [.so] under Unix.*)
val default_executable_name: string
(* Name of executable produced by linking if none is given with -o,
e.g. [a.out] under Unix. *)
val systhread_supported : bool
(* Whether the system thread library is implemented *)
val host : string
(* Whether the compiler is a cross-compiler *)
val target : string
(* Whether the compiler is a cross-compiler *)
val print_config : out_channel -> unit;;
val flambda : bool
(* Whether the compiler was configured for flambda *)
|