-
Notifications
You must be signed in to change notification settings - Fork 63
/
config.h.in
256 lines (207 loc) · 7.42 KB
/
config.h.in
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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
// config.h - Generated from config.h.in by configure.
#pragma once
// Define to the one symbol short name of this package.
#define USTL_NAME "@PKG_NAME@"
// Define to the full name and version of this package.
#define USTL_STRING "@PKG_NAME@ @PKG_VERSTR@"
// Define to the version of this package.
#define USTL_VERSION @PKG_VERSION@
// Define to the address where bug reports for this package should be sent.
#define USTL_BUGREPORT "@PKG_BUGREPORT@"
/// Define to 1 if you want stream operations to throw exceptions on
/// insufficient data or insufficient space. All these errors should
/// be preventable in output code; the input code should verify the
/// data in a separate step. It slows down stream operations a lot,
/// but it is your decision. By default only debug builds throw.
///
#define WANT_STREAM_BOUNDS_CHECKING 1
#if !WANT_STREAM_BOUNDS_CHECKING && !defined(NDEBUG)
#define WANT_STREAM_BOUNDS_CHECKING 1
#endif
/// Define to 1 if you want backtrace symbols demangled.
/// This adds some 15k to the library size, and requires that you link it and
/// any executables you make with the -rdynamic flag (increasing library size
/// even more). By default only the debug build does this.
#undef WANT_NAME_DEMANGLING
#if !WANT_NAME_DEMANGLING && !defined(NDEBUG)
#define WANT_NAME_DEMANGLING 1
#endif
/// Define to 1 if you want to build without libstdc++
#define WITHOUT_LIBSTDCPP 1
/// Define GNU extensions if unavailable.
#ifndef __GNUC__
/// GCC (and some other compilers) define '__attribute__'; ustl is using this
/// macro to alert the compiler to flag inconsistencies in printf/scanf-like
/// function calls. Just in case '__attribute__' is undefined, make a dummy.
///
#ifndef __attribute__
#define __attribute__(p)
#endif
#endif
#if __GNUC__ >= 4
#define DLL_EXPORT __attribute__((visibility("default")))
#define DLL_LOCAL __attribute__((visibility("hidden")))
#define INLINE __attribute__((always_inline))
#else
#define DLL_EXPORT
#define DLL_LOCAL
#define INLINE
#endif
#if __cplusplus >= 201103L && (!__GNUC__ || (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 2)) || (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)))
#define HAVE_CPP11 1
#endif
#if !HAVE_CPP11
#define noexcept throw()
#define constexpr
#endif
#if __GNUC__ >= 3 && (__i386__ || __x86_64__)
/// GCC 3+ supports the prefetch directive, which some CPUs use to improve caching
#define prefetch(p,rw,loc) __builtin_prefetch(p,rw,loc)
#else
#define prefetch(p,rw,loc)
#endif
#if __GNUC__ < 3
/// __alignof__ returns the recommended alignment for the type
#define __alignof__(v) min(sizeof(v), sizeof(void*))
/// This macro returns 1 if the value of x is known at compile time.
#ifndef __builtin_constant_p
#define __builtin_constant_p(x) 0
#endif
#endif
// Define to empty if 'const' does not conform to ANSI C.
#undef const
// Define as '__inline' if that is what the C compiler calls it
#undef inline
// Define to 'long' if <sys/types.h> does not define.
#undef off_t
// Define to 'unsigned' if <sys/types.h> does not define.
#undef size_t
/// gcc has lately decided that inline is just a suggestion
/// Define to 1 if when you say 'inline' you mean it!
#undef WANT_ALWAYS_INLINE
#if WANT_ALWAYS_INLINE
#define inline INLINE inline
#endif
/// Define to 1 if you have the <assert.h> header file.
#undef HAVE_ASSERT_H
/// Define to 1 if you have the <ctype.h> header file.
#undef HAVE_CTYPE_H
/// Define to 1 if you have the <errno.h> header file.
#undef HAVE_ERRNO_H
/// Define to 1 if you have the <fcntl.h> header file.
#undef HAVE_FCNTL_H
/// Define to 1 if you have the <float.h> header file.
#undef HAVE_FLOAT_H
/// Define to 1 if you have the <inttypes.h> header file.
#undef HAVE_INTTYPES_H
/// Define to 1 if you have the <limits.h> header file.
#undef HAVE_LIMITS_H
/// Define to 1 if you have the <locale.h> header file.
#undef HAVE_LOCALE_H
// Define to 1 if you have the <alloca.h> header file.
#undef HAVE_ALLOCA_H
// Define to 1 if you have the <signal.h> header file.
#undef HAVE_SIGNAL_H
// Define to 1 if you have the __va_copy function
#define HAVE_VA_COPY 1
// Define to 1 if you have the <stdarg.h> header file.
#undef HAVE_STDARG_H
// Define to 1 if you have the <stddef.h> header file.
#undef HAVE_STDDEF_H
// Define to 1 if you have the <stdint.h> header file.
#undef HAVE_STDINT_H
// Define to 1 if you have the <stdio.h> header file.
#undef HAVE_STDIO_H
// Define to 1 if you have the <stdlib.h> header file.
#undef HAVE_STDLIB_H
// Define to 1 if you have the <string.h> header file.
#undef HAVE_STRING_H
// Define to 1 if you have the 'strrchr' function.
#define HAVE_STRRCHR 1
// Define to 1 if you have the 'strsignal' function.
#define HAVE_STRSIGNAL 1
// Define to 1 if you have the <sys/stat.h> header file.
#undef HAVE_SYS_STAT_H
// Define to 1 if you have the <sys/types.h> header file.
#undef HAVE_SYS_TYPES_H
// Define to 1 if you have the <sys/mman.h> header file.
#undef HAVE_SYS_MMAN_H
// Define to 1 if you have the <time.h> header file.
#undef HAVE_TIME_H
// Define to 1 if you have the <unistd.h> header file.
#undef HAVE_UNISTD_H
// Define to 1 if you have the <math.h> header file.
#undef HAVE_MATH_H
// Define to 1 if you have the <execinfo.h> header file.
#undef HAVE_EXECINFO_H
// Define to 1 if you have the <cxxabi.h> header file.
#if __GNUC__ >= 3
#define HAVE_CXXABI_H 1
#endif
// Define to 1 if you have the rintf function. Will use rint otherwise.
#undef HAVE_RINTF
// STDC_HEADERS is defined to 1 on sane systems.
#if HAVE_ASSERT_H && HAVE_CTYPE_H && HAVE_ERRNO_H && HAVE_FLOAT_H &&\
HAVE_LIMITS_H && HAVE_LOCALE_H && HAVE_MATH_H && HAVE_SIGNAL_H &&\
HAVE_STDARG_H && HAVE_STDDEF_H && HAVE_STDIO_H && HAVE_STDLIB_H &&\
HAVE_STRING_H && HAVE_TIME_H
#define STDC_HEADERS 1
#endif
// STDC_HEADERS is defined to 1 on unix systems.
#if HAVE_FCNTL_H && HAVE_SYS_STAT_H && HAVE_UNISTD_H
#define STDUNIX_HEADERS 1
#endif
// Define to 1 if your compiler treats char as a separate type along with
// signed char and unsigned char. This will create overloads for char.
#undef HAVE_THREE_CHAR_TYPES
// Define to 1 if you have 64 bit types available
#undef HAVE_INT64_T
// Define to 1 if you have the long long type
#undef HAVE_LONG_LONG
// Define to 1 if you want unrolled specializations for fill and copy
#define WANT_UNROLLED_COPY 1
// Define to 1 if you want to use MMX/SSE/3dNow! processor instructions
#define WANT_MMX 1
// Define to byte sizes of types
#undef SIZE_OF_CHAR
#undef SIZE_OF_SHORT
#undef SIZE_OF_INT
#undef SIZE_OF_LONG
#undef SIZE_OF_LONG_LONG
#undef SIZE_OF_POINTER
#undef SIZE_OF_SIZE_T
#undef SIZE_OF_BOOL
#undef SIZE_T_IS_LONG
// Byte order macros, converted in utypes.h
#define USTL_LITTLE_ENDIAN 4321
#define USTL_BIG_ENDIAN 1234
#define USTL_BYTE_ORDER USTL_@BYTE_ORDER@
// Extended CPU capabilities
#undef CPU_HAS_FPU
#undef CPU_HAS_EXT_DEBUG
#undef CPU_HAS_TIMESTAMPC
#undef CPU_HAS_MSR
#undef CPU_HAS_CMPXCHG8
#undef CPU_HAS_APIC
#undef CPU_HAS_SYSCALL
#undef CPU_HAS_MTRR
#undef CPU_HAS_CMOV
#undef CPU_HAS_FCMOV
#if WANT_MMX
#undef CPU_HAS_MMX
#undef CPU_HAS_FXSAVE
#undef CPU_HAS_SSE
#undef CPU_HAS_SSE2
#undef CPU_HAS_SSE3
#undef CPU_HAS_EXT_3DNOW
#undef CPU_HAS_3DNOW
#endif
// GCC vector extensions
#if (CPU_HAS_MMX || CPU_HAS_SSE) && __GNUC__ >= 3
#undef HAVE_VECTOR_EXTENSIONS
#endif
#if CPU_HAS_SSE && __GNUC__
#define __sse_align __attribute__((aligned(16)))
#else
#define __sse_align
#endif