]>
Commit | Line | Data |
---|---|---|
ff66d28f | 1 | dnl |
552afe9e | 2 | dnl This file contains details for non-native builds. |
ff66d28f PE |
3 | dnl |
4 | ||
c41f82b2 | 5 | AC_DEFUN([GLIBCXX_CROSSCONFIG],[ |
ff66d28f PE |
6 | # Base decisions on target environment. |
7 | case "${host}" in | |
4c24b21a MM |
8 | arm*-*-symbianelf*) |
9 | # This is a freestanding configuration; there is nothing to do here. | |
10 | ;; | |
11 | ||
d9dced13 RS |
12 | mips*-sde-elf*) |
13 | # These definitions are for the SDE C library rather than newlib. | |
d9dced13 RS |
14 | SECTION_FLAGS='-ffunction-sections -fdata-sections' |
15 | AC_SUBST(SECTION_FLAGS) | |
16 | GLIBCXX_CHECK_COMPILER_FEATURES | |
17 | GLIBCXX_CHECK_LINKER_FEATURES | |
18 | GLIBCXX_CHECK_MATH_SUPPORT | |
d9dced13 | 19 | GLIBCXX_CHECK_STDLIB_SUPPORT |
d9dced13 | 20 | |
d9dced13 RS |
21 | AC_DEFINE(HAVE_FINITE) |
22 | AC_DEFINE(HAVE_HYPOT) | |
23 | AC_DEFINE(HAVE_ISNAN) | |
24 | AC_DEFINE(HAVE_ISINF) | |
25 | ||
26 | AC_DEFINE(HAVE_LDEXPF) | |
27 | AC_DEFINE(HAVE_MODF) | |
28 | AC_DEFINE(HAVE_SQRTF) | |
29 | ;; | |
30 | ||
70ed7339 RS |
31 | *-aix*) |
32 | GLIBCXX_CHECK_LINKER_FEATURES | |
33 | GLIBCXX_CHECK_MATH_SUPPORT | |
34 | GLIBCXX_CHECK_STDLIB_SUPPORT | |
35 | AC_DEFINE(_GLIBCXX_USE_RANDOM_TR1) | |
36 | # We don't yet support AIX's TLS ABI. | |
37 | #GCC_CHECK_TLS | |
38 | AM_ICONV | |
39 | ;; | |
40 | ||
a6f3e253 GK |
41 | *-darwin*) |
42 | # Darwin versions vary, but the linker should work in a cross environment, | |
43 | # so we just check for all the features here. | |
44 | # Check for available headers. | |
a6f3e253 | 45 | |
a6f3e253 GK |
46 | # Don't call GLIBCXX_CHECK_LINKER_FEATURES, Darwin doesn't have a GNU ld |
47 | GLIBCXX_CHECK_MATH_SUPPORT | |
a6f3e253 | 48 | GLIBCXX_CHECK_STDLIB_SUPPORT |
a6f3e253 GK |
49 | ;; |
50 | ||
185fca74 | 51 | *djgpp) |
9f1fd474 | 52 | # GLIBCXX_CHECK_MATH_SUPPORT |
9bb68d2a DD |
53 | AC_DEFINE(HAVE_ISINF) |
54 | AC_DEFINE(HAVE_ISNAN) | |
55 | AC_DEFINE(HAVE_FINITE) | |
9bb68d2a DD |
56 | AC_DEFINE(HAVE_SINCOS) |
57 | AC_DEFINE(HAVE_HYPOT) | |
185fca74 AH |
58 | ;; |
59 | ||
ff66d28f | 60 | *-freebsd*) |
ff66d28f PE |
61 | SECTION_FLAGS='-ffunction-sections -fdata-sections' |
62 | AC_SUBST(SECTION_FLAGS) | |
63 | GLIBCXX_CHECK_LINKER_FEATURES | |
ff66d28f | 64 | AC_DEFINE(HAVE_SETENV) |
ff66d28f PE |
65 | AC_DEFINE(HAVE_FINITEF) |
66 | AC_DEFINE(HAVE_FINITE) | |
67 | AC_DEFINE(HAVE_FREXPF) | |
68 | AC_DEFINE(HAVE_HYPOT) | |
69 | AC_DEFINE(HAVE_HYPOTF) | |
70 | AC_DEFINE(HAVE_ISINF) | |
71 | AC_DEFINE(HAVE_ISNAN) | |
72 | AC_DEFINE(HAVE_ISNANF) | |
73 | ||
ff66d28f PE |
74 | AC_DEFINE(HAVE_ACOSF) |
75 | AC_DEFINE(HAVE_ASINF) | |
76 | AC_DEFINE(HAVE_ATAN2F) | |
77 | AC_DEFINE(HAVE_ATANF) | |
78 | AC_DEFINE(HAVE_CEILF) | |
ff66d28f PE |
79 | AC_DEFINE(HAVE_COSF) |
80 | AC_DEFINE(HAVE_COSHF) | |
81 | AC_DEFINE(HAVE_EXPF) | |
82 | AC_DEFINE(HAVE_FABSF) | |
83 | AC_DEFINE(HAVE_FLOORF) | |
84 | AC_DEFINE(HAVE_FMODF) | |
85 | AC_DEFINE(HAVE_FREXPF) | |
86 | AC_DEFINE(HAVE_LDEXPF) | |
87 | AC_DEFINE(HAVE_LOG10F) | |
88 | AC_DEFINE(HAVE_LOGF) | |
89 | AC_DEFINE(HAVE_MODFF) | |
90 | AC_DEFINE(HAVE_POWF) | |
91 | AC_DEFINE(HAVE_SINF) | |
92 | AC_DEFINE(HAVE_SINHF) | |
93 | AC_DEFINE(HAVE_SQRTF) | |
94 | AC_DEFINE(HAVE_TANF) | |
95 | AC_DEFINE(HAVE_TANHF) | |
96 | if test x"long_double_math_on_this_cpu" = x"yes"; then | |
97 | AC_DEFINE(HAVE_FINITEL) | |
98 | AC_DEFINE(HAVE_ISINFL) | |
99 | AC_DEFINE(HAVE_ISNANL) | |
100 | fi | |
101 | ;; | |
102 | *-hpux*) | |
ff66d28f PE |
103 | SECTION_FLAGS='-ffunction-sections -fdata-sections' |
104 | AC_SUBST(SECTION_FLAGS) | |
105 | GLIBCXX_CHECK_LINKER_FEATURES | |
55c8e6a3 BK |
106 | |
107 | # GLIBCXX_CHECK_MATH_SUPPORT | |
108 | AC_DEFINE(HAVE_ISNAN) | |
55c8e6a3 BK |
109 | AC_DEFINE(HAVE_HYPOT) |
110 | AC_DEFINE(HAVE_ACOSF) | |
111 | AC_DEFINE(HAVE_ASINF) | |
112 | AC_DEFINE(HAVE_ATANF) | |
113 | AC_DEFINE(HAVE_COSF) | |
114 | AC_DEFINE(HAVE_COSHF) | |
115 | AC_DEFINE(HAVE_SINF) | |
116 | AC_DEFINE(HAVE_SINHF) | |
117 | AC_DEFINE(HAVE_TANF) | |
118 | AC_DEFINE(HAVE_TANHF) | |
119 | AC_DEFINE(HAVE_EXPF) | |
120 | AC_DEFINE(HAVE_ATAN2F) | |
4564ac62 | 121 | AC_DEFINE(HAVE_FABSF) |
55c8e6a3 | 122 | AC_DEFINE(HAVE_FMODF) |
ff66d28f | 123 | AC_DEFINE(HAVE_FREXPF) |
55c8e6a3 BK |
124 | AC_DEFINE(HAVE_LOGF) |
125 | AC_DEFINE(HAVE_LOG10F) | |
126 | AC_DEFINE(HAVE_MODF) | |
127 | AC_DEFINE(HAVE_POWF) | |
128 | AC_DEFINE(HAVE_SQRTF) | |
129 | ||
55c8e6a3 BK |
130 | # GLIBCXX_CHECK_STDLIB_SUPPORT |
131 | AC_DEFINE(HAVE_STRTOLD) | |
132 | ||
133 | GCC_CHECK_TLS | |
ff66d28f PE |
134 | case "$target" in |
135 | *-hpux10*) | |
ff66d28f PE |
136 | AC_DEFINE(HAVE_ISINF) |
137 | AC_DEFINE(HAVE_ISINFF) | |
ff66d28f | 138 | AC_DEFINE(HAVE_ISNANF) |
55c8e6a3 BK |
139 | AC_DEFINE(HAVE_FINITE) |
140 | AC_DEFINE(HAVE_FINITEF) | |
ff66d28f PE |
141 | ;; |
142 | esac | |
143 | ;; | |
7e866c8b | 144 | *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu | *-cygwin*) |
464aea98 | 145 | GLIBCXX_CHECK_COMPILER_FEATURES |
ff66d28f | 146 | GLIBCXX_CHECK_LINKER_FEATURES |
464aea98 | 147 | GLIBCXX_CHECK_MATH_SUPPORT |
464aea98 | 148 | GLIBCXX_CHECK_STDLIB_SUPPORT |
bffc9d79 | 149 | AC_DEFINE(_GLIBCXX_USE_RANDOM_TR1) |
55c8e6a3 | 150 | GCC_CHECK_TLS |
bffc9d79 | 151 | AM_ICONV |
ff66d28f PE |
152 | ;; |
153 | *-mingw32*) | |
ff66d28f | 154 | GLIBCXX_CHECK_LINKER_FEATURES |
53f506ed BK |
155 | GLIBCXX_CHECK_MATH_SUPPORT |
156 | GLIBCXX_CHECK_STDLIB_SUPPORT | |
ff66d28f PE |
157 | ;; |
158 | *-netbsd*) | |
ff66d28f PE |
159 | SECTION_FLAGS='-ffunction-sections -fdata-sections' |
160 | AC_SUBST(SECTION_FLAGS) | |
161 | GLIBCXX_CHECK_LINKER_FEATURES | |
ff66d28f PE |
162 | AC_DEFINE(HAVE_FINITEF) |
163 | AC_DEFINE(HAVE_FINITE) | |
164 | AC_DEFINE(HAVE_FREXPF) | |
165 | AC_DEFINE(HAVE_HYPOTF) | |
166 | AC_DEFINE(HAVE_ISINF) | |
167 | AC_DEFINE(HAVE_ISINFF) | |
168 | AC_DEFINE(HAVE_ISNAN) | |
169 | AC_DEFINE(HAVE_ISNANF) | |
170 | if test x"long_double_math_on_this_cpu" = x"yes"; then | |
171 | AC_DEFINE(HAVE_FINITEL) | |
172 | AC_DEFINE(HAVE_ISINFL) | |
173 | AC_DEFINE(HAVE_ISNANL) | |
174 | fi | |
175 | ;; | |
176 | *-qnx6.1* | *-qnx6.2*) | |
ff66d28f PE |
177 | SECTION_FLAGS='-ffunction-sections -fdata-sections' |
178 | AC_SUBST(SECTION_FLAGS) | |
179 | GLIBCXX_CHECK_LINKER_FEATURES | |
ff66d28f PE |
180 | AC_DEFINE(HAVE_COSF) |
181 | AC_DEFINE(HAVE_COSL) | |
182 | AC_DEFINE(HAVE_COSHF) | |
183 | AC_DEFINE(HAVE_COSHL) | |
184 | AC_DEFINE(HAVE_LOGF) | |
185 | AC_DEFINE(HAVE_LOGL) | |
186 | AC_DEFINE(HAVE_LOG10F) | |
187 | AC_DEFINE(HAVE_LOG10L) | |
188 | AC_DEFINE(HAVE_SINF) | |
189 | AC_DEFINE(HAVE_SINL) | |
190 | AC_DEFINE(HAVE_SINHF) | |
191 | AC_DEFINE(HAVE_SINHL) | |
192 | ;; | |
07ecaaf9 RC |
193 | *-rtems*) |
194 | GLIBCXX_CHECK_COMPILER_FEATURES | |
195 | GLIBCXX_CHECK_LINKER_FEATURES | |
196 | GLIBCXX_CHECK_MATH_SUPPORT | |
197 | GLIBCXX_CHECK_STDLIB_SUPPORT | |
198 | ;; | |
ff66d28f | 199 | *-solaris*) |
2b1be54b | 200 | case "$target" in |
7888f266 | 201 | *-solaris2.9 | *-solaris2.10) |
e2c104d8 | 202 | GLIBCXX_CHECK_LINKER_FEATURES |
2b1be54b | 203 | AC_DEFINE(HAVE_MBSTATE_T) |
2b1be54b BS |
204 | AC_DEFINE(HAVE_FINITE) |
205 | AC_DEFINE(HAVE_FPCLASS) | |
2b1be54b | 206 | # All of the dependencies for wide character support are here, so |
4ffe6e87 | 207 | # turn it on. |
2b1be54b | 208 | AC_DEFINE(_GLIBCXX_USE_WCHAR_T) |
2b1be54b BS |
209 | ;; |
210 | esac | |
ddf2a54a BS |
211 | case "$target" in |
212 | *-*-solaris2.10) | |
213 | # These two C99 functions are present only in Solaris >= 10 | |
214 | AC_DEFINE(HAVE_STRTOF) | |
215 | AC_DEFINE(HAVE_STRTOLD) | |
216 | ;; | |
217 | esac | |
ff66d28f PE |
218 | AC_DEFINE(HAVE_ISNAN) |
219 | AC_DEFINE(HAVE_ISNANF) | |
220 | AC_DEFINE(HAVE_MODFF) | |
221 | AC_DEFINE(HAVE_HYPOT) | |
222 | ;; | |
6e198ee0 | 223 | *-tpf) |
6e198ee0 | 224 | SECTION_FLAGS='-ffunction-sections -fdata-sections' |
40f93bb5 | 225 | SECTION_LDFLAGS='-Wl,--gc-sections $SECTION_LDFLAGS' |
6e198ee0 | 226 | AC_SUBST(SECTION_FLAGS) |
6e198ee0 UW |
227 | AC_DEFINE(HAVE_FINITE) |
228 | AC_DEFINE(HAVE_FINITEF) | |
229 | AC_DEFINE(HAVE_FREXPF) | |
230 | AC_DEFINE(HAVE_HYPOTF) | |
231 | AC_DEFINE(HAVE_ISINF) | |
232 | AC_DEFINE(HAVE_ISINFF) | |
233 | AC_DEFINE(HAVE_ISNAN) | |
234 | AC_DEFINE(HAVE_ISNANF) | |
235 | AC_DEFINE(HAVE_SINCOS) | |
236 | AC_DEFINE(HAVE_SINCOSF) | |
237 | if test x"long_double_math_on_this_cpu" = x"yes"; then | |
238 | AC_DEFINE(HAVE_FINITEL) | |
239 | AC_DEFINE(HAVE_HYPOTL) | |
240 | AC_DEFINE(HAVE_ISINFL) | |
241 | AC_DEFINE(HAVE_ISNANL) | |
242 | fi | |
243 | ;; | |
db435dce TG |
244 | *-*vms*) |
245 | # Check for available headers. | |
246 | # Don't call GLIBCXX_CHECK_LINKER_FEATURES, VMS doesn't have a GNU ld | |
247 | GLIBCXX_CHECK_MATH_SUPPORT | |
248 | GLIBCXX_CHECK_STDLIB_SUPPORT | |
249 | ;; | |
65fc9769 | 250 | *-vxworks) |
65fc9769 PE |
251 | AC_DEFINE(HAVE_ACOSF) |
252 | AC_DEFINE(HAVE_ASINF) | |
253 | AC_DEFINE(HAVE_ATAN2F) | |
254 | AC_DEFINE(HAVE_ATANF) | |
255 | AC_DEFINE(HAVE_CEILF) | |
256 | AC_DEFINE(HAVE_COSF) | |
257 | AC_DEFINE(HAVE_COSHF) | |
258 | AC_DEFINE(HAVE_EXPF) | |
259 | AC_DEFINE(HAVE_FABSF) | |
260 | AC_DEFINE(HAVE_FLOORF) | |
261 | AC_DEFINE(HAVE_FMODF) | |
262 | AC_DEFINE(HAVE_HYPOT) | |
263 | AC_DEFINE(HAVE_LOG10F) | |
264 | AC_DEFINE(HAVE_LOGF) | |
265 | AC_DEFINE(HAVE_POWF) | |
266 | AC_DEFINE(HAVE_SINF) | |
267 | AC_DEFINE(HAVE_SINHF) | |
268 | AC_DEFINE(HAVE_SQRTF) | |
269 | AC_DEFINE(HAVE_TANF) | |
270 | AC_DEFINE(HAVE_TANHF) | |
271 | ;; | |
ff66d28f PE |
272 | *) |
273 | AC_MSG_ERROR([No support for this host/target combination.]) | |
274 | ;; | |
275 | esac | |
c41f82b2 | 276 | ]) |