Framework to test IFUNC implementations on target
[glibc.git] / config.h.in
blob5f9f3c39d5a07cfec3e52dabf6f3e99402fe8634
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 if CFI directives are available. */
28 #undef HAVE_ASM_CFI_DIRECTIVES
30 /* Define to the assembler line separator character for multiple
31 assembler instructions per line. Default is `;' */
32 #undef ASM_LINE_SEP
34 /* Define if __attribute__((section("foo"))) puts quotes around foo. */
35 #undef HAVE_SECTION_QUOTES
37 /* Define if the assembler supports the `.set' directive. */
38 #undef HAVE_ASM_SET_DIRECTIVE
40 /* Define if the assembler supports the gnu_unique_object symbol type. */
41 #undef HAVE_ASM_UNIQUE_OBJECT
43 /* Define a symbol_name as a global .symbol_name for ld. */
44 #undef HAVE_ASM_GLOBAL_DOT_NAME
46 /* On powerpc64, use overlapping .opd entries. */
47 #undef USE_PPC64_OVERLAPPING_OPD
49 /* Define if _Unwind_Find_FDE should be exported from glibc. */
50 #undef EXPORT_UNWIND_FIND_FDE
52 /* Define if using ELF and the assembler supports the `.previous'
53 directive. */
54 #undef HAVE_ASM_PREVIOUS_DIRECTIVE
56 /* Define if using ELF and the assembler supports the `.popsection'
57 directive. */
58 #undef HAVE_ASM_POPSECTION_DIRECTIVE
60 /* Define if versioning of the library is wanted. */
61 #undef DO_VERSIONING
63 /* Defined to the oldest ABI we support, like 2.1. */
64 #undef GLIBC_OLDEST_ABI
66 /* Define if static NSS modules are wanted. */
67 #undef DO_STATIC_NSS
69 /* Define if the compiler supports __builtin_memset. */
70 #undef HAVE_BUILTIN_MEMSET
72 /* Define if the regparm attribute shall be used for local functions
73 (gcc on ix86 only). */
74 #undef USE_REGPARMS
76 /* Defined on PowerPC if the GCC being used has a problem with clobbering
77 certain registers (CR0, MQ, CTR, LR) in asm statements. */
78 #undef BROKEN_PPC_ASM_CR0
80 /* Defined on SPARC if GCC emits GOTDATA relocations. */
81 #undef HAVE_GCC_GOTDATA
83 /* Define on SPARC if AS supports VIS3 instructions. */
84 #undef HAVE_AS_VIS3_SUPPORT
86 /* Define if the linker supports the -z combreloc option. */
87 #undef HAVE_Z_COMBRELOC
89 /* Define if _rtld_local structure should be forced into .sdata section. */
90 #undef HAVE_SDATA_SECTION
92 /* Define if gcc supports SSE4. */
93 #undef HAVE_SSE4_SUPPORT
95 /* Define if gcc supports AVX. */
96 #undef HAVE_AVX_SUPPORT
98 /* Define if gcc supports VEX encoding. */
99 #undef HAVE_SSE2AVX_SUPPORT
101 /* Define if gcc supports FMA4. */
102 #undef HAVE_FMA4_SUPPORT
104 /* Define if the compiler\'s exception support is based on libunwind. */
105 #undef HAVE_CC_WITH_LIBUNWIND
107 /* Define if the access to static and hidden variables is position independent
108 and does not need relocations. */
109 #undef PI_STATIC_AND_HIDDEN
111 /* Define this to disable the 'hidden_proto' et al macros in
112 include/libc-symbols.h that avoid PLT slots in the shared objects. */
113 #undef NO_HIDDEN
116 /* Defined to some form of __attribute__ ((...)) if the compiler supports
117 a different, more efficient calling convention. */
118 #if defined USE_REGPARMS && !defined PROF && !defined __BOUNDED_POINTERS__
119 # define internal_function __attribute__ ((regparm (3), stdcall))
120 #endif
122 /* Linux specific: minimum supported kernel version. */
123 #undef __LINUX_KERNEL_VERSION
125 /* Override abi-tags ABI version if necessary. */
126 #undef __ABI_TAG_VERSION
128 /* bash 2.0 introduced the _XXX_GNU_nonoption_argv_flags_ variable to help
129 getopt determine whether a parameter is a flag or not. This features
130 was disabled later since it caused trouble. We are by default therefore
131 disabling the support as well. */
132 #undef USE_NONOPTION_FLAGS
134 /* Mach/Hurd specific: define if mig supports the `retcode' keyword. */
135 #undef HAVE_MIG_RETCODE
137 /* Mach specific: define if the `host_page_size' RPC is available. */
138 #undef HAVE_HOST_PAGE_SIZE
140 /* Mach/i386 specific: define if the `i386_io_perm_*' RPCs are available. */
141 #undef HAVE_I386_IO_PERM_MODIFY
143 /* Mach/i386 specific: define if the `i386_set_gdt' RPC is available. */
144 #undef HAVE_I386_SET_GDT
146 /* Defined if forced unwind support is available. */
147 #undef HAVE_FORCED_UNWIND
149 /* Defined of libidn is available. */
150 #undef HAVE_LIBIDN
152 /* Define if inlined system calls are available. */
153 #undef HAVE_INLINED_SYSCALLS
155 /* Define if your assembler and linker support R_PPC_REL16* relocs. */
156 #undef HAVE_ASM_PPC_REL16
158 /* Define if your compiler defaults to -msecure-plt mode on ppc. */
159 #undef HAVE_PPC_SECURE_PLT
161 /* Define if __stack_chk_guard canary should be randomized at program startup. */
162 #undef ENABLE_STACKGUARD_RANDOMIZE
164 /* Define if multi-arch DSOs should be generated. */
165 #undef USE_MULTIARCH
167 /* Define if `.ctors' and `.dtors' sections shouldn't be used. */
168 #undef NO_CTORS_DTORS_SECTIONS
170 /* Define if obsolete RPC code should be made available for user-level code
171 to link against. */
172 #undef LINK_OBSOLETE_RPC
174 /* Define if Systemtap <sys/sdt.h> probes should be defined. */
175 #undef USE_STAP_PROBE
177 /* Define if library functions should try to contact the nscd daemon. */
178 #undef USE_NSCD
180 /* Define if the dynamic linker should consult an ld.so.cache file. */
181 #undef USE_LDCONFIG
184 \f */
186 #ifndef _LIBC
188 /* These symbols might be defined by some sysdeps configures.
189 They are used only in miscellaneous generator programs, not
190 in compiling libc itself. */
192 /* sysdeps/generic/configure.in */
193 #undef HAVE_PSIGNAL
195 /* sysdeps/unix/configure.in */
196 #undef HAVE_STRERROR
198 /* sysdeps/unix/common/configure.in */
199 #undef HAVE_SYS_SIGLIST
200 #undef HAVE__SYS_SIGLIST
201 #undef HAVE__CTYPE_
202 #undef HAVE___CTYPE_
203 #undef HAVE___CTYPE
204 #undef HAVE__CTYPE__
205 #undef HAVE__CTYPE
206 #undef HAVE__LOCP
208 #endif
211 \f */
213 #ifdef _LIBC
215 /* The zic and zdump programs need these definitions. */
217 #define HAVE_STRERROR 1
219 /* The locale code needs these definitions. */
221 #define HAVE_REGEX 1
223 /* The ARM hard-float ABI is being used. */
224 #undef HAVE_ARM_PCS_VFP
226 #endif