]> git.ipfire.org Git - thirdparty/gcc.git/blob - libstdc++-v3/crossconfig.m4
libstdc++-v3/
[thirdparty/gcc.git] / libstdc++-v3 / crossconfig.m4
1 dnl
2 dnl This file contains details for non-native builds.
3 dnl
4
5 AC_DEFUN([GLIBCXX_CROSSCONFIG],[
6 # Base decisions on target environment.
7 case "${host}" in
8 arm*-*-symbianelf*)
9 # This is a freestanding configuration; there is nothing to do here.
10 ;;
11
12 mips*-sde-elf*)
13 # These definitions are for the SDE C library rather than newlib.
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
19 GLIBCXX_CHECK_STDLIB_SUPPORT
20
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
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
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.
45
46 # Don't call GLIBCXX_CHECK_LINKER_FEATURES, Darwin doesn't have a GNU ld
47 GLIBCXX_CHECK_MATH_SUPPORT
48 GLIBCXX_CHECK_STDLIB_SUPPORT
49 ;;
50
51 *djgpp)
52 # GLIBCXX_CHECK_MATH_SUPPORT
53 AC_DEFINE(HAVE_ISINF)
54 AC_DEFINE(HAVE_ISNAN)
55 AC_DEFINE(HAVE_FINITE)
56 AC_DEFINE(HAVE_SINCOS)
57 AC_DEFINE(HAVE_HYPOT)
58 ;;
59
60 *-freebsd*)
61 SECTION_FLAGS='-ffunction-sections -fdata-sections'
62 AC_SUBST(SECTION_FLAGS)
63 GLIBCXX_CHECK_LINKER_FEATURES
64 AC_DEFINE(HAVE_SETENV)
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
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)
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*)
103 SECTION_FLAGS='-ffunction-sections -fdata-sections'
104 AC_SUBST(SECTION_FLAGS)
105 GLIBCXX_CHECK_LINKER_FEATURES
106
107 # GLIBCXX_CHECK_MATH_SUPPORT
108 AC_DEFINE(HAVE_ISNAN)
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)
121 AC_DEFINE(HAVE_FABSF)
122 AC_DEFINE(HAVE_FMODF)
123 AC_DEFINE(HAVE_FREXPF)
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
130 # GLIBCXX_CHECK_STDLIB_SUPPORT
131 AC_DEFINE(HAVE_STRTOLD)
132
133 GCC_CHECK_TLS
134 case "$target" in
135 *-hpux10*)
136 AC_DEFINE(HAVE_ISINF)
137 AC_DEFINE(HAVE_ISINFF)
138 AC_DEFINE(HAVE_ISNANF)
139 AC_DEFINE(HAVE_FINITE)
140 AC_DEFINE(HAVE_FINITEF)
141 ;;
142 esac
143 ;;
144 *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu)
145 GLIBCXX_CHECK_COMPILER_FEATURES
146 GLIBCXX_CHECK_LINKER_FEATURES
147 GLIBCXX_CHECK_MATH_SUPPORT
148 GLIBCXX_CHECK_STDLIB_SUPPORT
149 AC_DEFINE(_GLIBCXX_USE_RANDOM_TR1)
150 GCC_CHECK_TLS
151 AM_ICONV
152 ;;
153 *-mingw32*)
154 GLIBCXX_CHECK_LINKER_FEATURES
155 GLIBCXX_CHECK_MATH_SUPPORT
156 GLIBCXX_CHECK_STDLIB_SUPPORT
157 ;;
158 *-netbsd*)
159 SECTION_FLAGS='-ffunction-sections -fdata-sections'
160 AC_SUBST(SECTION_FLAGS)
161 GLIBCXX_CHECK_LINKER_FEATURES
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 *-netware)
177 SECTION_FLAGS='-ffunction-sections -fdata-sections'
178 AC_SUBST(SECTION_FLAGS)
179 GLIBCXX_CHECK_LINKER_FEATURES
180 AC_DEFINE(HAVE_HYPOT)
181 AC_DEFINE(HAVE_ISINF)
182 AC_DEFINE(HAVE_ISNAN)
183 ;;
184 *-qnx6.1* | *-qnx6.2*)
185 SECTION_FLAGS='-ffunction-sections -fdata-sections'
186 AC_SUBST(SECTION_FLAGS)
187 GLIBCXX_CHECK_LINKER_FEATURES
188 AC_DEFINE(HAVE_COSF)
189 AC_DEFINE(HAVE_COSL)
190 AC_DEFINE(HAVE_COSHF)
191 AC_DEFINE(HAVE_COSHL)
192 AC_DEFINE(HAVE_LOGF)
193 AC_DEFINE(HAVE_LOGL)
194 AC_DEFINE(HAVE_LOG10F)
195 AC_DEFINE(HAVE_LOG10L)
196 AC_DEFINE(HAVE_SINF)
197 AC_DEFINE(HAVE_SINL)
198 AC_DEFINE(HAVE_SINHF)
199 AC_DEFINE(HAVE_SINHL)
200 ;;
201 *-solaris*)
202 case "$target" in
203 *-solaris2.7 | *-solaris2.8 | *-solaris2.9 | *-solaris2.10)
204 GLIBCXX_CHECK_LINKER_FEATURES
205 AC_DEFINE(HAVE_MBSTATE_T)
206 AC_DEFINE(HAVE_FINITE)
207 AC_DEFINE(HAVE_FPCLASS)
208 # All of the dependencies for wide character support are here, so
209 # turn it on.
210 AC_DEFINE(_GLIBCXX_USE_WCHAR_T)
211 ;;
212 esac
213 case "$target" in
214 *-*-solaris2.10)
215 # These two C99 functions are present only in Solaris >= 10
216 AC_DEFINE(HAVE_STRTOF)
217 AC_DEFINE(HAVE_STRTOLD)
218 ;;
219 esac
220 AC_DEFINE(HAVE_ISNAN)
221 AC_DEFINE(HAVE_ISNANF)
222 AC_DEFINE(HAVE_MODFF)
223 AC_DEFINE(HAVE_HYPOT)
224 ;;
225 *-tpf)
226 SECTION_FLAGS='-ffunction-sections -fdata-sections'
227 AC_SUBST(SECTION_FLAGS)
228 GLIBCXX_CHECK_LINKER_FEATURES
229 AC_DEFINE(HAVE_FINITE)
230 AC_DEFINE(HAVE_FINITEF)
231 AC_DEFINE(HAVE_FREXPF)
232 AC_DEFINE(HAVE_HYPOTF)
233 AC_DEFINE(HAVE_ISINF)
234 AC_DEFINE(HAVE_ISINFF)
235 AC_DEFINE(HAVE_ISNAN)
236 AC_DEFINE(HAVE_ISNANF)
237 AC_DEFINE(HAVE_SINCOS)
238 AC_DEFINE(HAVE_SINCOSF)
239 if test x"long_double_math_on_this_cpu" = x"yes"; then
240 AC_DEFINE(HAVE_FINITEL)
241 AC_DEFINE(HAVE_HYPOTL)
242 AC_DEFINE(HAVE_ISINFL)
243 AC_DEFINE(HAVE_ISNANL)
244 fi
245 ;;
246 *-vxworks)
247 AC_DEFINE(HAVE_ACOSF)
248 AC_DEFINE(HAVE_ASINF)
249 AC_DEFINE(HAVE_ATAN2F)
250 AC_DEFINE(HAVE_ATANF)
251 AC_DEFINE(HAVE_CEILF)
252 AC_DEFINE(HAVE_COSF)
253 AC_DEFINE(HAVE_COSHF)
254 AC_DEFINE(HAVE_EXPF)
255 AC_DEFINE(HAVE_FABSF)
256 AC_DEFINE(HAVE_FLOORF)
257 AC_DEFINE(HAVE_FMODF)
258 AC_DEFINE(HAVE_HYPOT)
259 AC_DEFINE(HAVE_LOG10F)
260 AC_DEFINE(HAVE_LOGF)
261 AC_DEFINE(HAVE_POWF)
262 AC_DEFINE(HAVE_SINF)
263 AC_DEFINE(HAVE_SINHF)
264 AC_DEFINE(HAVE_SQRTF)
265 AC_DEFINE(HAVE_TANF)
266 AC_DEFINE(HAVE_TANHF)
267 ;;
268 *)
269 AC_MSG_ERROR([No support for this host/target combination.])
270 ;;
271 esac
272 ])