* include/features.h (__USE_FORTIFY_LEVEL): Enable even with
[glibc.git] / config.h.in
blobdb3defc6b09502bab86879329c46c1eab0acbce4
1 #if !defined __ASSEMBLER__ && !defined _ISOMAC && !defined __OPTIMIZE__
2 # error "glibc cannot be compiled without optimization"
3 #endif
5 /* Another evil option when it comes to compiling the C library is
6 --ffast-math since it alters the ABI. */
7 #if defined __FAST_MATH__ && !defined TEST_FAST_MATH
8 # error "glibc must not be compiled with -ffast-math"
9 #endif
11 /* Define if using GNU ld, with support for weak symbols in a.out,
12 and for symbol set and warning messages extensions in a.out and ELF.
13 This implies HAVE_WEAK_SYMBOLS; set by --with-gnu-ld. */
14 #undef HAVE_GNU_LD
16 /* Define if using ELF, which supports weak symbols.
17 This implies HAVE_ASM_WEAK_DIRECTIVE and NO_UNDERSCORES; set by
18 --with-elf. */
19 #undef HAVE_ELF
21 /* Define if building with SELinux support. Set by --with-selinux. */
22 #undef HAVE_SELINUX
24 /* Define if using XCOFF. Set by --with-xcoff. */
25 #undef HAVE_XCOFF
27 /* Define if C symbols are asm symbols. Don't define if C symbols
28 have a `_' prepended to make the asm symbol. */
29 #undef NO_UNDERSCORES
31 /* Define if weak symbols are available via the `.weak' directive. */
32 #undef HAVE_ASM_WEAK_DIRECTIVE
34 /* Define if weak symbols are available via the `.weakext' directive. */
35 #undef HAVE_ASM_WEAKEXT_DIRECTIVE
37 /* Define if CFI directives are available. */
38 #undef HAVE_ASM_CFI_DIRECTIVES
40 /* Define to the assembler line separator character for multiple
41 assembler instructions per line. Default is `;' */
42 #undef ASM_LINE_SEP
44 /* Define if not using ELF, but `.init' and `.fini' sections are available. */
45 #undef HAVE_INITFINI
47 /* Define if __attribute__((section("foo"))) puts quotes around foo. */
48 #undef HAVE_SECTION_QUOTES
50 /* Define if using the GNU assembler, gas. */
51 #undef HAVE_GNU_AS
53 /* Define if the assembler supports the `.set' directive. */
54 #undef HAVE_ASM_SET_DIRECTIVE
56 /* Define to the name of the assembler's directive for
57 declaring a symbol global (default `.globl'). */
58 #undef ASM_GLOBAL_DIRECTIVE
60 /* Define to the prefix before `object' or `function' in the
61 assembler's `.type' directive, if it has one. */
62 #undef ASM_TYPE_DIRECTIVE_PREFIX
64 /* Define a symbol_name as a global .symbol_name for ld. */
65 #undef HAVE_ASM_GLOBAL_DOT_NAME
67 /* On powerpc64, use overlapping .opd entries. */
68 #undef USE_PPC64_OVERLAPPING_OPD
70 /* Define if the assembler generates debugging information directly. */
71 #undef HAVE_CPP_ASM_DEBUGINFO
73 /* Define if _Unwind_Find_FDE should be exported from glibc. */
74 #undef EXPORT_UNWIND_FIND_FDE
76 /* Define to use GNU libio instead of GNU stdio.
77 This is defined by configure under --enable-libio. */
78 #undef USE_IN_LIBIO
80 /* Define if using ELF and the assembler supports the `.previous'
81 directive. */
82 #undef HAVE_ASM_PREVIOUS_DIRECTIVE
84 /* Define if using ELF and the assembler supports the `.popsection'
85 directive. */
86 #undef HAVE_ASM_POPSECTION_DIRECTIVE
88 /* Define if versioning of the library is wanted. */
89 #undef DO_VERSIONING
91 /* Defined to the oldest ABI we support, like 2.1. */
92 #undef GLIBC_OLDEST_ABI
94 /* Define if static NSS modules are wanted. */
95 #undef DO_STATIC_NSS
97 /* Define if gcc uses DWARF2 unwind information for exception support. */
98 #undef HAVE_DWARF2_UNWIND_INFO
100 /* Define if gcc uses DWARF2 unwind information for exception support
101 with static variable. */
102 #undef HAVE_DWARF2_UNWIND_INFO_STATIC
104 /* Define if the compiler supports __builtin_expect. */
105 #undef HAVE_BUILTIN_EXPECT
107 /* Define if the compiler supports __builtin_memset. */
108 #undef HAVE_BUILTIN_MEMSET
110 /* Define if __asm () on built-in function's prototype causes redirection of
111 the builtin. */
112 #undef HAVE_BUILTIN_REDIRECTION
114 /* Define if the __thread keyword is supported. */
115 #undef HAVE___THREAD
117 /* Define if the compiler supports __attribute__((tls_model(""))). */
118 #undef HAVE_TLS_MODEL_ATTRIBUTE
120 /* Define if the regparm attribute shall be used for local functions
121 (gcc on ix86 only). */
122 #undef USE_REGPARMS
124 /* Defined on PowerPC if the GCC being used has a problem with clobbering
125 certain registers (CR0, MQ, CTR, LR) in asm statements. */
126 #undef BROKEN_PPC_ASM_CR0
128 /* Defined on SPARC if ld doesn't handle R_SPARC_WDISP22 against .hidden
129 symbol. sysdeps/sparc/sparc32/elf/configure. */
130 #undef BROKEN_SPARC_WDISP22
132 /* Define if the linker supports the -z combreloc option. */
133 #undef HAVE_Z_COMBRELOC
135 /* Define if the assembler supported .protected. */
136 #undef HAVE_PROTECTED
138 /* Define if the assembler supported .hidden. */
139 #undef HAVE_HIDDEN
141 /* Define if the compiler supports __attribute__ ((visibility (...))). */
142 #undef HAVE_VISIBILITY_ATTRIBUTE
144 /* Define if the compiler doesn't support __attribute__ ((visibility (...)))
145 together with __asm__ redirection properly. */
146 #undef HAVE_BROKEN_VISIBILITY_ATTRIBUTE
148 /* Define if the compiler doesn't support __attribute__ ((alias (...)))
149 together with __asm__ redirection properly. */
150 #undef HAVE_BROKEN_ALIAS_ATTRIBUTE
152 /* Define if _rtld_local structure should be forced into .sdata section. */
153 #undef HAVE_SDATA_SECTION
155 /* Define if binutils support TLS handling. */
156 #undef HAVE_TLS_SUPPORT
158 /* Define if the linker supports .preinit_array/.init_array/.fini_array
159 sections. */
160 #undef HAVE_INITFINI_ARRAY
162 /* Define if the compiler's exception support is based on libunwind. */
163 #undef HAVE_CC_WITH_LIBUNWIND
165 /* Define if the access to static and hidden variables is position independent
166 and does not need relocations. */
167 #undef PI_STATIC_AND_HIDDEN
169 /* Define this to disable the `hidden_proto' et al macros in
170 include/libc-symbols.h that avoid PLT slots in the shared objects. */
171 #undef NO_HIDDEN
174 /* Defined to some form of __attribute__ ((...)) if the compiler supports
175 a different, more efficient calling convention. */
176 #if defined USE_REGPARMS && !defined PROF && !defined __BOUNDED_POINTERS__
177 # define internal_function __attribute__ ((regparm (3), stdcall))
178 #endif
180 /* Linux specific: minimum supported kernel version. */
181 #undef __LINUX_KERNEL_VERSION
183 /* Override abi-tags ABI version if necessary. */
184 #undef __ABI_TAG_VERSION
186 /* An extension in gcc 2.96 and up allows the subtraction of two
187 local labels. */
188 #undef HAVE_SUBTRACT_LOCAL_LABELS
190 /* bash 2.0 introduced the _XXX_GNU_nonoption_argv_flags_ variable to help
191 getopt determine whether a parameter is a flag or not. This features
192 was disabled later since it caused trouble. We are by default therefore
193 disabling the support as well. */
194 #undef USE_NONOPTION_FLAGS
196 /* Mach/Hurd specific: define if mig supports the `retcode' keyword. */
197 #undef HAVE_MIG_RETCODE
199 /* Mach specific: define if the `host_page_size' RPC is available. */
200 #undef HAVE_HOST_PAGE_SIZE
202 /* Mach/i386 specific: define if the `i386_io_perm_*' RPCs are available. */
203 #undef HAVE_I386_IO_PERM_MODIFY
205 /* Mach/i386 specific: define if the `i386_set_gdt' RPC is available. */
206 #undef HAVE_I386_SET_GDT
208 /* Defined if forced unwind support is available. */
209 #undef HAVE_FORCED_UNWIND
211 /* Defined if the linker supports the -z relro option. */
212 #undef HAVE_Z_RELRO
214 /* Defined of libidn is available. */
215 #undef HAVE_LIBIDN
217 /* Define if inlined system calls are available. */
218 #undef HAVE_INLINED_SYSCALLS
221 \f */
223 #ifndef _LIBC
225 /* These symbols might be defined by some sysdeps configures.
226 They are used only in miscellaneous generator programs, not
227 in compiling libc itself. */
229 /* sysdeps/generic/configure.in */
230 #undef HAVE_PSIGNAL
232 /* sysdeps/unix/configure.in */
233 #undef HAVE_STRERROR
235 /* sysdeps/unix/common/configure.in */
236 #undef HAVE_SYS_SIGLIST
237 #undef HAVE__SYS_SIGLIST
238 #undef HAVE__CTYPE_
239 #undef HAVE___CTYPE_
240 #undef HAVE___CTYPE
241 #undef HAVE__CTYPE__
242 #undef HAVE__CTYPE
243 #undef HAVE__LOCP
245 #endif
248 \f */
250 #ifdef _LIBC
252 /* The zic and zdump programs need these definitions. */
254 #define HAVE_STRERROR 1
256 /* The locale code needs these definitions. */
258 #define HAVE_REGEX 1
260 #endif