2.5-18.1
[jlayton/glibc.git] / config.h.in
1 #if !defined __ASSEMBLER__ && !defined _ISOMAC && !defined __OPTIMIZE__
2 # error "glibc cannot be compiled without optimization"
3 #endif
4
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
10
11 /* Define if using ELF, which supports weak symbols.
12    This implies HAVE_ASM_WEAK_DIRECTIVE and NO_UNDERSCORES; set by
13    --with-elf.  */
14 #undef  HAVE_ELF
15
16 /* Define if building with SELinux support.  Set by --with-selinux.  */
17 #undef  HAVE_SELINUX
18
19 /* Defined if building with SELinux support & audit libs are detected. */
20 #undef  HAVE_LIBAUDIT
21
22 /* Defined if building with SELinux support & libcap libs are detected.  */
23 #undef  HAVE_LIBCAP
24
25 /* Define if using XCOFF. Set by --with-xcoff.  */
26 #undef  HAVE_XCOFF
27
28 /* Define if C symbols are asm symbols.  Don't define if C symbols
29    have a `_' prepended to make the asm symbol.  */
30 #undef  NO_UNDERSCORES
31
32 /* Define if weak symbols are available via the `.weak' directive.  */
33 #undef  HAVE_ASM_WEAK_DIRECTIVE
34
35 /* Define if weak symbols are available via the `.weakext' directive.  */
36 #undef  HAVE_ASM_WEAKEXT_DIRECTIVE
37
38 /* Define if CFI directives are available.  */
39 #undef  HAVE_ASM_CFI_DIRECTIVES
40
41 /* Define to the assembler line separator character for multiple
42    assembler instructions per line.  Default is `;'  */
43 #undef ASM_LINE_SEP
44
45 /* Define if not using ELF, but `.init' and `.fini' sections are available.  */
46 #undef  HAVE_INITFINI
47
48 /* Define if __attribute__((section("foo"))) puts quotes around foo.  */
49 #undef  HAVE_SECTION_QUOTES
50
51 /* Define if the assembler supports the `.set' directive.  */
52 #undef  HAVE_ASM_SET_DIRECTIVE
53
54 /* Define to the name of the assembler's directive for
55    declaring a symbol global (default `.globl').  */
56 #undef  ASM_GLOBAL_DIRECTIVE
57
58 /* Define to the prefix before `object' or `function' in the
59    assembler's `.type' directive, if it has one.  */
60 #undef  ASM_TYPE_DIRECTIVE_PREFIX
61
62 /* Define a symbol_name as a global .symbol_name for ld.  */
63 #undef  HAVE_ASM_GLOBAL_DOT_NAME
64
65 /* On powerpc64, use overlapping .opd entries.  */
66 #undef  USE_PPC64_OVERLAPPING_OPD
67
68 /* Define if the assembler generates debugging information directly.  */
69 #undef  HAVE_CPP_ASM_DEBUGINFO
70
71 /* Define if _Unwind_Find_FDE should be exported from glibc.  */
72 #undef  EXPORT_UNWIND_FIND_FDE
73
74 /* Define to use GNU libio instead of GNU stdio.
75    This is defined by configure under --enable-libio.  */
76 #undef  USE_IN_LIBIO
77
78 /* Define if using ELF and the assembler supports the `.previous'
79    directive.  */
80 #undef  HAVE_ASM_PREVIOUS_DIRECTIVE
81
82 /* Define if using ELF and the assembler supports the `.popsection'
83    directive.  */
84 #undef  HAVE_ASM_POPSECTION_DIRECTIVE
85
86 /* Define if versioning of the library is wanted.  */
87 #undef  DO_VERSIONING
88
89 /* Defined to the oldest ABI we support, like 2.1.  */
90 #undef GLIBC_OLDEST_ABI
91
92 /* Define if static NSS modules are wanted.  */
93 #undef  DO_STATIC_NSS
94
95 /* Define if the compiler supports __builtin_expect.  */
96 #undef  HAVE_BUILTIN_EXPECT
97
98 /* Define if the compiler supports __builtin_memset.  */
99 #undef  HAVE_BUILTIN_MEMSET
100
101 /* Define if __asm () on built-in function's prototype causes redirection of
102    the builtin.  */
103 #undef  HAVE_BUILTIN_REDIRECTION
104
105 /* Define if the __thread keyword is supported.  */
106 #undef HAVE___THREAD
107
108 /* Define if the compiler supports __attribute__((tls_model(""))).  */
109 #undef HAVE_TLS_MODEL_ATTRIBUTE
110
111 /* Define if the regparm attribute shall be used for local functions
112    (gcc on ix86 only).  */
113 #undef  USE_REGPARMS
114
115 /* Defined on PowerPC if the GCC being used has a problem with clobbering
116    certain registers (CR0, MQ, CTR, LR) in asm statements.  */
117 #undef  BROKEN_PPC_ASM_CR0
118
119 /* Defined on SPARC if ld doesn't handle R_SPARC_WDISP22 against .hidden
120    symbol.  sysdeps/sparc/sparc32/elf/configure.  */
121 #undef  BROKEN_SPARC_WDISP22
122
123 /* Define if the linker supports the -z combreloc option.  */
124 #undef  HAVE_Z_COMBRELOC
125
126 /* Define if the assembler supported .protected.  */
127 #undef  HAVE_PROTECTED
128
129 /* Define if the assembler supported .hidden.  */
130 #undef  HAVE_HIDDEN
131
132 /* Define if the compiler supports __attribute__ ((visibility (...))).  */
133 #undef  HAVE_VISIBILITY_ATTRIBUTE
134
135 /* Define if the compiler doesn't support __attribute__ ((visibility (...)))
136    together with __asm__ redirection properly.  */
137 #undef  HAVE_BROKEN_VISIBILITY_ATTRIBUTE
138
139 /* Define if the compiler doesn't support __attribute__ ((alias (...)))
140    together with __asm__ redirection properly.  */
141 #undef  HAVE_BROKEN_ALIAS_ATTRIBUTE
142
143 /* Define if _rtld_local structure should be forced into .sdata section.  */
144 #undef  HAVE_SDATA_SECTION
145
146 /* Define if binutils support TLS handling.  */
147 #undef  HAVE_TLS_SUPPORT
148
149 /* Define if the compiler's exception support is based on libunwind.  */
150 #undef  HAVE_CC_WITH_LIBUNWIND
151
152 /* Define if the access to static and hidden variables is position independent
153    and does not need relocations.  */
154 #undef  PI_STATIC_AND_HIDDEN
155
156 /* Define this to disable the `hidden_proto' et al macros in
157    include/libc-symbols.h that avoid PLT slots in the shared objects.  */
158 #undef  NO_HIDDEN
159
160
161 /* Defined to some form of __attribute__ ((...)) if the compiler supports
162    a different, more efficient calling convention.  */
163 #if defined USE_REGPARMS && !defined PROF && !defined __BOUNDED_POINTERS__
164 # define internal_function __attribute__ ((regparm (3), stdcall))
165 #endif
166
167 /* Linux specific: minimum supported kernel version.  */
168 #undef  __LINUX_KERNEL_VERSION
169
170 /* Override abi-tags ABI version if necessary.  */
171 #undef  __ABI_TAG_VERSION
172
173 /* bash 2.0 introduced the _XXX_GNU_nonoption_argv_flags_ variable to help
174    getopt determine whether a parameter is a flag or not.  This features
175    was disabled later since it caused trouble.  We are by default therefore
176    disabling the support as well.  */
177 #undef USE_NONOPTION_FLAGS
178
179 /* Mach/Hurd specific: define if mig supports the `retcode' keyword.  */
180 #undef  HAVE_MIG_RETCODE
181
182 /* Mach specific: define if the `host_page_size' RPC is available.  */
183 #undef  HAVE_HOST_PAGE_SIZE
184
185 /* Mach/i386 specific: define if the `i386_io_perm_*' RPCs are available.  */
186 #undef  HAVE_I386_IO_PERM_MODIFY
187
188 /* Mach/i386 specific: define if the `i386_set_gdt' RPC is available.  */
189 #undef  HAVE_I386_SET_GDT
190
191 /* Defined if forced unwind support is available.  */
192 #undef  HAVE_FORCED_UNWIND
193
194 /* Defined if the linker supports the -z relro option.  */
195 #undef HAVE_Z_RELRO
196
197 /* Defined of libidn is available.  */
198 #undef HAVE_LIBIDN
199
200 /* Define if inlined system calls are available.  */
201 #undef HAVE_INLINED_SYSCALLS
202
203 /* Define if your assembler and linker support R_PPC_REL16* relocs.  */
204 #undef HAVE_ASM_PPC_REL16
205
206 /* Define if your compiler defaults to -msecure-plt mode on ppc.  */
207 #undef HAVE_PPC_SECURE_PLT
208
209 /* Define if __stack_chk_guard canary should be randomized at program startup.  */
210 #undef ENABLE_STACKGUARD_RANDOMIZE
211
212 /*
213 \f */
214
215 #ifndef _LIBC
216
217 /* These symbols might be defined by some sysdeps configures.
218    They are used only in miscellaneous generator programs, not
219    in compiling libc itself.   */
220
221 /* sysdeps/generic/configure.in */
222 #undef  HAVE_PSIGNAL
223
224 /* sysdeps/unix/configure.in */
225 #undef  HAVE_STRERROR
226
227 /* sysdeps/unix/common/configure.in */
228 #undef  HAVE_SYS_SIGLIST
229 #undef  HAVE__SYS_SIGLIST
230 #undef  HAVE__CTYPE_
231 #undef  HAVE___CTYPE_
232 #undef  HAVE___CTYPE
233 #undef  HAVE__CTYPE__
234 #undef  HAVE__CTYPE
235 #undef  HAVE__LOCP
236
237 #endif
238
239 /*
240 \f */
241
242 #ifdef  _LIBC
243
244 /* The zic and zdump programs need these definitions.  */
245
246 #define HAVE_STRERROR   1
247
248 /* The locale code needs these definitions.  */
249
250 #define HAVE_REGEX 1
251
252 #endif