Fix double-checked locking in _res_hconf_reorder_addrs [BZ #19074]
[glibc.git] / config.h.in
blob5fd4897428b8fcec7c2328bbe4a20dcba21e7060
1 #if !defined IS_IN_build && !defined __ASSEMBLER__ && !defined _ISOMAC \
2 && !defined __OPTIMIZE__
3 # error "glibc cannot be compiled without optimization"
4 #endif
6 /* Another evil option when it comes to compiling the C library is
7 --ffast-math since it alters the ABI. */
8 #if defined __FAST_MATH__ && !defined TEST_FAST_MATH
9 # error "glibc must not be compiled with -ffast-math"
10 #endif
12 /* Define if building with SELinux support. Set by --with-selinux. */
13 #undef HAVE_SELINUX
15 /* Defined if building with SELinux support & audit libs are detected. */
16 #undef HAVE_LIBAUDIT
18 /* Defined if building with SELinux support & libcap libs are detected. */
19 #undef HAVE_LIBCAP
21 /* Define if weak symbols are available via the `.weak' directive. */
22 #undef HAVE_ASM_WEAK_DIRECTIVE
24 /* Define if weak symbols are available via the `.weakext' directive. */
25 #undef HAVE_ASM_WEAKEXT_DIRECTIVE
27 /* Define to the assembler line separator character for multiple
28 assembler instructions per line. Default is `;' */
29 #undef ASM_LINE_SEP
31 /* Define if __attribute__((section("foo"))) puts quotes around foo. */
32 #undef HAVE_SECTION_QUOTES
34 /* Define if the assembler supports the `.set' directive. */
35 #undef HAVE_ASM_SET_DIRECTIVE
37 /* Define if the assembler supports the gnu_unique_object symbol type. */
38 #undef HAVE_ASM_UNIQUE_OBJECT
40 /* On powerpc64, use overlapping .opd entries. */
41 #undef USE_PPC64_OVERLAPPING_OPD
43 /* Define if _Unwind_Find_FDE should be exported from glibc. */
44 #undef EXPORT_UNWIND_FIND_FDE
46 /* Define if using ELF and the assembler supports the `.previous'
47 directive. */
48 #undef HAVE_ASM_PREVIOUS_DIRECTIVE
50 /* Define if using ELF and the assembler supports the `.popsection'
51 directive. */
52 #undef HAVE_ASM_POPSECTION_DIRECTIVE
54 /* Define if static NSS modules are wanted. */
55 #undef DO_STATIC_NSS
57 /* Define if the compiler supports __builtin_memset. */
58 #undef HAVE_BUILTIN_MEMSET
60 /* Define if compiler accepts -ftree-loop-distribute-patterns. */
61 #undef HAVE_CC_INHIBIT_LOOP_TO_LIBCALL
63 /* Define if the regparm attribute shall be used for local functions
64 (gcc on ix86 only). */
65 #undef USE_REGPARMS
67 /* Defined on SPARC if GCC emits GOTDATA relocations. */
68 #undef HAVE_GCC_GOTDATA
70 /* Define on SPARC if AS supports VIS3 instructions. */
71 #undef HAVE_AS_VIS3_SUPPORT
73 /* Define if the linker supports the -z combreloc option. */
74 #undef HAVE_Z_COMBRELOC
76 /* Define if _rtld_local structure should be forced into .sdata section. */
77 #undef HAVE_SDATA_SECTION
79 /* Define if compiler supports AVX512. */
80 #undef HAVE_AVX512_SUPPORT
82 /* Define if assembler supports AVX512. */
83 #undef HAVE_AVX512_ASM_SUPPORT
85 /* Define if assembler supports vector instructions on S390. */
86 #undef HAVE_S390_VX_ASM_SUPPORT
88 /* Define if assembler supports Intel MPX. */
89 #undef HAVE_MPX_SUPPORT
91 /* Define if gcc supports AVX2. */
92 #undef HAVE_AVX2_SUPPORT
94 /* Define if the compiler\'s exception support is based on libunwind. */
95 #undef HAVE_CC_WITH_LIBUNWIND
97 /* Define if the access to static and hidden variables is position independent
98 and does not need relocations. */
99 #undef PI_STATIC_AND_HIDDEN
101 /* Define this to disable the 'hidden_proto' et al macros in
102 include/libc-symbols.h that avoid PLT slots in the shared objects. */
103 #undef NO_HIDDEN
105 /* AArch64 big endian ABI */
106 #undef HAVE_AARCH64_BE
109 /* Defined to some form of __attribute__ ((...)) if the compiler supports
110 a different, more efficient calling convention. */
111 #if defined USE_REGPARMS && !defined PROF
112 # define internal_function __attribute__ ((regparm (3), stdcall))
113 #endif
115 /* Linux specific: minimum supported kernel version. */
116 #undef __LINUX_KERNEL_VERSION
118 /* Override abi-tags ABI version if necessary. */
119 #undef __ABI_TAG_VERSION
121 /* bash 2.0 introduced the _XXX_GNU_nonoption_argv_flags_ variable to help
122 getopt determine whether a parameter is a flag or not. This features
123 was disabled later since it caused trouble. We are by default therefore
124 disabling the support as well. */
125 #undef USE_NONOPTION_FLAGS
127 /* Mach/Hurd specific: define if mig supports the `retcode' keyword. */
128 #undef HAVE_MIG_RETCODE
130 /* Mach specific: define if the `host_page_size' RPC is available. */
131 #undef HAVE_HOST_PAGE_SIZE
133 /* Mach/i386 specific: define if the `i386_io_perm_*' RPCs are available. */
134 #undef HAVE_I386_IO_PERM_MODIFY
136 /* Mach/i386 specific: define if the `i386_set_gdt' RPC is available. */
137 #undef HAVE_I386_SET_GDT
139 /* Defined if forced unwind support is available. */
140 #undef HAVE_FORCED_UNWIND
142 /* Defined of libidn is available. */
143 #undef HAVE_LIBIDN
145 /* Define if inlined system calls are available. */
146 #undef HAVE_INLINED_SYSCALLS
148 /* Define if your compiler defaults to -msecure-plt mode on ppc. */
149 #undef HAVE_PPC_SECURE_PLT
151 /* Define if __stack_chk_guard canary should be randomized at program startup. */
152 #undef ENABLE_STACKGUARD_RANDOMIZE
154 /* Define if lock elision should be enabled by default. */
155 #undef ENABLE_LOCK_ELISION
157 /* Package description. */
158 #undef PKGVERSION
160 /* Bug reporting address. */
161 #undef REPORT_BUGS_TO
163 /* Define if multi-arch DSOs should be generated. */
164 #undef USE_MULTIARCH
166 /* Define if `.ctors' and `.dtors' sections shouldn't be used. */
167 #undef NO_CTORS_DTORS_SECTIONS
169 /* Define if obsolete RPC code should be made available for user-level code
170 to link against. */
171 #undef LINK_OBSOLETE_RPC
173 /* Define if Systemtap <sys/sdt.h> probes should be defined. */
174 #undef USE_STAP_PROBE
176 /* Define if library functions should try to contact the nscd daemon. */
177 #undef USE_NSCD
179 /* Define if the dynamic linker should consult an ld.so.cache file. */
180 #undef USE_LDCONFIG
182 /* Define to 1 if STT_GNU_IFUNC support actually works. */
183 #define HAVE_IFUNC 0
185 /* Define if linux/fanotify.h is available. */
186 #undef HAVE_LINUX_FANOTIFY_H
188 /* Define if the linker defines __ehdr_start. */
189 #undef HAVE_EHDR_START
192 \f */
194 #ifndef _LIBC
196 /* These symbols might be defined by some sysdeps configures.
197 They are used only in miscellaneous generator programs, not
198 in compiling libc itself. */
200 /* sysdeps/generic/configure.ac */
201 #undef HAVE_PSIGNAL
203 /* sysdeps/unix/configure.ac */
204 #undef HAVE_STRERROR
206 /* sysdeps/unix/common/configure.ac */
207 #undef HAVE_SYS_SIGLIST
208 #undef HAVE__SYS_SIGLIST
209 #undef HAVE__CTYPE_
210 #undef HAVE___CTYPE_
211 #undef HAVE___CTYPE
212 #undef HAVE__CTYPE__
213 #undef HAVE__CTYPE
214 #undef HAVE__LOCP
216 #endif
219 \f */
221 #ifdef _LIBC
223 /* The zic and zdump programs need these definitions. */
225 #define HAVE_STRERROR 1
227 /* The locale code needs these definitions. */
229 #define HAVE_REGEX 1
231 /* The ARM hard-float ABI is being used. */
232 #undef HAVE_ARM_PCS_VFP
234 /* The ARM movw/movt instructions using PC-relative relocs work right. */
235 #define ARM_PCREL_MOVW_OK 0
237 /* The pt_chown binary is being built and used by grantpt. */
238 #define HAVE_PT_CHOWN 0
240 /* Define if the compiler supports __builtin_trap without
241 any external dependencies such as making a function call. */
242 #define HAVE_BUILTIN_TRAP 0
244 /* ports/sysdeps/mips/configure.in */
245 /* Define if using the IEEE 754-2008 NaN encoding on the MIPS target. */
246 #undef HAVE_MIPS_NAN2008
248 /* The PowerPC64 ELFv2 ABI is being used. */
249 #undef HAVE_ELFV2_ABI
251 /* PowerPC32 uses fcfid for integer to floating point conversions. */
252 #define HAVE_PPC_FCFID 0
254 /* PowerPC32 uses fctidz for floating point to long long conversions. */
255 #define HAVE_PPC_FCTIDZ 0
257 #endif