xref: /haiku/src/system/libroot/posix/glibc/include/arch/riscv64/config.h (revision 51ab221fc753c6755e47a83abee10fbba5918131)
1*51ab221fSAlexander von Gluck IV //#if !defined __ASSEMBLER__ && !defined _ISOMAC && !defined __OPTIMIZE__
2*51ab221fSAlexander von Gluck IV //# error "glibc cannot be compiled without optimization"
3*51ab221fSAlexander von Gluck IV //#endif
4*51ab221fSAlexander von Gluck IV 
5*51ab221fSAlexander von Gluck IV /* Another evil option when it comes to compiling the C library is
6*51ab221fSAlexander von Gluck IV    --ffast-math since it alters the ABI.  */
7*51ab221fSAlexander von Gluck IV #if defined __FAST_MATH__ && !defined TEST_FAST_MATH
8*51ab221fSAlexander von Gluck IV # error "glibc must not be compiled with -ffast-math"
9*51ab221fSAlexander von Gluck IV #endif
10*51ab221fSAlexander von Gluck IV 
11*51ab221fSAlexander von Gluck IV /* Define if using GNU ld, with support for weak symbols in a.out,
12*51ab221fSAlexander von Gluck IV    and for symbol set and warning messages extensions in a.out and ELF.
13*51ab221fSAlexander von Gluck IV    This implies HAVE_WEAK_SYMBOLS; set by --with-gnu-ld.  */
14*51ab221fSAlexander von Gluck IV #define	HAVE_GNU_LD 1
15*51ab221fSAlexander von Gluck IV 
16*51ab221fSAlexander von Gluck IV /* Define if using ELF, which supports weak symbols.
17*51ab221fSAlexander von Gluck IV    This implies HAVE_ASM_WEAK_DIRECTIVE set by --with-elf.  */
18*51ab221fSAlexander von Gluck IV #define	HAVE_ELF 1
19*51ab221fSAlexander von Gluck IV 
20*51ab221fSAlexander von Gluck IV /* Define if using XCOFF. Set by --with-xcoff.  */
21*51ab221fSAlexander von Gluck IV #undef	HAVE_XCOFF
22*51ab221fSAlexander von Gluck IV 
23*51ab221fSAlexander von Gluck IV /* Define if weak symbols are available via the `.weak' directive.  */
24*51ab221fSAlexander von Gluck IV #define	HAVE_ASM_WEAK_DIRECTIVE 1
25*51ab221fSAlexander von Gluck IV 
26*51ab221fSAlexander von Gluck IV /* Define if weak symbols are available via the `.weakext' directive.  */
27*51ab221fSAlexander von Gluck IV #undef	HAVE_ASM_WEAKEXT_DIRECTIVE
28*51ab221fSAlexander von Gluck IV 
29*51ab221fSAlexander von Gluck IV /* Define to the assembler line separator character for multiple
30*51ab221fSAlexander von Gluck IV    assembler instructions per line.  Default is `;'  */
31*51ab221fSAlexander von Gluck IV #undef ASM_LINE_SEP
32*51ab221fSAlexander von Gluck IV 
33*51ab221fSAlexander von Gluck IV /* Define if not using ELF, but `.init' and `.fini' sections are available.  */
34*51ab221fSAlexander von Gluck IV #undef	HAVE_INITFINI
35*51ab221fSAlexander von Gluck IV 
36*51ab221fSAlexander von Gluck IV /* Define if __attribute__((section("foo"))) puts quotes around foo.  */
37*51ab221fSAlexander von Gluck IV /*#define	HAVE_SECTION_QUOTES 1
38*51ab221fSAlexander von Gluck IV  [zooey]: defining this causes assembler errors, and I don't think
39*51ab221fSAlexander von Gluck IV           that any BeOS-gcc actually produces quotes in sections...
40*51ab221fSAlexander von Gluck IV */
41*51ab221fSAlexander von Gluck IV #undef	HAVE_SECTION_QUOTES
42*51ab221fSAlexander von Gluck IV 
43*51ab221fSAlexander von Gluck IV /* Define if using the GNU assembler, gas.  */
44*51ab221fSAlexander von Gluck IV #define	HAVE_GNU_AS 1
45*51ab221fSAlexander von Gluck IV 
46*51ab221fSAlexander von Gluck IV /* Define if the assembler supports the `.set' directive.  */
47*51ab221fSAlexander von Gluck IV #define	HAVE_ASM_SET_DIRECTIVE 1
48*51ab221fSAlexander von Gluck IV 
49*51ab221fSAlexander von Gluck IV /* Define to the name of the assembler's directive for
50*51ab221fSAlexander von Gluck IV    declaring a symbol global (default `.globl').  */
51*51ab221fSAlexander von Gluck IV #define	ASM_GLOBAL_DIRECTIVE .globl
52*51ab221fSAlexander von Gluck IV 
53*51ab221fSAlexander von Gluck IV /* Define to the prefix before `object' or `function' in the
54*51ab221fSAlexander von Gluck IV    assembler's `.type' directive, if it has one.  */
55*51ab221fSAlexander von Gluck IV #undef	ASM_TYPE_DIRECTIVE_PREFIX
56*51ab221fSAlexander von Gluck IV 
57*51ab221fSAlexander von Gluck IV /* Define a symbol_name as a global .symbol_name for ld.  */
58*51ab221fSAlexander von Gluck IV #undef	HAVE_ASM_GLOBAL_DOT_NAME
59*51ab221fSAlexander von Gluck IV 
60*51ab221fSAlexander von Gluck IV /* Define if the assembler generates debugging information directly.  */
61*51ab221fSAlexander von Gluck IV #undef	HAVE_CPP_ASM_DEBUGINFO
62*51ab221fSAlexander von Gluck IV 
63*51ab221fSAlexander von Gluck IV /* Define if _Unwind_Find_FDE should be exported from glibc.  */
64*51ab221fSAlexander von Gluck IV #undef  EXPORT_UNWIND_FIND_FDE
65*51ab221fSAlexander von Gluck IV 
66*51ab221fSAlexander von Gluck IV /* Define to use GNU libio instead of GNU stdio.
67*51ab221fSAlexander von Gluck IV    This is defined by configure under --enable-libio.  */
68*51ab221fSAlexander von Gluck IV #define	USE_IN_LIBIO 1
69*51ab221fSAlexander von Gluck IV 
70*51ab221fSAlexander von Gluck IV /* Define if using ELF and the assembler supports the `.previous'
71*51ab221fSAlexander von Gluck IV    directive.  */
72*51ab221fSAlexander von Gluck IV #define	HAVE_ASM_PREVIOUS_DIRECTIVE 1
73*51ab221fSAlexander von Gluck IV 
74*51ab221fSAlexander von Gluck IV /* Define if using ELF and the assembler supports the `.popsection'
75*51ab221fSAlexander von Gluck IV    directive.  */
76*51ab221fSAlexander von Gluck IV #undef	HAVE_ASM_POPSECTION_DIRECTIVE
77*51ab221fSAlexander von Gluck IV 
78*51ab221fSAlexander von Gluck IV /* Define if versioning of the library is wanted.  */
79*51ab221fSAlexander von Gluck IV #undef	DO_VERSIONING
80*51ab221fSAlexander von Gluck IV 
81*51ab221fSAlexander von Gluck IV /* Defined to the oldest ABI we support, like 2.1.  */
82*51ab221fSAlexander von Gluck IV #undef GLIBC_OLDEST_ABI
83*51ab221fSAlexander von Gluck IV 
84*51ab221fSAlexander von Gluck IV /* Define if static NSS modules are wanted.  */
85*51ab221fSAlexander von Gluck IV #undef	DO_STATIC_NSS
86*51ab221fSAlexander von Gluck IV 
87*51ab221fSAlexander von Gluck IV /* Define if gcc uses DWARF2 unwind information for exception support.  */
88*51ab221fSAlexander von Gluck IV #define	HAVE_DWARF2_UNWIND_INFO 1
89*51ab221fSAlexander von Gluck IV 
90*51ab221fSAlexander von Gluck IV /* Define if gcc uses DWARF2 unwind information for exception support
91*51ab221fSAlexander von Gluck IV    with static variable. */
92*51ab221fSAlexander von Gluck IV #define	HAVE_DWARF2_UNWIND_INFO_STATIC 1
93*51ab221fSAlexander von Gluck IV 
94*51ab221fSAlexander von Gluck IV /* Define if the compiler supports __builtin_expect.  */
95*51ab221fSAlexander von Gluck IV #undef	HAVE_BUILTIN_EXPECT
96*51ab221fSAlexander von Gluck IV 
97*51ab221fSAlexander von Gluck IV /* Define if the compiler supports __builtin_memset.  */
98*51ab221fSAlexander von Gluck IV #undef	HAVE_BUILTIN_MEMSET
99*51ab221fSAlexander von Gluck IV 
100*51ab221fSAlexander von Gluck IV /* Define if the __thread keyword is supported.  */
101*51ab221fSAlexander von Gluck IV #undef HAVE___THREAD
102*51ab221fSAlexander von Gluck IV 
103*51ab221fSAlexander von Gluck IV /* Define if the compiler supports __attribute__((tls_model(""))).  */
104*51ab221fSAlexander von Gluck IV #undef HAVE_TLS_MODEL_ATTRIBUTE
105*51ab221fSAlexander von Gluck IV 
106*51ab221fSAlexander von Gluck IV /* Define if the regparm attribute shall be used for local functions
107*51ab221fSAlexander von Gluck IV    (gcc on ix86 only).  */
108*51ab221fSAlexander von Gluck IV #define	USE_REGPARMS 0
109*51ab221fSAlexander von Gluck IV 
110*51ab221fSAlexander von Gluck IV /* Defined on PowerPC if the GCC being used has a problem with clobbering
111*51ab221fSAlexander von Gluck IV    certain registers (CR0, MQ, CTR, LR) in asm statements.  */
112*51ab221fSAlexander von Gluck IV #undef	BROKEN_PPC_ASM_CR0
113*51ab221fSAlexander von Gluck IV 
114*51ab221fSAlexander von Gluck IV /* Defined on SPARC if ld doesn't handle R_SPARC_WDISP22 against .hidden
115*51ab221fSAlexander von Gluck IV    symbol.  sysdeps/sparc/sparc32/elf/configure.  */
116*51ab221fSAlexander von Gluck IV #undef	BROKEN_SPARC_WDISP22
117*51ab221fSAlexander von Gluck IV 
118*51ab221fSAlexander von Gluck IV /* Define if the linker supports the -z combreloc option.  */
119*51ab221fSAlexander von Gluck IV #undef	HAVE_Z_COMBRELOC
120*51ab221fSAlexander von Gluck IV 
121*51ab221fSAlexander von Gluck IV /* Define if the assembler supported .protected.  */
122*51ab221fSAlexander von Gluck IV #undef	HAVE_PROTECTED
123*51ab221fSAlexander von Gluck IV 
124*51ab221fSAlexander von Gluck IV /* Define if the assembler supported .hidden.  */
125*51ab221fSAlexander von Gluck IV #undef	HAVE_HIDDEN
126*51ab221fSAlexander von Gluck IV 
127*51ab221fSAlexander von Gluck IV /* Define if the compiler supports __attribute__ ((visibility (...))).  */
128*51ab221fSAlexander von Gluck IV #undef	HAVE_VISIBILITY_ATTRIBUTE
129*51ab221fSAlexander von Gluck IV 
130*51ab221fSAlexander von Gluck IV /* Define if the compiler doesn't support __attribute__ ((visibility (...)))
131*51ab221fSAlexander von Gluck IV    together with __asm__ redirection properly.  */
132*51ab221fSAlexander von Gluck IV #undef	HAVE_BROKEN_VISIBILITY_ATTRIBUTE
133*51ab221fSAlexander von Gluck IV 
134*51ab221fSAlexander von Gluck IV /* Define if the compiler doesn't support __attribute__ ((alias (...)))
135*51ab221fSAlexander von Gluck IV    together with __asm__ redirection properly.  */
136*51ab221fSAlexander von Gluck IV #undef	HAVE_BROKEN_ALIAS_ATTRIBUTE
137*51ab221fSAlexander von Gluck IV 
138*51ab221fSAlexander von Gluck IV /* Define if _rtld_local structure should be forced into .sdata section.  */
139*51ab221fSAlexander von Gluck IV #undef	HAVE_SDATA_SECTION
140*51ab221fSAlexander von Gluck IV 
141*51ab221fSAlexander von Gluck IV /* Define if binutils support TLS handling.  */
142*51ab221fSAlexander von Gluck IV #undef	HAVE_TLS_SUPPORT
143*51ab221fSAlexander von Gluck IV 
144*51ab221fSAlexander von Gluck IV /* Define if the linker supports .preinit_array/.init_array/.fini_array
145*51ab221fSAlexander von Gluck IV    sections.  */
146*51ab221fSAlexander von Gluck IV #undef	HAVE_INITFINI_ARRAY
147*51ab221fSAlexander von Gluck IV 
148*51ab221fSAlexander von Gluck IV /* Define if the access to static and hidden variables is position independent
149*51ab221fSAlexander von Gluck IV    and does not need relocations.  */
150*51ab221fSAlexander von Gluck IV #undef	PI_STATIC_AND_HIDDEN
151*51ab221fSAlexander von Gluck IV 
152*51ab221fSAlexander von Gluck IV /* Define this to disable the `hidden_proto' et al macros in
153*51ab221fSAlexander von Gluck IV    include/libc-symbols.h that avoid PLT slots in the shared objects.  */
154*51ab221fSAlexander von Gluck IV #undef	NO_HIDDEN
155*51ab221fSAlexander von Gluck IV 
156*51ab221fSAlexander von Gluck IV 
157*51ab221fSAlexander von Gluck IV /* Defined to some form of __attribute__ ((...)) if the compiler supports
158*51ab221fSAlexander von Gluck IV    a different, more efficient calling convention.  */
159*51ab221fSAlexander von Gluck IV #if USE_REGPARMS && !defined PROF && !defined __BOUNDED_POINTERS__
160*51ab221fSAlexander von Gluck IV # define internal_function __attribute__ ((regparm (3), stdcall))
161*51ab221fSAlexander von Gluck IV #endif
162*51ab221fSAlexander von Gluck IV 
163*51ab221fSAlexander von Gluck IV /* Linux specific: minimum supported kernel version.  */
164*51ab221fSAlexander von Gluck IV #undef	__LINUX_KERNEL_VERSION
165*51ab221fSAlexander von Gluck IV 
166*51ab221fSAlexander von Gluck IV /* Override abi-tags ABI version if necessary.  */
167*51ab221fSAlexander von Gluck IV #undef  __ABI_TAG_VERSION
168*51ab221fSAlexander von Gluck IV 
169*51ab221fSAlexander von Gluck IV /* An extension in gcc 2.96 and up allows the subtraction of two
170*51ab221fSAlexander von Gluck IV    local labels.  */
171*51ab221fSAlexander von Gluck IV #undef	HAVE_SUBTRACT_LOCAL_LABELS
172*51ab221fSAlexander von Gluck IV 
173*51ab221fSAlexander von Gluck IV /* bash 2.0 introduced the _XXX_GNU_nonoption_argv_flags_ variable to help
174*51ab221fSAlexander von Gluck IV    getopt determine whether a parameter is a flag or not.  This features
175*51ab221fSAlexander von Gluck IV    was disabled later since it caused trouble.  We are by default therefore
176*51ab221fSAlexander von Gluck IV    disabling the support as well.  */
177*51ab221fSAlexander von Gluck IV #undef USE_NONOPTION_FLAGS
178*51ab221fSAlexander von Gluck IV 
179*51ab221fSAlexander von Gluck IV /* Mach/Hurd specific: define if mig supports the `retcode' keyword.  */
180*51ab221fSAlexander von Gluck IV #undef	HAVE_MIG_RETCODE
181*51ab221fSAlexander von Gluck IV 
182*51ab221fSAlexander von Gluck IV /* Mach specific: define if the `host_page_size' RPC is available.  */
183*51ab221fSAlexander von Gluck IV #undef	HAVE_HOST_PAGE_SIZE
184*51ab221fSAlexander von Gluck IV 
185*51ab221fSAlexander von Gluck IV /* Mach/i386 specific: define if the `i386_io_perm_*' RPCs are available.  */
186*51ab221fSAlexander von Gluck IV #undef	HAVE_I386_IO_PERM_MODIFY
187*51ab221fSAlexander von Gluck IV 
188*51ab221fSAlexander von Gluck IV /* Mach/i386 specific: define if the `i386_set_gdt' RPC is available.  */
189*51ab221fSAlexander von Gluck IV #undef	HAVE_I386_SET_GDT
190*51ab221fSAlexander von Gluck IV 
191*51ab221fSAlexander von Gluck IV /*
192*51ab221fSAlexander von Gluck IV  */
193*51ab221fSAlexander von Gluck IV 
194*51ab221fSAlexander von Gluck IV #ifndef	_LIBC
195*51ab221fSAlexander von Gluck IV 
196*51ab221fSAlexander von Gluck IV /* These symbols might be defined by some sysdeps configures.
197*51ab221fSAlexander von Gluck IV    They are used only in miscellaneous generator programs, not
198*51ab221fSAlexander von Gluck IV    in compiling libc itself.   */
199*51ab221fSAlexander von Gluck IV 
200*51ab221fSAlexander von Gluck IV /* sysdeps/generic/configure.in */
201*51ab221fSAlexander von Gluck IV #undef	HAVE_PSIGNAL
202*51ab221fSAlexander von Gluck IV 
203*51ab221fSAlexander von Gluck IV /* sysdeps/unix/configure.in */
204*51ab221fSAlexander von Gluck IV #define	HAVE_STRERROR
205*51ab221fSAlexander von Gluck IV 
206*51ab221fSAlexander von Gluck IV /* sysdeps/unix/common/configure.in */
207*51ab221fSAlexander von Gluck IV #undef	HAVE_SYS_SIGLIST
208*51ab221fSAlexander von Gluck IV #undef	HAVE__SYS_SIGLIST
209*51ab221fSAlexander von Gluck IV #undef	HAVE__CTYPE_
210*51ab221fSAlexander von Gluck IV #undef	HAVE___CTYPE_
211*51ab221fSAlexander von Gluck IV #undef	HAVE___CTYPE
212*51ab221fSAlexander von Gluck IV #undef	HAVE__CTYPE__
213*51ab221fSAlexander von Gluck IV #undef	HAVE__CTYPE
214*51ab221fSAlexander von Gluck IV #undef	HAVE__LOCP
215*51ab221fSAlexander von Gluck IV 
216*51ab221fSAlexander von Gluck IV #endif
217*51ab221fSAlexander von Gluck IV 
218*51ab221fSAlexander von Gluck IV /*
219*51ab221fSAlexander von Gluck IV  */
220*51ab221fSAlexander von Gluck IV 
221*51ab221fSAlexander von Gluck IV #ifdef	_LIBC
222*51ab221fSAlexander von Gluck IV 
223*51ab221fSAlexander von Gluck IV /* The zic and zdump programs need these definitions.  */
224*51ab221fSAlexander von Gluck IV 
225*51ab221fSAlexander von Gluck IV #define	HAVE_STRERROR	1
226*51ab221fSAlexander von Gluck IV 
227*51ab221fSAlexander von Gluck IV /* The locale code needs these definitions.  */
228*51ab221fSAlexander von Gluck IV 
229*51ab221fSAlexander von Gluck IV #define HAVE_REGEX 1
230*51ab221fSAlexander von Gluck IV 
231*51ab221fSAlexander von Gluck IV //#define HAVE_MMAP 1
232*51ab221fSAlexander von Gluck IV #undef HAVE_MMAP
233*51ab221fSAlexander von Gluck IV 
234*51ab221fSAlexander von Gluck IV #endif
235*51ab221fSAlexander von Gluck IV 
236