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       The flags ocamlopt should pass to the C compiler
83
84
85
86       val ocamlopt_cppflags : string
87
88       The flags ocamlopt should pass to the C preprocessor
89
90
91
92       val bytecomp_c_libraries : string
93
94       The C libraries to link with custom runtimes
95
96
97
98       val native_c_libraries : string
99
100       The C libraries to link with native-code programs
101
102
103
104       val native_pack_linker : string
105
106       The linker to use for packaging (ocamlopt -pack) and for partial  links
107       (ocamlopt -output-obj).
108
109
110
111       val mkdll : string
112
113       The linker command line to build dynamic libraries.
114
115
116
117       val mkexe : string
118
119       The linker command line to build executables.
120
121
122
123       val mkmaindll : string
124
125       The linker command line to build main programs as dlls.
126
127
128
129       val ranlib : string
130
131       Command to randomize a library, or "" if not needed
132
133
134
135       val ar : string
136
137       Name of the ar command, or "" if not needed  (MSVC)
138
139
140
141       val cc_profile : string
142
143       The command line option to the C compiler to enable profiling.
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 profiling : bool
340
341       Whether profiling with gprof is supported on this platform
342
343
344
345       val flambda : bool
346
347       Whether the compiler was configured for flambda
348
349
350
351       val with_flambda_invariants : bool
352
353       Whether the invariants checks for flambda are enabled
354
355
356
357       val spacetime : bool
358
359       Whether the compiler was configured for Spacetime profiling
360
361
362
363       val enable_call_counts : bool
364
365       Whether call counts are to be available when Spacetime profiling
366
367
368
369       val profinfo : bool
370
371       Whether the compiler was configured for profiling
372
373
374
375       val profinfo_width : int
376
377       How  many bits are to be used in values' headers for profiling informa‐
378       tion
379
380
381
382       val libunwind_available : bool
383
384       Whether the libunwind library is available on the target
385
386
387
388       val libunwind_link_flags : string
389
390       Linker flags to use libunwind
391
392
393
394       val safe_string : bool
395
396       Whether the compiler was configured with  -force-safe-string;  in  that
397       case, the -unsafe-string compile-time option is unavailable
398
399
400       Since 4.05.0
401
402
403
404       val default_safe_string : bool
405
406       Whether  the  compiler  was  configured  to  use  the  -safe-string  or
407       -unsafe-string compile-time option by default.
408
409
410       Since 4.06.0
411
412
413
414       val flat_float_array : bool
415
416       Whether the compiler and runtime automagically flatten float arrays
417
418
419
420       val windows_unicode : bool
421
422       Whether Windows Unicode runtime is enabled
423
424
425
426       val supports_shared_libraries : bool
427
428       Whether shared libraries are supported
429
430
431       Since 4.08.0
432
433
434
435       val afl_instrument : bool
436
437       Whether afl-fuzz instrumentation is generated by default
438
439
440
441       val print_config : out_channel -> unit
442
443       Access to configuration values
444
445
446
447       val config_var : string -> string option
448
449       the configuration value of a variable, if it exists
450
451
452
453
454
455OCamldoc                          2019-07-30                         Config(3)
Impressum