Initial revision
[openwrt/staging/dedeckeh.git] / openwrt / toolchain / gcc / 3.3.4 / 100-uclibc-conf.patch
1 diff -urN gcc-3.3.3-dist/boehm-gc/config.sub gcc-3.3.3/boehm-gc/config.sub
2 --- gcc-3.3.3-dist/boehm-gc/config.sub 2002-02-11 22:37:53.000000000 -0600
3 +++ gcc-3.3.3/boehm-gc/config.sub 2004-08-12 04:47:51.000000000 -0500
4 @@ -118,7 +118,7 @@
5 # Here we must recognize all the valid KERNEL-OS combinations.
6 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
7 case $maybe_os in
8 - nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
9 + nto-qnx* | linux-gnu* | linux-uclibc* | storm-chaos* | os2-emx* | windows32-*)
10 os=-$maybe_os
11 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
12 ;;
13 @@ -1089,7 +1089,8 @@
14 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
15 | -chorusos* | -chorusrdb* \
16 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
17 - | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
18 + | -mingw32* | -linux-gnu* | -linux-uclibc* \
19 + | -uxpv* | -beos* | -mpeix* | -udk* \
20 | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
21 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
22 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
23 diff -urN gcc-3.3.3-dist/boehm-gc/configure gcc-3.3.3/boehm-gc/configure
24 --- gcc-3.3.3-dist/boehm-gc/configure 2004-02-14 14:34:20.000000000 -0600
25 +++ gcc-3.3.3/boehm-gc/configure 2004-08-12 04:47:51.000000000 -0500
26 @@ -1940,6 +1940,11 @@
27 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
28 ;;
29
30 +linux-uclibc*)
31 + lt_cv_deplibs_check_method=pass_all
32 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
33 + ;;
34 +
35 netbsd*)
36 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
37 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
38 diff -urN gcc-3.3.3-dist/config.sub gcc-3.3.3/config.sub
39 --- gcc-3.3.3-dist/config.sub 2003-01-30 17:25:36.000000000 -0600
40 +++ gcc-3.3.3/config.sub 2004-08-12 04:47:51.000000000 -0500
41 @@ -118,7 +118,7 @@
42 # Here we must recognize all the valid KERNEL-OS combinations.
43 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
44 case $maybe_os in
45 - nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
46 + nto-qnx* | linux-gnu* | linux-uclibc* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
47 os=-$maybe_os
48 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
49 ;;
50 @@ -1112,7 +1112,8 @@
51 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
52 | -chorusos* | -chorusrdb* \
53 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
54 - | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
55 + | -mingw32* | -linux-gnu* | -linux-uclibc* \
56 + | -uxpv* | -beos* | -mpeix* | -udk* \
57 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
58 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
59 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
60 diff -urN gcc-3.3.3-dist/gcc/config/arm/linux-elf.h gcc-3.3.3/gcc/config/arm/linux-elf.h
61 --- gcc-3.3.3-dist/gcc/config/arm/linux-elf.h 2003-09-16 10:39:23.000000000 -0500
62 +++ gcc-3.3.3/gcc/config/arm/linux-elf.h 2004-08-12 04:47:51.000000000 -0500
63 @@ -78,6 +78,18 @@
64 "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
65
66 #undef LINK_SPEC
67 +#ifdef USE_UCLIBC
68 +#define LINK_SPEC "%{h*} %{version:-v} \
69 + %{b} %{Wl,*:%*} \
70 + %{static:-Bstatic} \
71 + %{shared:-shared} \
72 + %{symbolic:-Bsymbolic} \
73 + %{rdynamic:-export-dynamic} \
74 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \
75 + -X \
76 + %{mbig-endian:-EB}" \
77 + SUBTARGET_EXTRA_LINK_SPEC
78 +#else
79 #define LINK_SPEC "%{h*} %{version:-v} \
80 %{b} %{Wl,*:%*} \
81 %{static:-Bstatic} \
82 @@ -88,6 +100,7 @@
83 -X \
84 %{mbig-endian:-EB}" \
85 SUBTARGET_EXTRA_LINK_SPEC
86 +#endif
87
88 #define TARGET_OS_CPP_BUILTINS() \
89 do { \
90 diff -urN gcc-3.3.3-dist/gcc/config/cris/linux.h gcc-3.3.3/gcc/config/cris/linux.h
91 --- gcc-3.3.3-dist/gcc/config/cris/linux.h 2003-03-10 21:01:35.000000000 -0600
92 +++ gcc-3.3.3/gcc/config/cris/linux.h 2004-08-12 04:47:51.000000000 -0500
93 @@ -81,6 +81,25 @@
94 #undef CRIS_DEFAULT_CPU_VERSION
95 #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
96
97 +#ifdef USE_UCLIBC
98 +
99 +#undef CRIS_SUBTARGET_VERSION
100 +#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
101 +
102 +#undef CRIS_LINK_SUBTARGET_SPEC
103 +#define CRIS_LINK_SUBTARGET_SPEC \
104 + "-mcrislinux\
105 + -rpath-link include/asm/../..%s\
106 + %{shared} %{static}\
107 + %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\
108 + %{!shared: \
109 + %{!static: \
110 + %{rdynamic:-export-dynamic} \
111 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \
112 + %{!r:%{O2|O3: --gc-sections}}"
113 +
114 +#else /* USE_UCLIBC */
115 +
116 #undef CRIS_SUBTARGET_VERSION
117 #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
118
119 @@ -95,6 +114,8 @@
120 %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\
121 %{!r:%{O2|O3: --gc-sections}}"
122
123 +#endif /* USE_UCLIBC */
124 +
125
126 /* Node: Run-time Target */
127
128 diff -urN gcc-3.3.3-dist/gcc/config/cris/t-linux-uclibc gcc-3.3.3/gcc/config/cris/t-linux-uclibc
129 --- gcc-3.3.3-dist/gcc/config/cris/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
130 +++ gcc-3.3.3/gcc/config/cris/t-linux-uclibc 2004-08-12 04:47:51.000000000 -0500
131 @@ -0,0 +1,3 @@
132 +T_CFLAGS = -DUSE_UCLIBC
133 +TARGET_LIBGCC2_CFLAGS += -fPIC
134 +CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS)
135 diff -urN gcc-3.3.3-dist/gcc/config/i386/linux.h gcc-3.3.3/gcc/config/i386/linux.h
136 --- gcc-3.3.3-dist/gcc/config/i386/linux.h 2003-11-14 00:46:12.000000000 -0600
137 +++ gcc-3.3.3/gcc/config/i386/linux.h 2004-08-12 04:47:51.000000000 -0500
138 @@ -136,6 +136,15 @@
139 %{static:-static}}}"
140 #endif
141 #else
142 +#if defined USE_UCLIBC
143 +#define LINK_SPEC "-m elf_i386 %{shared:-shared} \
144 + %{!shared: \
145 + %{!ibcs: \
146 + %{!static: \
147 + %{rdynamic:-export-dynamic} \
148 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
149 + %{static:-static}}}"
150 +#else
151 #define LINK_SPEC "-m elf_i386 %{shared:-shared} \
152 %{!shared: \
153 %{!ibcs: \
154 @@ -144,6 +153,7 @@
155 %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
156 %{static:-static}}}"
157 #endif
158 +#endif
159
160 /* A C statement (sans semicolon) to output to the stdio stream
161 FILE the assembler definition of uninitialized global DECL named
162 diff -urN gcc-3.3.3-dist/gcc/config/mips/linux.h gcc-3.3.3/gcc/config/mips/linux.h
163 --- gcc-3.3.3-dist/gcc/config/mips/linux.h 2003-12-23 02:58:00.000000000 -0600
164 +++ gcc-3.3.3/gcc/config/mips/linux.h 2004-08-12 04:47:51.000000000 -0500
165 @@ -175,6 +175,17 @@
166
167 /* Borrowed from sparc/linux.h */
168 #undef LINK_SPEC
169 +#ifdef USE_UCLIBC
170 +#define LINK_SPEC \
171 + "%(endian_spec) \
172 + %{shared:-shared} \
173 + %{!shared: \
174 + %{!ibcs: \
175 + %{!static: \
176 + %{rdynamic:-export-dynamic} \
177 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
178 + %{static:-static}}}"
179 +#else
180 #define LINK_SPEC \
181 "%(endian_spec) \
182 %{shared:-shared} \
183 @@ -184,6 +195,7 @@
184 %{rdynamic:-export-dynamic} \
185 %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
186 %{static:-static}}}"
187 +#endif
188
189 #undef SUBTARGET_ASM_SPEC
190 #define SUBTARGET_ASM_SPEC "\
191 diff -urN gcc-3.3.3-dist/gcc/config/sh/linux.h gcc-3.3.3/gcc/config/sh/linux.h
192 --- gcc-3.3.3-dist/gcc/config/sh/linux.h 2003-11-06 17:13:33.000000000 -0600
193 +++ gcc-3.3.3/gcc/config/sh/linux.h 2004-08-12 04:47:51.000000000 -0500
194 @@ -44,12 +44,21 @@
195 #undef SUBTARGET_LINK_EMUL_SUFFIX
196 #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
197 #undef SUBTARGET_LINK_SPEC
198 +#ifdef USE_UCLIBC
199 +#define SUBTARGET_LINK_SPEC \
200 + "%{shared:-shared} \
201 + %{!static: \
202 + %{rdynamic:-export-dynamic} \
203 + %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
204 + %{static:-static}"
205 +#else
206 #define SUBTARGET_LINK_SPEC \
207 "%{shared:-shared} \
208 %{!static: \
209 %{rdynamic:-export-dynamic} \
210 %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
211 %{static:-static}"
212 +#endif
213
214 /* The GNU C++ standard library requires that these macros be defined. */
215 #undef CPLUSPLUS_CPP_SPEC
216 diff -urN gcc-3.3.3-dist/gcc/config/sh/t-linux-uclibc gcc-3.3.3/gcc/config/sh/t-linux-uclibc
217 --- gcc-3.3.3-dist/gcc/config/sh/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
218 +++ gcc-3.3.3/gcc/config/sh/t-linux-uclibc 2004-08-12 04:47:51.000000000 -0500
219 @@ -0,0 +1,16 @@
220 +T_CFLAGS = -DUSE_UCLIBC
221 +
222 +# Don't run fixproto
223 +STMP_FIXPROTO =
224 +
225 +TARGET_LIBGCC2_CFLAGS = -fpic
226 +LIB1ASMFUNCS_CACHE = _ic_invalidate
227 +
228 +LIB2FUNCS_EXTRA=
229 +
230 +MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m3e/m4
231 +MULTILIB_DIRNAMES=
232 +MULTILIB_MATCHES =
233 +MULTILIB_EXCEPTIONS=
234 +
235 +EXTRA_MULTILIB_PARTS= crtbegin.o crtend.o crtbeginS.o crtendS.o
236 diff -urN gcc-3.3.3-dist/gcc/config/sh/t-sh64-uclibc gcc-3.3.3/gcc/config/sh/t-sh64-uclibc
237 --- gcc-3.3.3-dist/gcc/config/sh/t-sh64-uclibc 1969-12-31 18:00:00.000000000 -0600
238 +++ gcc-3.3.3/gcc/config/sh/t-sh64-uclibc 2004-08-12 04:47:51.000000000 -0500
239 @@ -0,0 +1,13 @@
240 +EXTRA_MULTILIB_PARTS= crtbegin.o crtend.o
241 +
242 +LIB1ASMFUNCS = \
243 + _sdivsi3 _sdivsi3_i4 _udivsi3 _udivsi3_i4 _set_fpscr \
244 + _shcompact_call_trampoline _shcompact_return_trampoline \
245 + _shcompact_incoming_args _ic_invalidate _nested_trampoline \
246 + _push_pop_shmedia_regs \
247 + _udivdi3 _divdi3 _umoddi3 _moddi3
248 +
249 +MULTILIB_OPTIONS = $(MULTILIB_ENDIAN) m5-32media-nofpu/m5-compact/m5-compact-nofpu/m5-64media/m5-64media-nofpu
250 +MULTILIB_DIRNAMES= $(MULTILIB_ENDIAN) nofpu compact nofpu/compact media64 nofpu/media64
251 +MULTILIB_MATCHES=
252 +MULTILIB_EXCEPTIONS=
253 diff -urN gcc-3.3.3-dist/gcc/config/t-linux-uclibc gcc-3.3.3/gcc/config/t-linux-uclibc
254 --- gcc-3.3.3-dist/gcc/config/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
255 +++ gcc-3.3.3/gcc/config/t-linux-uclibc 2004-08-12 04:47:51.000000000 -0500
256 @@ -0,0 +1,23 @@
257 +T_CFLAGS = -DUSE_UCLIBC
258 +
259 +# Don't run fixproto
260 +STMP_FIXPROTO =
261 +
262 +# Compile crtbeginS.o and crtendS.o with pic.
263 +CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC
264 +# Compile libgcc2.a with pic.
265 +TARGET_LIBGCC2_CFLAGS = -fPIC
266 +
267 +# Override t-slibgcc-elf-ver to export some libgcc symbols with
268 +# the symbol versions that glibc used.
269 +SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver
270 +
271 +# Use unwind-dw2-fde-glibc
272 +#LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde-glibc.c \
273 +# $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c
274 +#LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h unwind-dw2-fde.c
275 +
276 +# Use unwind-dw2-fde
277 +LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \
278 + $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c
279 +LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h
280 diff -urN gcc-3.3.3-dist/gcc/config.gcc gcc-3.3.3/gcc/config.gcc
281 --- gcc-3.3.3-dist/gcc/config.gcc 2004-01-21 00:06:00.000000000 -0600
282 +++ gcc-3.3.3/gcc/config.gcc 2004-08-12 04:47:51.000000000 -0500
283 @@ -697,6 +697,17 @@
284 extra_parts=""
285 use_collect2=yes
286 ;;
287 +arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc
288 + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h"
289 + tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux"
290 + extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
291 + gnu_ld=yes
292 + case x${enable_threads} in
293 + x | xyes | xpthreads | xposix)
294 + thread_file='posix'
295 + ;;
296 + esac
297 + ;;
298 arm*-*-linux*) # ARM GNU/Linux with ELF
299 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h"
300 tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
301 @@ -772,6 +783,10 @@
302 tmake_file="cris/t-cris cris/t-elfmulti"
303 gas=yes
304 ;;
305 +cris-*-linux-uclibc*)
306 + tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
307 + tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux-uclibc"
308 + ;;
309 cris-*-linux*)
310 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
311 tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
312 @@ -1173,6 +1188,11 @@
313 thread_file='single'
314 fi
315 ;;
316 +i[34567]86-*-linux*uclibc*) # Intel 80386's running GNU/Linux
317 + # with ELF format using uClibc
318 + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
319 + tmake_file="t-slibgcc-elf-ver t-linux-uclibc i386/t-crtstuff"
320 + ;;
321 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
322 # with ELF format using glibc 2
323 # aka GNU/Linux C library 6
324 @@ -1883,6 +1903,16 @@
325 tm_file="elfos.h ${tm_file} mips/netbsd.h"
326 tmake_file="${tmake_file} mips/t-netbsd"
327 ;;
328 +mips*-*-linux-uclibc*) # Linux MIPS, either endian. uClibc
329 + tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
330 + case $machine in
331 + mipsisa32*-*)
332 + target_cpu_default="MASK_SOFT_FLOAT"
333 + tm_defines="MIPS_ISA_DEFAULT=32"
334 + ;;
335 + esac
336 + tmake_file="t-slibgcc-elf-ver t-linux-uclibc mips/t-linux"
337 + ;;
338 mips*-*-linux*) # Linux MIPS, either endian.
339 tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
340 case $machine in
341 @@ -2129,6 +2159,11 @@
342 out_file=rs6000/rs6000.c
343 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
344 ;;
345 +powerpc-*-linux-uclibc*)
346 + tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
347 + out_file=rs6000/rs6000.c
348 + tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux-uclibc rs6000/t-ppccomm"
349 + ;;
350 powerpc-*-linux*)
351 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
352 out_file=rs6000/rs6000.c
353 @@ -2313,10 +2348,18 @@
354 tmake_file="${tmake_file} sh/t-le"
355 ;;
356 esac
357 - tmake_file="${tmake_file} sh/t-linux"
358 + case $machine in
359 + *-*-linux-uclibc*) tmake_file="${tmake_file} sh/t-linux-uclibc" ;;
360 + *) tmake_file="${tmake_file} sh/t-linux" ;;
361 + esac
362 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
363 gas=yes gnu_ld=yes
364 case $machine in
365 + sh64*-*-linux-uclibc*)
366 + tmake_file="${tmake_file} sh/t-sh64-uclibc"
367 + tm_file="${tm_file} sh/sh64.h"
368 + extra_headers="shmedia.h ushmedia.h sshmedia.h"
369 + ;;
370 sh64*)
371 tmake_file="${tmake_file} sh/t-sh64"
372 tm_file="${tm_file} sh/sh64.h"
373 diff -urN gcc-3.3.3-dist/libstdc++-v3/aclocal.m4 gcc-3.3.3/libstdc++-v3/aclocal.m4
374 --- gcc-3.3.3-dist/libstdc++-v3/aclocal.m4 2004-01-12 10:18:44.000000000 -0600
375 +++ gcc-3.3.3/libstdc++-v3/aclocal.m4 2004-08-12 04:47:51.000000000 -0500
376 @@ -1216,6 +1216,9 @@
377 dnl Default to "generic"
378 if test x$enable_clocale_flag = xno; then
379 case x${target_os} in
380 + xlinux-uclibc*)
381 + enable_clocale_flag=uclibc
382 + ;;
383 xlinux* | xgnu*)
384 AC_EGREP_CPP([_GLIBCPP_ok], [
385 #include <features.h>
386 @@ -1339,6 +1342,41 @@
387 CTIME_CC=config/locale/generic/time_members.cc
388 CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
389 ;;
390 + xuclibc)
391 + AC_MSG_RESULT(uclibc)
392 +
393 + # Declare intention to use gettext, and add support for specific
394 + # languages.
395 + # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT
396 + ALL_LINGUAS="de fr"
397 +
398 + # Don't call AM-GNU-GETTEXT here. Instead, assume glibc.
399 + AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no)
400 + if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then
401 + USE_NLS=yes
402 + fi
403 + # Export the build objects.
404 + for ling in $ALL_LINGUAS; do \
405 + glibcpp_MOFILES="$glibcpp_MOFILES $ling.mo"; \
406 + glibcpp_POFILES="$glibcpp_POFILES $ling.po"; \
407 + done
408 + AC_SUBST(glibcpp_MOFILES)
409 + AC_SUBST(glibcpp_POFILES)
410 +
411 + CLOCALE_H=config/locale/uclibc/c_locale.h
412 + CLOCALE_CC=config/locale/uclibc/c_locale.cc
413 + CCODECVT_H=config/locale/uclibc/codecvt_specializations.h
414 + CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
415 + CCOLLATE_CC=config/locale/uclibc/collate_members.cc
416 + CCTYPE_CC=config/locale/uclibc/ctype_members.cc
417 + CMESSAGES_H=config/locale/uclibc/messages_members.h
418 + CMESSAGES_CC=config/locale/uclibc/messages_members.cc
419 + CMONEY_CC=config/locale/uclibc/monetary_members.cc
420 + CNUMERIC_CC=config/locale/uclibc/numeric_members.cc
421 + CTIME_H=config/locale/uclibc/time_members.h
422 + CTIME_CC=config/locale/uclibc/time_members.cc
423 + CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h
424 + ;;
425 *)
426 echo "$enable_clocale is an unknown locale package" 1>&2
427 exit 1
428 diff -urN gcc-3.3.3-dist/libstdc++-v3/configure gcc-3.3.3/libstdc++-v3/configure
429 --- gcc-3.3.3-dist/libstdc++-v3/configure 2004-01-12 10:18:45.000000000 -0600
430 +++ gcc-3.3.3/libstdc++-v3/configure 2004-08-12 04:49:13.000000000 -0500
431 @@ -2010,6 +2010,11 @@
432 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
433 ;;
434
435 +linux-uclibc*)
436 + lt_cv_deplibs_check_method=pass_all
437 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
438 + ;;
439 +
440 netbsd*)
441 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
442 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
443 @@ -2996,6 +3001,9 @@
444
445 if test x$enable_clocale_flag = xno; then
446 case x${target_os} in
447 + xlinux-uclibc*)
448 + enable_clocale_flag=uclibc
449 + ;;
450 xlinux* | xgnu*)
451 cat > conftest.$ac_ext <<EOF
452 #line 3002 "configure"
453 @@ -3182,6 +3190,70 @@
454 CTIME_CC=config/locale/generic/time_members.cc
455 CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
456 ;;
457 + xuclibc)
458 + echo "$ac_t""uclibc" 1>&6
459 +
460 + # Declare intention to use gettext, and add support for specific
461 + # languages.
462 + # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT
463 + ALL_LINGUAS="de fr"
464 +
465 + # Don't call AM-GNU-GETTEXT here. Instead, assume glibc.
466 + # Extract the first word of "msgfmt", so it can be a program name with args.
467 +set dummy msgfmt; ac_word=$2
468 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
469 +echo "configure:3117: checking for $ac_word" >&5
470 +if eval "test \"`echo '$''{'ac_cv_prog_check_msgfmt'+set}'`\" = set"; then
471 + echo $ac_n "(cached) $ac_c" 1>&6
472 +else
473 + if test -n "$check_msgfmt"; then
474 + ac_cv_prog_check_msgfmt="$check_msgfmt" # Let the user override the test.
475 +else
476 + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
477 + ac_dummy="$PATH"
478 + for ac_dir in $ac_dummy; do
479 + test -z "$ac_dir" && ac_dir=.
480 + if test -f $ac_dir/$ac_word; then
481 + ac_cv_prog_check_msgfmt="yes"
482 + break
483 + fi
484 + done
485 + IFS="$ac_save_ifs"
486 + test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no"
487 +fi
488 +fi
489 +check_msgfmt="$ac_cv_prog_check_msgfmt"
490 +if test -n "$check_msgfmt"; then
491 + echo "$ac_t""$check_msgfmt" 1>&6
492 +else
493 + echo "$ac_t""no" 1>&6
494 +fi
495 +
496 + if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then
497 + USE_NLS=yes
498 + fi
499 + # Export the build objects.
500 + for ling in $ALL_LINGUAS; do \
501 + glibcpp_MOFILES="$glibcpp_MOFILES $ling.mo"; \
502 + glibcpp_POFILES="$glibcpp_POFILES $ling.po"; \
503 + done
504 +
505 +
506 +
507 + CLOCALE_H=config/locale/uclibc/c_locale.h
508 + CLOCALE_CC=config/locale/uclibc/c_locale.cc
509 + CCODECVT_H=config/locale/uclibc/codecvt_specializations.h
510 + CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
511 + CCOLLATE_CC=config/locale/uclibc/collate_members.cc
512 + CCTYPE_CC=config/locale/uclibc/ctype_members.cc
513 + CMESSAGES_H=config/locale/uclibc/messages_members.h
514 + CMESSAGES_CC=config/locale/uclibc/messages_members.cc
515 + CMONEY_CC=config/locale/uclibc/monetary_members.cc
516 + CNUMERIC_CC=config/locale/uclibc/numeric_members.cc
517 + CTIME_H=config/locale/uclibc/time_members.h
518 + CTIME_CC=config/locale/uclibc/time_members.cc
519 + CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h
520 + ;;
521 *)
522 echo "$enable_clocale is an unknown locale package" 1>&2
523 exit 1
524 @@ -4212,6 +4284,968 @@
525 # GLIBCPP_CHECK_MATH_SUPPORT
526
527 case "$target" in
528 + *-uclibc*)
529 + os_include_dir="os/uclibc"
530 + for ac_hdr in nan.h ieeefp.h endian.h sys/isa_defs.h \
531 + machine/endian.h machine/param.h sys/machine.h sys/types.h \
532 + fp.h locale.h float.h inttypes.h
533 +do
534 +ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
535 +echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
536 +echo "configure:4224: checking for $ac_hdr" >&5
537 +if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
538 + echo $ac_n "(cached) $ac_c" 1>&6
539 +else
540 + cat > conftest.$ac_ext <<EOF
541 +#line 4229 "configure"
542 +#include "confdefs.h"
543 +#include <$ac_hdr>
544 +EOF
545 +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
546 +{ (eval echo configure:4234: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
547 +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
548 +if test -z "$ac_err"; then
549 + rm -rf conftest*
550 + eval "ac_cv_header_$ac_safe=yes"
551 +else
552 + echo "$ac_err" >&5
553 + echo "configure: failed program was:" >&5
554 + cat conftest.$ac_ext >&5
555 + rm -rf conftest*
556 + eval "ac_cv_header_$ac_safe=no"
557 +fi
558 +rm -f conftest*
559 +fi
560 +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
561 + echo "$ac_t""yes" 1>&6
562 + ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
563 + cat >> confdefs.h <<EOF
564 +#define $ac_tr_hdr 1
565 +EOF
566 +
567 +else
568 + echo "$ac_t""no" 1>&6
569 +fi
570 +done
571 +
572 + SECTION_FLAGS='-ffunction-sections -fdata-sections'
573 +
574 +
575 + # If we're not using GNU ld, then there's no point in even trying these
576 + # tests. Check for that first. We should have already tested for gld
577 + # by now (in libtool), but require it now just to be safe...
578 + test -z "$SECTION_LDFLAGS" && SECTION_LDFLAGS=''
579 + test -z "$OPT_LDFLAGS" && OPT_LDFLAGS=''
580 +
581 +
582 + # The name set by libtool depends on the version of libtool. Shame on us
583 + # for depending on an impl detail, but c'est la vie. Older versions used
584 + # ac_cv_prog_gnu_ld, but now it's lt_cv_prog_gnu_ld, and is copied back on
585 + # top of with_gnu_ld (which is also set by --with-gnu-ld, so that actually
586 + # makes sense). We'll test with_gnu_ld everywhere else, so if that isn't
587 + # set (hence we're using an older libtool), then set it.
588 + if test x${with_gnu_ld+set} != xset; then
589 + if test x${ac_cv_prog_gnu_ld+set} != xset; then
590 + # We got through "ac_require(ac_prog_ld)" and still not set? Huh?
591 + with_gnu_ld=no
592 + else
593 + with_gnu_ld=$ac_cv_prog_gnu_ld
594 + fi
595 + fi
596 +
597 + # Start by getting the version number. I think the libtool test already
598 + # does some of this, but throws away the result.
599 +
600 + ldver=`$LD --version 2>/dev/null | head -1 | \
601 + sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
602 +
603 + glibcpp_gnu_ld_version=`echo $ldver | \
604 + $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
605 +
606 + # Set --gc-sections.
607 + if test "$with_gnu_ld" = "notbroken"; then
608 + # GNU ld it is! Joy and bunny rabbits!
609 +
610 + # All these tests are for C++; save the language and the compiler flags.
611 + # Need to do this so that g++ won't try to link in libstdc++
612 + ac_test_CFLAGS="${CFLAGS+set}"
613 + ac_save_CFLAGS="$CFLAGS"
614 + CFLAGS='-x c++ -Wl,--gc-sections'
615 +
616 + # Check for -Wl,--gc-sections
617 + # XXX This test is broken at the moment, as symbols required for
618 + # linking are now in libsupc++ (not built yet.....). In addition,
619 + # this test has cored on solaris in the past. In addition,
620 + # --gc-sections doesn't really work at the moment (keeps on discarding
621 + # used sections, first .eh_frame and now some of the glibc sections for
622 + # iconv). Bzzzzt. Thanks for playing, maybe next time.
623 + echo $ac_n "checking for ld that supports -Wl,--gc-sections""... $ac_c" 1>&6
624 +echo "configure:4312: checking for ld that supports -Wl,--gc-sections" >&5
625 + if test "$cross_compiling" = yes; then
626 + ac_sectionLDflags=yes
627 +else
628 + cat > conftest.$ac_ext <<EOF
629 +#line 4317 "configure"
630 +#include "confdefs.h"
631 +
632 + int main(void)
633 + {
634 + try { throw 1; }
635 + catch (...) { };
636 + return 0;
637 + }
638 +
639 +EOF
640 +if { (eval echo configure:4328: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
641 +then
642 + ac_sectionLDflags=yes
643 +else
644 + echo "configure: failed program was:" >&5
645 + cat conftest.$ac_ext >&5
646 + rm -fr conftest*
647 + ac_sectionLDflags=no
648 +fi
649 +rm -fr conftest*
650 +fi
651 +
652 + if test "$ac_test_CFLAGS" = set; then
653 + CFLAGS="$ac_save_CFLAGS"
654 + else
655 + # this is the suspicious part
656 + CFLAGS=''
657 + fi
658 + if test "$ac_sectionLDflags" = "yes"; then
659 + SECTION_LDFLAGS="-Wl,--gc-sections $SECTION_LDFLAGS"
660 + fi
661 + echo "$ac_t""$ac_sectionLDflags" 1>&6
662 + fi
663 +
664 + # Set linker optimization flags.
665 + if test x"$with_gnu_ld" = x"yes"; then
666 + OPT_LDFLAGS="-Wl,-O1 $OPT_LDFLAGS"
667 + fi
668 +
669 +
670 +
671 +
672 +
673 + echo $ac_n "checking for main in -lm""... $ac_c" 1>&6
674 +echo "configure:4362: checking for main in -lm" >&5
675 +ac_lib_var=`echo m'_'main | sed 'y%./+-%__p_%'`
676 +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
677 + echo $ac_n "(cached) $ac_c" 1>&6
678 +else
679 + ac_save_LIBS="$LIBS"
680 +LIBS="-lm $LIBS"
681 +cat > conftest.$ac_ext <<EOF
682 +#line 4370 "configure"
683 +#include "confdefs.h"
684 +
685 +int main() {
686 +main()
687 +; return 0; }
688 +EOF
689 +if { (eval echo configure:4377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
690 + rm -rf conftest*
691 + eval "ac_cv_lib_$ac_lib_var=yes"
692 +else
693 + echo "configure: failed program was:" >&5
694 + cat conftest.$ac_ext >&5
695 + rm -rf conftest*
696 + eval "ac_cv_lib_$ac_lib_var=no"
697 +fi
698 +rm -f conftest*
699 +LIBS="$ac_save_LIBS"
700 +
701 +fi
702 +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
703 + echo "$ac_t""yes" 1>&6
704 + ac_tr_lib=HAVE_LIB`echo m | sed -e 's/[^a-zA-Z0-9_]/_/g' \
705 + -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
706 + cat >> confdefs.h <<EOF
707 +#define $ac_tr_lib 1
708 +EOF
709 +
710 + LIBS="-lm $LIBS"
711 +
712 +else
713 + echo "$ac_t""no" 1>&6
714 +fi
715 +
716 + for ac_func in nan copysignf
717 +do
718 +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
719 +echo "configure:4407: checking for $ac_func" >&5
720 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
721 + echo $ac_n "(cached) $ac_c" 1>&6
722 +else
723 + cat > conftest.$ac_ext <<EOF
724 +#line 4412 "configure"
725 +#include "confdefs.h"
726 +/* System header to define __stub macros and hopefully few prototypes,
727 + which can conflict with char $ac_func(); below. */
728 +#include <assert.h>
729 +/* Override any gcc2 internal prototype to avoid an error. */
730 +/* We use char because int might match the return type of a gcc2
731 + builtin and then its argument prototype would still apply. */
732 +char $ac_func();
733 +
734 +int main() {
735 +
736 +/* The GNU C library defines this for functions which it implements
737 + to always fail with ENOSYS. Some functions are actually named
738 + something starting with __ and the normal name is an alias. */
739 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
740 +choke me
741 +#else
742 +$ac_func();
743 +#endif
744 +
745 +; return 0; }
746 +EOF
747 +if { (eval echo configure:4435: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
748 + rm -rf conftest*
749 + eval "ac_cv_func_$ac_func=yes"
750 +else
751 + echo "configure: failed program was:" >&5
752 + cat conftest.$ac_ext >&5
753 + rm -rf conftest*
754 + eval "ac_cv_func_$ac_func=no"
755 +fi
756 +rm -f conftest*
757 +fi
758 +
759 +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
760 + echo "$ac_t""yes" 1>&6
761 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
762 + cat >> confdefs.h <<EOF
763 +#define $ac_tr_func 1
764 +EOF
765 +
766 +else
767 + echo "$ac_t""no" 1>&6
768 +LIBMATHOBJS="$LIBMATHOBJS ${ac_func}.lo"
769 +fi
770 +done
771 +
772 +
773 + for ac_func in __signbit
774 +do
775 +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
776 +echo "configure:4464: checking for $ac_func" >&5
777 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
778 + echo $ac_n "(cached) $ac_c" 1>&6
779 +else
780 + cat > conftest.$ac_ext <<EOF
781 +#line 4469 "configure"
782 +#include "confdefs.h"
783 +/* System header to define __stub macros and hopefully few prototypes,
784 + which can conflict with char $ac_func(); below. */
785 +#include <assert.h>
786 +/* Override any gcc2 internal prototype to avoid an error. */
787 +/* We use char because int might match the return type of a gcc2
788 + builtin and then its argument prototype would still apply. */
789 +char $ac_func();
790 +
791 +int main() {
792 +
793 +/* The GNU C library defines this for functions which it implements
794 + to always fail with ENOSYS. Some functions are actually named
795 + something starting with __ and the normal name is an alias. */
796 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
797 +choke me
798 +#else
799 +$ac_func();
800 +#endif
801 +
802 +; return 0; }
803 +EOF
804 +if { (eval echo configure:4492: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
805 + rm -rf conftest*
806 + eval "ac_cv_func_$ac_func=yes"
807 +else
808 + echo "configure: failed program was:" >&5
809 + cat conftest.$ac_ext >&5
810 + rm -rf conftest*
811 + eval "ac_cv_func_$ac_func=no"
812 +fi
813 +rm -f conftest*
814 +fi
815 +
816 +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
817 + echo "$ac_t""yes" 1>&6
818 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
819 + cat >> confdefs.h <<EOF
820 +#define $ac_tr_func 1
821 +EOF
822 +
823 +else
824 + echo "$ac_t""no" 1>&6
825 +LIBMATHOBJS="$LIBMATHOBJS signbit.lo"
826 +fi
827 +done
828 +
829 + for ac_func in __signbitf
830 +do
831 +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
832 +echo "configure:4520: checking for $ac_func" >&5
833 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
834 + echo $ac_n "(cached) $ac_c" 1>&6
835 +else
836 + cat > conftest.$ac_ext <<EOF
837 +#line 4525 "configure"
838 +#include "confdefs.h"
839 +/* System header to define __stub macros and hopefully few prototypes,
840 + which can conflict with char $ac_func(); below. */
841 +#include <assert.h>
842 +/* Override any gcc2 internal prototype to avoid an error. */
843 +/* We use char because int might match the return type of a gcc2
844 + builtin and then its argument prototype would still apply. */
845 +char $ac_func();
846 +
847 +int main() {
848 +
849 +/* The GNU C library defines this for functions which it implements
850 + to always fail with ENOSYS. Some functions are actually named
851 + something starting with __ and the normal name is an alias. */
852 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
853 +choke me
854 +#else
855 +$ac_func();
856 +#endif
857 +
858 +; return 0; }
859 +EOF
860 +if { (eval echo configure:4548: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
861 + rm -rf conftest*
862 + eval "ac_cv_func_$ac_func=yes"
863 +else
864 + echo "configure: failed program was:" >&5
865 + cat conftest.$ac_ext >&5
866 + rm -rf conftest*
867 + eval "ac_cv_func_$ac_func=no"
868 +fi
869 +rm -f conftest*
870 +fi
871 +
872 +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
873 + echo "$ac_t""yes" 1>&6
874 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
875 + cat >> confdefs.h <<EOF
876 +#define $ac_tr_func 1
877 +EOF
878 +
879 +else
880 + echo "$ac_t""no" 1>&6
881 +LIBMATHOBJS="$LIBMATHOBJS signbitf.lo"
882 +fi
883 +done
884 +
885 +
886 + if test x$ac_cv_func_copysignl = x"yes"; then
887 + for ac_func in __signbitl
888 +do
889 +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
890 +echo "configure:4578: checking for $ac_func" >&5
891 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
892 + echo $ac_n "(cached) $ac_c" 1>&6
893 +else
894 + cat > conftest.$ac_ext <<EOF
895 +#line 4583 "configure"
896 +#include "confdefs.h"
897 +/* System header to define __stub macros and hopefully few prototypes,
898 + which can conflict with char $ac_func(); below. */
899 +#include <assert.h>
900 +/* Override any gcc2 internal prototype to avoid an error. */
901 +/* We use char because int might match the return type of a gcc2
902 + builtin and then its argument prototype would still apply. */
903 +char $ac_func();
904 +
905 +int main() {
906 +
907 +/* The GNU C library defines this for functions which it implements
908 + to always fail with ENOSYS. Some functions are actually named
909 + something starting with __ and the normal name is an alias. */
910 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
911 +choke me
912 +#else
913 +$ac_func();
914 +#endif
915 +
916 +; return 0; }
917 +EOF
918 +if { (eval echo configure:4606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
919 + rm -rf conftest*
920 + eval "ac_cv_func_$ac_func=yes"
921 +else
922 + echo "configure: failed program was:" >&5
923 + cat conftest.$ac_ext >&5
924 + rm -rf conftest*
925 + eval "ac_cv_func_$ac_func=no"
926 +fi
927 +rm -f conftest*
928 +fi
929 +
930 +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
931 + echo "$ac_t""yes" 1>&6
932 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
933 + cat >> confdefs.h <<EOF
934 +#define $ac_tr_func 1
935 +EOF
936 +
937 +else
938 + echo "$ac_t""no" 1>&6
939 +LIBMATHOBJS="$LIBMATHOBJS signbitl.lo"
940 +fi
941 +done
942 +
943 + fi
944 +
945 + if test -n "$LIBMATHOBJS"; then
946 + need_libmath=yes
947 + fi
948 +
949 +
950 +
951 +if test "$need_libmath" = yes; then
952 + GLIBCPP_BUILD_LIBMATH_TRUE=
953 + GLIBCPP_BUILD_LIBMATH_FALSE='#'
954 +else
955 + GLIBCPP_BUILD_LIBMATH_TRUE='#'
956 + GLIBCPP_BUILD_LIBMATH_FALSE=
957 +fi
958 +
959 +
960 + enable_wchar_t=no
961 +
962 + echo $ac_n "checking for mbstate_t""... $ac_c" 1>&6
963 +echo "configure:4651: checking for mbstate_t" >&5
964 + cat > conftest.$ac_ext <<EOF
965 +#line 4653 "configure"
966 +#include "confdefs.h"
967 +#include <wchar.h>
968 +int main() {
969 +mbstate_t teststate;
970 +; return 0; }
971 +EOF
972 +if { (eval echo configure:4660: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
973 + rm -rf conftest*
974 + have_mbstate_t=yes
975 +else
976 + echo "configure: failed program was:" >&5
977 + cat conftest.$ac_ext >&5
978 + rm -rf conftest*
979 + have_mbstate_t=no
980 +fi
981 +rm -f conftest*
982 + echo "$ac_t""$have_mbstate_t" 1>&6
983 + if test x"$have_mbstate_t" = xyes; then
984 + cat >> confdefs.h <<\EOF
985 +#define HAVE_MBSTATE_T 1
986 +EOF
987 +
988 + fi
989 +
990 + for ac_hdr in wchar.h
991 +do
992 +ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
993 +echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
994 +echo "configure:4682: checking for $ac_hdr" >&5
995 +if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
996 + echo $ac_n "(cached) $ac_c" 1>&6
997 +else
998 + cat > conftest.$ac_ext <<EOF
999 +#line 4687 "configure"
1000 +#include "confdefs.h"
1001 +#include <$ac_hdr>
1002 +EOF
1003 +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
1004 +{ (eval echo configure:4692: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
1005 +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
1006 +if test -z "$ac_err"; then
1007 + rm -rf conftest*
1008 + eval "ac_cv_header_$ac_safe=yes"
1009 +else
1010 + echo "$ac_err" >&5
1011 + echo "configure: failed program was:" >&5
1012 + cat conftest.$ac_ext >&5
1013 + rm -rf conftest*
1014 + eval "ac_cv_header_$ac_safe=no"
1015 +fi
1016 +rm -f conftest*
1017 +fi
1018 +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
1019 + echo "$ac_t""yes" 1>&6
1020 + ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
1021 + cat >> confdefs.h <<EOF
1022 +#define $ac_tr_hdr 1
1023 +EOF
1024 + ac_has_wchar_h=yes
1025 +else
1026 + echo "$ac_t""no" 1>&6
1027 +ac_has_wchar_h=no
1028 +fi
1029 +done
1030 +
1031 + for ac_hdr in wctype.h
1032 +do
1033 +ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
1034 +echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
1035 +echo "configure:4723: checking for $ac_hdr" >&5
1036 +if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
1037 + echo $ac_n "(cached) $ac_c" 1>&6
1038 +else
1039 + cat > conftest.$ac_ext <<EOF
1040 +#line 4728 "configure"
1041 +#include "confdefs.h"
1042 +#include <$ac_hdr>
1043 +EOF
1044 +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
1045 +{ (eval echo configure:4733: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
1046 +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
1047 +if test -z "$ac_err"; then
1048 + rm -rf conftest*
1049 + eval "ac_cv_header_$ac_safe=yes"
1050 +else
1051 + echo "$ac_err" >&5
1052 + echo "configure: failed program was:" >&5
1053 + cat conftest.$ac_ext >&5
1054 + rm -rf conftest*
1055 + eval "ac_cv_header_$ac_safe=no"
1056 +fi
1057 +rm -f conftest*
1058 +fi
1059 +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
1060 + echo "$ac_t""yes" 1>&6
1061 + ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
1062 + cat >> confdefs.h <<EOF
1063 +#define $ac_tr_hdr 1
1064 +EOF
1065 + ac_has_wctype_h=yes
1066 +else
1067 + echo "$ac_t""no" 1>&6
1068 +ac_has_wctype_h=no
1069 +fi
1070 +done
1071 +
1072 +
1073 + if test x"$ac_has_wchar_h" = xyes &&
1074 + test x"$ac_has_wctype_h" = xyes &&
1075 + test x"$enable_c_mbchar" != xno; then
1076 +
1077 + echo $ac_n "checking for WCHAR_MIN and WCHAR_MAX""... $ac_c" 1>&6
1078 +echo "configure:4766: checking for WCHAR_MIN and WCHAR_MAX" >&5
1079 + cat > conftest.$ac_ext <<EOF
1080 +#line 4768 "configure"
1081 +#include "confdefs.h"
1082 +#include <wchar.h>
1083 +int main() {
1084 +int i = WCHAR_MIN; int j = WCHAR_MAX;
1085 +; return 0; }
1086 +EOF
1087 +if { (eval echo configure:4775: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
1088 + rm -rf conftest*
1089 + has_wchar_minmax=yes
1090 +else
1091 + echo "configure: failed program was:" >&5
1092 + cat conftest.$ac_ext >&5
1093 + rm -rf conftest*
1094 + has_wchar_minmax=no
1095 +fi
1096 +rm -f conftest*
1097 + echo "$ac_t""$has_wchar_minmax" 1>&6
1098 +
1099 + echo $ac_n "checking for WEOF""... $ac_c" 1>&6
1100 +echo "configure:4788: checking for WEOF" >&5
1101 + cat > conftest.$ac_ext <<EOF
1102 +#line 4790 "configure"
1103 +#include "confdefs.h"
1104 +
1105 + #include <wchar.h>
1106 + #include <stddef.h>
1107 +int main() {
1108 +wint_t i = WEOF;
1109 +; return 0; }
1110 +EOF
1111 +if { (eval echo configure:4799: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
1112 + rm -rf conftest*
1113 + has_weof=yes
1114 +else
1115 + echo "configure: failed program was:" >&5
1116 + cat conftest.$ac_ext >&5
1117 + rm -rf conftest*
1118 + has_weof=no
1119 +fi
1120 +rm -f conftest*
1121 + echo "$ac_t""$has_weof" 1>&6
1122 +
1123 + ac_wfuncs=yes
1124 + for ac_func in wcslen wmemchr wmemcmp wmemcpy wmemmove wmemset
1125 +do
1126 +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
1127 +echo "configure:4815: checking for $ac_func" >&5
1128 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
1129 + echo $ac_n "(cached) $ac_c" 1>&6
1130 +else
1131 + cat > conftest.$ac_ext <<EOF
1132 +#line 4820 "configure"
1133 +#include "confdefs.h"
1134 +/* System header to define __stub macros and hopefully few prototypes,
1135 + which can conflict with char $ac_func(); below. */
1136 +#include <assert.h>
1137 +/* Override any gcc2 internal prototype to avoid an error. */
1138 +/* We use char because int might match the return type of a gcc2
1139 + builtin and then its argument prototype would still apply. */
1140 +char $ac_func();
1141 +
1142 +int main() {
1143 +
1144 +/* The GNU C library defines this for functions which it implements
1145 + to always fail with ENOSYS. Some functions are actually named
1146 + something starting with __ and the normal name is an alias. */
1147 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
1148 +choke me
1149 +#else
1150 +$ac_func();
1151 +#endif
1152 +
1153 +; return 0; }
1154 +EOF
1155 +if { (eval echo configure:4843: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
1156 + rm -rf conftest*
1157 + eval "ac_cv_func_$ac_func=yes"
1158 +else
1159 + echo "configure: failed program was:" >&5
1160 + cat conftest.$ac_ext >&5
1161 + rm -rf conftest*
1162 + eval "ac_cv_func_$ac_func=no"
1163 +fi
1164 +rm -f conftest*
1165 +fi
1166 +
1167 +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
1168 + echo "$ac_t""yes" 1>&6
1169 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
1170 + cat >> confdefs.h <<EOF
1171 +#define $ac_tr_func 1
1172 +EOF
1173 +
1174 +else
1175 + echo "$ac_t""no" 1>&6
1176 +\
1177 + ac_wfuncs=no
1178 +fi
1179 +done
1180 +
1181 +
1182 + for ac_func in btowc wctob fgetwc fgetws fputwc fputws fwide \
1183 + fwprintf fwscanf swprintf swscanf vfwprintf vfwscanf vswprintf vswscanf \
1184 + vwprintf vwscanf wprintf wscanf getwc getwchar mbsinit mbrlen mbrtowc \
1185 + mbsrtowcs wcsrtombs putwc putwchar ungetwc wcrtomb wcstod wcstof wcstol \
1186 + wcstoul wcscpy wcsncpy wcscat wcsncat wcscmp wcscoll wcsncmp wcsxfrm \
1187 + wcscspn wcsspn wcstok wcsftime wcschr wcspbrk wcsrchr wcsstr
1188 +do
1189 +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
1190 +echo "configure:4878: checking for $ac_func" >&5
1191 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
1192 + echo $ac_n "(cached) $ac_c" 1>&6
1193 +else
1194 + cat > conftest.$ac_ext <<EOF
1195 +#line 4883 "configure"
1196 +#include "confdefs.h"
1197 +/* System header to define __stub macros and hopefully few prototypes,
1198 + which can conflict with char $ac_func(); below. */
1199 +#include <assert.h>
1200 +/* Override any gcc2 internal prototype to avoid an error. */
1201 +/* We use char because int might match the return type of a gcc2
1202 + builtin and then its argument prototype would still apply. */
1203 +char $ac_func();
1204 +
1205 +int main() {
1206 +
1207 +/* The GNU C library defines this for functions which it implements
1208 + to always fail with ENOSYS. Some functions are actually named
1209 + something starting with __ and the normal name is an alias. */
1210 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
1211 +choke me
1212 +#else
1213 +$ac_func();
1214 +#endif
1215 +
1216 +; return 0; }
1217 +EOF
1218 +if { (eval echo configure:4906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
1219 + rm -rf conftest*
1220 + eval "ac_cv_func_$ac_func=yes"
1221 +else
1222 + echo "configure: failed program was:" >&5
1223 + cat conftest.$ac_ext >&5
1224 + rm -rf conftest*
1225 + eval "ac_cv_func_$ac_func=no"
1226 +fi
1227 +rm -f conftest*
1228 +fi
1229 +
1230 +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
1231 + echo "$ac_t""yes" 1>&6
1232 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
1233 + cat >> confdefs.h <<EOF
1234 +#define $ac_tr_func 1
1235 +EOF
1236 +
1237 +else
1238 + echo "$ac_t""no" 1>&6
1239 +\
1240 + ac_wfuncs=no
1241 +fi
1242 +done
1243 +
1244 +
1245 + echo $ac_n "checking for ISO C99 wchar_t support""... $ac_c" 1>&6
1246 +echo "configure:4934: checking for ISO C99 wchar_t support" >&5
1247 + if test x"$has_weof" = xyes &&
1248 + test x"$has_wchar_minmax" = xyes &&
1249 + test x"$ac_wfuncs" = xyes; then
1250 + ac_isoC99_wchar_t=yes
1251 + else
1252 + ac_isoC99_wchar_t=no
1253 + fi
1254 + echo "$ac_t""$ac_isoC99_wchar_t" 1>&6
1255 +
1256 + ac_safe=`echo "iconv.h" | sed 'y%./+-%__p_%'`
1257 +echo $ac_n "checking for iconv.h""... $ac_c" 1>&6
1258 +echo "configure:4946: checking for iconv.h" >&5
1259 +if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
1260 + echo $ac_n "(cached) $ac_c" 1>&6
1261 +else
1262 + cat > conftest.$ac_ext <<EOF
1263 +#line 4951 "configure"
1264 +#include "confdefs.h"
1265 +#include <iconv.h>
1266 +EOF
1267 +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
1268 +{ (eval echo configure:4956: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
1269 +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
1270 +if test -z "$ac_err"; then
1271 + rm -rf conftest*
1272 + eval "ac_cv_header_$ac_safe=yes"
1273 +else
1274 + echo "$ac_err" >&5
1275 + echo "configure: failed program was:" >&5
1276 + cat conftest.$ac_ext >&5
1277 + rm -rf conftest*
1278 + eval "ac_cv_header_$ac_safe=no"
1279 +fi
1280 +rm -f conftest*
1281 +fi
1282 +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
1283 + echo "$ac_t""yes" 1>&6
1284 + ac_has_iconv_h=yes
1285 +else
1286 + echo "$ac_t""no" 1>&6
1287 +ac_has_iconv_h=no
1288 +fi
1289 +
1290 + ac_safe=`echo "langinfo.h" | sed 'y%./+-%__p_%'`
1291 +echo $ac_n "checking for langinfo.h""... $ac_c" 1>&6
1292 +echo "configure:4980: checking for langinfo.h" >&5
1293 +if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
1294 + echo $ac_n "(cached) $ac_c" 1>&6
1295 +else
1296 + cat > conftest.$ac_ext <<EOF
1297 +#line 4985 "configure"
1298 +#include "confdefs.h"
1299 +#include <langinfo.h>
1300 +EOF
1301 +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
1302 +{ (eval echo configure:4990: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
1303 +ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
1304 +if test -z "$ac_err"; then
1305 + rm -rf conftest*
1306 + eval "ac_cv_header_$ac_safe=yes"
1307 +else
1308 + echo "$ac_err" >&5
1309 + echo "configure: failed program was:" >&5
1310 + cat conftest.$ac_ext >&5
1311 + rm -rf conftest*
1312 + eval "ac_cv_header_$ac_safe=no"
1313 +fi
1314 +rm -f conftest*
1315 +fi
1316 +if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
1317 + echo "$ac_t""yes" 1>&6
1318 + ac_has_langinfo_h=yes
1319 +else
1320 + echo "$ac_t""no" 1>&6
1321 +ac_has_langinfo_h=no
1322 +fi
1323 +
1324 +
1325 + echo $ac_n "checking for iconv in -liconv""... $ac_c" 1>&6
1326 +echo "configure:5014: checking for iconv in -liconv" >&5
1327 +ac_lib_var=`echo iconv'_'iconv | sed 'y%./+-%__p_%'`
1328 +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
1329 + echo $ac_n "(cached) $ac_c" 1>&6
1330 +else
1331 + ac_save_LIBS="$LIBS"
1332 +LIBS="-liconv $LIBS"
1333 +cat > conftest.$ac_ext <<EOF
1334 +#line 5022 "configure"
1335 +#include "confdefs.h"
1336 +/* Override any gcc2 internal prototype to avoid an error. */
1337 +/* We use char because int might match the return type of a gcc2
1338 + builtin and then its argument prototype would still apply. */
1339 +char iconv();
1340 +
1341 +int main() {
1342 +iconv()
1343 +; return 0; }
1344 +EOF
1345 +if { (eval echo configure:5033: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
1346 + rm -rf conftest*
1347 + eval "ac_cv_lib_$ac_lib_var=yes"
1348 +else
1349 + echo "configure: failed program was:" >&5
1350 + cat conftest.$ac_ext >&5
1351 + rm -rf conftest*
1352 + eval "ac_cv_lib_$ac_lib_var=no"
1353 +fi
1354 +rm -f conftest*
1355 +LIBS="$ac_save_LIBS"
1356 +
1357 +fi
1358 +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
1359 + echo "$ac_t""yes" 1>&6
1360 + libiconv="-liconv"
1361 +else
1362 + echo "$ac_t""no" 1>&6
1363 +fi
1364 +
1365 + ac_save_LIBS="$LIBS"
1366 + LIBS="$LIBS $libiconv"
1367 +
1368 + for ac_func in iconv_open iconv_close iconv nl_langinfo
1369 +do
1370 +echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
1371 +echo "configure:5059: checking for $ac_func" >&5
1372 +if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
1373 + echo $ac_n "(cached) $ac_c" 1>&6
1374 +else
1375 + cat > conftest.$ac_ext <<EOF
1376 +#line 5064 "configure"
1377 +#include "confdefs.h"
1378 +/* System header to define __stub macros and hopefully few prototypes,
1379 + which can conflict with char $ac_func(); below. */
1380 +#include <assert.h>
1381 +/* Override any gcc2 internal prototype to avoid an error. */
1382 +/* We use char because int might match the return type of a gcc2
1383 + builtin and then its argument prototype would still apply. */
1384 +char $ac_func();
1385 +
1386 +int main() {
1387 +
1388 +/* The GNU C library defines this for functions which it implements
1389 + to always fail with ENOSYS. Some functions are actually named
1390 + something starting with __ and the normal name is an alias. */
1391 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
1392 +choke me
1393 +#else
1394 +$ac_func();
1395 +#endif
1396 +
1397 +; return 0; }
1398 +EOF
1399 +if { (eval echo configure:5087: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
1400 + rm -rf conftest*
1401 + eval "ac_cv_func_$ac_func=yes"
1402 +else
1403 + echo "configure: failed program was:" >&5
1404 + cat conftest.$ac_ext >&5
1405 + rm -rf conftest*
1406 + eval "ac_cv_func_$ac_func=no"
1407 +fi
1408 +rm -f conftest*
1409 +fi
1410 +
1411 +if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
1412 + echo "$ac_t""yes" 1>&6
1413 + ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
1414 + cat >> confdefs.h <<EOF
1415 +#define $ac_tr_func 1
1416 +EOF
1417 + \
1418 + ac_XPG2funcs=yes
1419 +else
1420 + echo "$ac_t""no" 1>&6
1421 +ac_XPG2funcs=no
1422 +fi
1423 +done
1424 +
1425 +
1426 + LIBS="$ac_save_LIBS"
1427 +
1428 + echo $ac_n "checking for XPG2 wchar_t support""... $ac_c" 1>&6
1429 +echo "configure:5117: checking for XPG2 wchar_t support" >&5
1430 + if test x"$ac_has_iconv_h" = xyes &&
1431 + test x"$ac_has_langinfo_h" = xyes &&
1432 + test x"$ac_XPG2funcs" = xyes; then
1433 + ac_XPG2_wchar_t=yes
1434 + else
1435 + ac_XPG2_wchar_t=no
1436 + fi
1437 + echo "$ac_t""$ac_XPG2_wchar_t" 1>&6
1438 +
1439 + if test x"$ac_isoC99_wchar_t" = xyes &&
1440 + test x"$ac_XPG2_wchar_t" = xyes; then
1441 + cat >> confdefs.h <<\EOF
1442 +#define _GLIBCPP_USE_WCHAR_T 1
1443 +EOF
1444 +
1445 + enable_wchar_t=yes
1446 + fi
1447 + fi
1448 + echo $ac_n "checking for enabled wchar_t specializations""... $ac_c" 1>&6
1449 +echo "configure:5137: checking for enabled wchar_t specializations" >&5
1450 + echo "$ac_t""$enable_wchar_t" 1>&6
1451 +
1452 +
1453 +if test "$enable_wchar_t" = yes; then
1454 + GLIBCPP_TEST_WCHAR_T_TRUE=
1455 + GLIBCPP_TEST_WCHAR_T_FALSE='#'
1456 +else
1457 + GLIBCPP_TEST_WCHAR_T_TRUE='#'
1458 + GLIBCPP_TEST_WCHAR_T_FALSE=
1459 +fi
1460 +
1461 +
1462 + cat >> confdefs.h <<\EOF
1463 +#define HAVE_COPYSIGN 1
1464 +EOF
1465 +
1466 + cat >> confdefs.h <<\EOF
1467 +#define HAVE_FINITE 1
1468 +EOF
1469 +
1470 + cat >> confdefs.h <<\EOF
1471 +#define HAVE_FINITEF 1
1472 +EOF
1473 +
1474 + cat >> confdefs.h <<\EOF
1475 +#define HAVE_ISINF 1
1476 +EOF
1477 +
1478 + cat >> confdefs.h <<\EOF
1479 +#define HAVE_ISINFF 1
1480 +EOF
1481 +
1482 + cat >> confdefs.h <<\EOF
1483 +#define HAVE_ISNAN 1
1484 +EOF
1485 +
1486 + cat >> confdefs.h <<\EOF
1487 +#define HAVE_ISNANF 1
1488 +EOF
1489 + ;;
1490 *-linux*)
1491 os_include_dir="os/gnu-linux"
1492 for ac_hdr in nan.h ieeefp.h endian.h sys/isa_defs.h \
1493 diff -urN gcc-3.3.3-dist/libstdc++-v3/configure.in gcc-3.3.3/libstdc++-v3/configure.in
1494 --- gcc-3.3.3-dist/libstdc++-v3/configure.in 2004-01-12 10:19:22.000000000 -0600
1495 +++ gcc-3.3.3/libstdc++-v3/configure.in 2004-08-12 04:47:51.000000000 -0500
1496 @@ -117,6 +117,36 @@
1497 # GLIBCPP_CHECK_MATH_SUPPORT
1498
1499 case "$target" in
1500 + *-uclibc*)
1501 + os_include_dir="os/uclibc"
1502 + AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \
1503 + machine/endian.h machine/param.h sys/machine.h sys/types.h \
1504 + fp.h locale.h float.h inttypes.h])
1505 + SECTION_FLAGS='-ffunction-sections -fdata-sections'
1506 + AC_SUBST(SECTION_FLAGS)
1507 + GLIBCPP_CHECK_LINKER_FEATURES
1508 + GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT
1509 + GLIBCPP_CHECK_WCHAR_T_SUPPORT
1510 +
1511 + AC_DEFINE(HAVE_COPYSIGN)
1512 + #AC_DEFINE(HAVE_COPYSIGNF)
1513 + AC_DEFINE(HAVE_FINITE)
1514 + AC_DEFINE(HAVE_FINITEF)
1515 + #AC_DEFINE(HAVE_FREXPF)
1516 + #AC_DEFINE(HAVE_HYPOTF)
1517 + AC_DEFINE(HAVE_ISINF)
1518 + AC_DEFINE(HAVE_ISINFF)
1519 + AC_DEFINE(HAVE_ISNAN)
1520 + AC_DEFINE(HAVE_ISNANF)
1521 + #AC_DEFINE(HAVE_SINCOS)
1522 + #AC_DEFINE(HAVE_SINCOSF)
1523 + #if test x"long_double_math_on_this_cpu" = x"yes"; then
1524 + #AC_DEFINE(HAVE_FINITEL)
1525 + #AC_DEFINE(HAVE_HYPOTL)
1526 + #AC_DEFINE(HAVE_ISINFL)
1527 + #AC_DEFINE(HAVE_ISNANL)
1528 + #fi
1529 + ;;
1530 *-linux*)
1531 os_include_dir="os/gnu-linux"
1532 AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \
1533 diff -urN gcc-3.3.3-dist/libstdc++-v3/configure.target gcc-3.3.3/libstdc++-v3/configure.target
1534 --- gcc-3.3.3-dist/libstdc++-v3/configure.target 2003-10-01 14:07:07.000000000 -0500
1535 +++ gcc-3.3.3/libstdc++-v3/configure.target 2004-08-12 04:47:51.000000000 -0500
1536 @@ -133,6 +133,9 @@
1537 freebsd*)
1538 os_include_dir="os/bsd/freebsd"
1539 ;;
1540 + linux-uclibc*)
1541 + os_include_dir="os/uclibc"
1542 + ;;
1543 gnu* | linux*)
1544 os_include_dir="os/gnu-linux"
1545 ;;
1546 diff -urN gcc-3.3.3-dist/libstdc++-v3/include/c_std/std_cstdlib.h gcc-3.3.3/libstdc++-v3/include/c_std/std_cstdlib.h
1547 --- gcc-3.3.3-dist/libstdc++-v3/include/c_std/std_cstdlib.h 2003-04-18 05:08:05.000000000 -0500
1548 +++ gcc-3.3.3/libstdc++-v3/include/c_std/std_cstdlib.h 2004-08-12 04:47:51.000000000 -0500
1549 @@ -101,9 +101,11 @@
1550 using ::labs;
1551 using ::ldiv;
1552 using ::malloc;
1553 +#if _GLIBCPP_USE_WCHAR_T
1554 using ::mblen;
1555 using ::mbstowcs;
1556 using ::mbtowc;
1557 +#endif
1558 using ::qsort;
1559 using ::rand;
1560 using ::realloc;
1561 @@ -112,8 +114,10 @@
1562 using ::strtol;
1563 using ::strtoul;
1564 using ::system;
1565 +#if _GLIBCPP_USE_WCHAR_T
1566 using ::wcstombs;
1567 using ::wctomb;
1568 +#endif
1569
1570 inline long
1571 abs(long __i) { return labs(__i); }
1572 diff -urN gcc-3.3.3-dist/libstdc++-v3/include/c_std/std_cwchar.h gcc-3.3.3/libstdc++-v3/include/c_std/std_cwchar.h
1573 --- gcc-3.3.3-dist/libstdc++-v3/include/c_std/std_cwchar.h 2003-04-18 05:08:05.000000000 -0500
1574 +++ gcc-3.3.3/libstdc++-v3/include/c_std/std_cwchar.h 2004-08-12 04:47:51.000000000 -0500
1575 @@ -165,7 +165,9 @@
1576 using ::wcscoll;
1577 using ::wcscpy;
1578 using ::wcscspn;
1579 +#ifdef HAVE_WCSFTIME
1580 using ::wcsftime;
1581 +#endif
1582 using ::wcslen;
1583 using ::wcsncat;
1584 using ::wcsncmp;
1585 diff -urN gcc-3.3.3-dist/libtool.m4 gcc-3.3.3/libtool.m4
1586 --- gcc-3.3.3-dist/libtool.m4 2003-09-09 03:04:17.000000000 -0500
1587 +++ gcc-3.3.3/libtool.m4 2004-08-12 04:47:51.000000000 -0500
1588 @@ -687,6 +687,11 @@
1589 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
1590 ;;
1591
1592 +linux-uclibc*)
1593 + lt_cv_deplibs_check_method=pass_all
1594 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
1595 + ;;
1596 +
1597 netbsd*)
1598 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
1599 [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
1600 diff -urN gcc-3.3.3-dist/ltconfig gcc-3.3.3/ltconfig
1601 --- gcc-3.3.3-dist/ltconfig 2003-02-19 20:10:02.000000000 -0600
1602 +++ gcc-3.3.3/ltconfig 2004-08-12 04:47:51.000000000 -0500
1603 @@ -603,6 +603,7 @@
1604 # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
1605 case $host_os in
1606 linux-gnu*) ;;
1607 +linux-uclibc*) ;;
1608 linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
1609 esac
1610
1611 @@ -1247,6 +1248,24 @@
1612 dynamic_linker='GNU/Linux ld.so'
1613 ;;
1614
1615 +linux-uclibc*)
1616 + version_type=linux
1617 + need_lib_prefix=no
1618 + need_version=no
1619 + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1620 + soname_spec='${libname}${release}.so$major'
1621 + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
1622 + shlibpath_var=LD_LIBRARY_PATH
1623 + shlibpath_overrides_runpath=no
1624 + # This implies no fast_install, which is unacceptable.
1625 + # Some rework will be needed to allow for fast_install
1626 + # before this can be enabled.
1627 + # Note: copied from linux-gnu, and may not be appropriate.
1628 + hardcode_into_libs=yes
1629 + # Assume using the uClibc dynamic linker.
1630 + dynamic_linker="uClibc ld.so"
1631 + ;;
1632 +
1633 netbsd*)
1634 need_lib_prefix=no
1635 need_version=no