1Config(3)                        OCaml library                       Config(3)
2
3
4

NAME

6       Config - System configuration
7

Module

9       Module   Config
10

Documentation

12       Module Config
13        : sig end
14
15
16       System configuration
17
18       Warning: this module is unstable and part of Compiler_libs .
19
20
21
22
23
24
25       val version : string
26
27       The current version number of the system
28
29
30
31       val standard_library : string
32
33       The directory containing the standard libraries
34
35
36
37       val ccomp_type : string
38
39       The  "kind"  of  the C compiler, assembler and linker used: one of "cc"
40       (for Unix-style C compilers) "msvc" (for Microsoft Visual C++ and MASM)
41
42
43
44       val c_compiler : string
45
46       The compiler to use for compiling C files
47
48
49
50       val c_output_obj : string
51
52       Name of the option of the C compiler for specifying the output file
53
54
55
56       val c_has_debug_prefix_map : bool
57
58       Whether the C compiler supports -fdebug-prefix-map
59
60
61
62       val as_has_debug_prefix_map : bool
63
64       Whether the assembler supports --debug-prefix-map
65
66
67
68       val ocamlc_cflags : string
69
70       The flags ocamlc should pass to the C compiler
71
72
73
74       val ocamlc_cppflags : string
75
76       The flags ocamlc should pass to the C preprocessor
77
78
79
80       val ocamlopt_cflags : string
81
82       Deprecated.
83
84       Config.ocamlc_cflags should be used instead.  The flags ocamlopt should
85       pass to the C compiler
86
87
88
89       val ocamlopt_cppflags : string
90
91       Deprecated.
92
93       Config.ocamlc_cppflags  should  be  used  instead.   The flags ocamlopt
94       should pass to the C preprocessor
95
96
97
98       val bytecomp_c_libraries : string
99
100       The C libraries to link with custom runtimes
101
102
103
104       val native_c_libraries : string
105
106       The C libraries to link with native-code programs
107
108
109
110       val native_pack_linker : string
111
112       The linker to use for packaging (ocamlopt -pack) and for partial  links
113       (ocamlopt -output-obj).
114
115
116
117       val mkdll : string
118
119       The linker command line to build dynamic libraries.
120
121
122
123       val mkexe : string
124
125       The linker command line to build executables.
126
127
128
129       val mkmaindll : string
130
131       The linker command line to build main programs as dlls.
132
133
134
135       val ranlib : string
136
137       Command to randomize a library, or "" if not needed
138
139
140
141       val ar : string
142
143       Name of the ar command, or "" if not needed  (MSVC)
144
145
146
147       val interface_suffix : string ref
148
149       Suffix for interface file names
150
151
152
153       val exec_magic_number : string
154
155       Magic number for bytecode executable files
156
157
158
159       val cmi_magic_number : string
160
161       Magic number for compiled interface files
162
163
164
165       val cmo_magic_number : string
166
167       Magic number for object bytecode files
168
169
170
171       val cma_magic_number : string
172
173       Magic number for archive files
174
175
176
177       val cmx_magic_number : string
178
179       Magic number for compilation unit descriptions
180
181
182
183       val cmxa_magic_number : string
184
185       Magic number for libraries of compilation unit descriptions
186
187
188
189       val ast_intf_magic_number : string
190
191       Magic number for file holding an interface syntax tree
192
193
194
195       val ast_impl_magic_number : string
196
197       Magic number for file holding an implementation syntax tree
198
199
200
201       val cmxs_magic_number : string
202
203       Magic number for dynamically-loadable plugins
204
205
206
207       val cmt_magic_number : string
208
209       Magic number for compiled interface files
210
211
212
213       val max_tag : int
214
215       Biggest tag that can be stored in the header of a regular block.
216
217
218
219       val lazy_tag : int
220
221       Normally  the  same  as  Obj.lazy_tag.   Separate definition because of
222       technical reasons for bootstrapping.
223
224
225
226       val max_young_wosize : int
227
228       Maximal size of arrays that are directly allocated in the minor heap
229
230
231
232       val stack_threshold : int
233
234       Size in words of safe area at bottom of VM stack, see runtime/caml/con‐
235       fig.h
236
237
238
239       val stack_safety_margin : int
240
241       Size  in words of the safety margin between the bottom of the stack and
242       the stack pointer. This margin can be used by intermediate computations
243       of some instructions, or the event handler.
244
245
246
247       val architecture : string
248
249       Name of processor type for the native-code compiler
250
251
252
253       val model : string
254
255       Name of processor submodel for the native-code compiler
256
257
258
259       val system : string
260
261       Name of operating system for the native-code compiler
262
263
264
265       val asm : string
266
267       The  assembler  (and  flags)  to  use for assembling ocamlopt-generated
268       code.
269
270
271
272       val asm_cfi_supported : bool
273
274       Whether assembler understands CFI directives
275
276
277
278       val with_frame_pointers : bool
279
280       Whether assembler should maintain frame pointers
281
282
283
284       val ext_obj : string
285
286       Extension for object files, e.g.  .o under Unix.
287
288
289
290       val ext_asm : string
291
292       Extension for assembler files, e.g.  .s under Unix.
293
294
295
296       val ext_lib : string
297
298       Extension for library files, e.g.  .a under Unix.
299
300
301
302       val ext_dll : string
303
304       Extension for dynamically-loaded libraries, e.g.  .so under Unix.
305
306
307
308       val default_executable_name : string
309
310       Name of executable produced by linking if none is given with  -o,  e.g.
311       a.out under Unix.
312
313
314
315       val systhread_supported : bool
316
317       Whether the system thread library is implemented
318
319
320
321       val flexdll_dirs : string list
322
323       Directories needed for the FlexDLL objects
324
325
326
327       val host : string
328
329       Whether the compiler is a cross-compiler
330
331
332
333       val target : string
334
335       Whether the compiler is a cross-compiler
336
337
338
339       val flambda : bool
340
341       Whether the compiler was configured for flambda
342
343
344
345       val with_flambda_invariants : bool
346
347       Whether the invariants checks for flambda are enabled
348
349
350
351       val spacetime : bool
352
353       Whether the compiler was configured for Spacetime profiling
354
355
356
357       val enable_call_counts : bool
358
359       Whether call counts are to be available when Spacetime profiling
360
361
362
363       val profinfo : bool
364
365       Whether the compiler was configured for profiling
366
367
368
369       val profinfo_width : int
370
371       How  many bits are to be used in values' headers for profiling informa‐
372       tion
373
374
375
376       val libunwind_available : bool
377
378       Whether the libunwind library is available on the target
379
380
381
382       val libunwind_link_flags : string
383
384       Linker flags to use libunwind
385
386
387
388       val safe_string : bool
389
390       Whether the compiler was configured with  -force-safe-string;  in  that
391       case, the -unsafe-string compile-time option is unavailable
392
393
394       Since 4.05.0
395
396
397
398       val default_safe_string : bool
399
400       Whether  the  compiler  was  configured to use the -safe-string or -un‐
401       safe-string compile-time option by default.
402
403
404       Since 4.06.0
405
406
407
408       val flat_float_array : bool
409
410       Whether the compiler and runtime automagically flatten float arrays
411
412
413
414       val function_sections : bool
415
416       Whether the compiler was configured to generate each function in a sep‐
417       arate section
418
419
420
421       val windows_unicode : bool
422
423       Whether Windows Unicode runtime is enabled
424
425
426
427       val supports_shared_libraries : bool
428
429       Whether shared libraries are supported
430
431
432       Since 4.08.0
433
434
435
436       val afl_instrument : bool
437
438       Whether afl-fuzz instrumentation is generated by default
439
440
441
442       val print_config : out_channel -> unit
443
444       Access to configuration values
445
446
447
448       val config_var : string -> string option
449
450       the configuration value of a variable, if it exists
451
452
453
454
455
456OCamldoc                          2021-01-26                         Config(3)
Impressum