Fix warnings
[openwrt.git] / toolchain / gcc / patches / 4.1.1 / 100-uclibc-conf.patch
1 --- gcc-4.1.0/gcc/config/t-linux-uclibc
2 +++ gcc-4.1.0/gcc/config/t-linux-uclibc
3 @@ -0,0 +1,5 @@
4 +# Remove glibc specific files added in t-linux
5 +SHLIB_MAPFILES := $(filter-out $(srcdir)/config/libgcc-glibc.ver, $(SHLIB_MAPFILES))
6 +
7 +# Use unwind-dw2-fde instead of unwind-dw2-fde-glibc
8 +LIB2ADDEH := $(subst unwind-dw2-fde-glibc.c,unwind-dw2-fde.c,$(LIB2ADDEH))
9 --- gcc-4.1.0/gcc/config.gcc
10 +++ gcc-4.1.0/gcc/config.gcc
11 @@ -1887,7 +1887,7 @@ s390x-ibm-tpf*)
12         ;;
13  sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \
14  sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
15 -  sh-*-linux* | sh[346lbe]*-*-linux* | \
16 +  sh*-*-linux* | sh[346lbe]*-*-linux* | \
17    sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
18     sh64-*-netbsd* | sh64l*-*-netbsd*)
19         tmake_file="${tmake_file} sh/t-sh sh/t-elf"
20 @@ -2341,6 +2341,12 @@ m32c-*-elf*)
21         ;;
22  esac
23  
24 +# Rather than hook into each target, just do it after all the linux
25 +# targets have been processed
26 +case ${target} in
27 +*-linux-uclibc*) tm_defines="${tm_defines} USE_UCLIBC" ; tmake_file="${tmake_file} t-linux-uclibc"
28 +esac
29 +
30  case ${target} in
31  i[34567]86-*-linux*aout* | i[34567]86-*-linux*libc1)
32         tmake_file="${tmake_file} i386/t-gmm_malloc"
33 --- gcc-4.1.0/boehm-gc/configure
34 +++ gcc-4.1.0/boehm-gc/configure
35 @@ -4320,6 +4320,11 @@ linux-gnu*)
36    lt_cv_deplibs_check_method=pass_all
37    ;;
38  
39 +linux-uclibc*)
40 +  lt_cv_deplibs_check_method=pass_all
41 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
42 +  ;;
43 +
44  netbsd* | knetbsd*-gnu)
45    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
46      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
47 --- gcc-4.1.0/configure
48 +++ gcc-4.1.0/configure
49 @@ -1133,7 +1133,7 @@ no)
50      ;;
51  "")
52      case "${target}" in
53 -    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
54 +    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*)
55          # Enable libmudflap by default in GNU and friends.
56         ;;
57      *-*-freebsd*)
58 --- gcc-4.1.0/configure.in
59 +++ gcc-4.1.0/configure.in
60 @@ -341,7 +341,7 @@ no)
61      ;;
62  "")
63      case "${target}" in
64 -    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
65 +    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*)
66          # Enable libmudflap by default in GNU and friends.
67         ;;
68      *-*-freebsd*)
69 --- gcc-4.1.0/contrib/regression/objs-gcc.sh
70 +++ gcc-4.1.0/contrib/regression/objs-gcc.sh
71 @@ -105,6 +105,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H
72   then
73    make all-gdb all-dejagnu all-ld || exit 1
74    make install-gdb install-dejagnu install-ld || exit 1
75 +elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ]
76 + then
77 +  make all-gdb all-dejagnu all-ld || exit 1
78 +  make install-gdb install-dejagnu install-ld || exit 1
79  elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
80    make bootstrap || exit 1
81    make install || exit 1
82 --- gcc-4.1.0/gcc/config/alpha/linux-elf.h
83 +++ gcc-4.1.0/gcc/config/alpha/linux-elf.h
84 @@ -27,7 +27,11 @@ Boston, MA 02110-1301, USA.  */
85  #define SUBTARGET_EXTRA_SPECS \
86  { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
87  
88 +#if defined USE_UCLIBC
89 +#define ELF_DYNAMIC_LINKER     "/lib/ld-uClibc.so.0"
90 +#else
91  #define ELF_DYNAMIC_LINKER     "/lib/ld-linux.so.2"
92 +#endif
93  
94  #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax}         \
95    %{O*:-O3} %{!O*:-O1}                                         \
96 --- gcc-4.1.0/gcc/config/arm/linux-elf.h
97 +++ gcc-4.1.0/gcc/config/arm/linux-elf.h
98 @@ -51,7 +51,11 @@
99  
100  #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
101  
102 +#ifdef USE_UCLIBC
103 +#define LINUX_TARGET_INTERPRETER "/lib/ld-uClibc.so.0"
104 +#else
105  #define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.2"
106 +#endif
107  
108  #define LINUX_TARGET_LINK_SPEC  "%{h*} %{version:-v} \
109     %{b} \
110 --- gcc-4.1.0/gcc/config/cris/linux.h
111 +++ gcc-4.1.0/gcc/config/cris/linux.h
112 @@ -73,6 +73,25 @@ Boston, MA 02110-1301, USA.  */
113  #undef CRIS_DEFAULT_CPU_VERSION
114  #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
115  
116 +#ifdef USE_UCLIBC
117 +
118 +#undef CRIS_SUBTARGET_VERSION
119 +#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
120 +
121 +#undef CRIS_LINK_SUBTARGET_SPEC
122 +#define CRIS_LINK_SUBTARGET_SPEC \
123 + "-mcrislinux\
124 +  -rpath-link include/asm/../..%s\
125 +  %{shared} %{static}\
126 +  %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\
127 +  %{!shared: \
128 +    %{!static: \
129 +      %{rdynamic:-export-dynamic} \
130 +      %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \
131 +  %{!r:%{O2|O3: --gc-sections}}"
132 +
133 +#else  /* USE_UCLIBC */
134 +
135  #undef CRIS_SUBTARGET_VERSION
136  #define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
137  
138 @@ -87,6 +106,8 @@ Boston, MA 02110-1301, USA.  */
139    %{!shared:%{!static:%{rdynamic:-export-dynamic}}}\
140    %{!r:%{O2|O3: --gc-sections}}"
141  
142 +#endif  /* USE_UCLIBC */
143 +
144  
145  /* Node: Run-time Target */
146  
147 --- gcc-4.1.0/gcc/config/i386/linux.h
148 +++ gcc-4.1.0/gcc/config/i386/linux.h
149 @@ -107,6 +107,11 @@ Boston, MA 02110-1301, USA.  */
150  #define LINK_EMULATION "elf_i386"
151  #define DYNAMIC_LINKER "/lib/ld-linux.so.2"
152  
153 +#if defined USE_UCLIBC
154 +#undef DYNAMIC_LINKER
155 +#define DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
156 +#endif
157 +
158  #undef  SUBTARGET_EXTRA_SPECS
159  #define SUBTARGET_EXTRA_SPECS \
160    { "link_emulation", LINK_EMULATION },\
161 --- gcc-4.1.0/gcc/config/i386/linux64.h
162 +++ gcc-4.1.0/gcc/config/i386/linux64.h
163 @@ -54,14 +54,21 @@ Boston, MA 02110-1301, USA.  */
164     When the -shared link option is used a final link is not being
165     done.  */
166  
167 +#ifdef USE_UCLIBC
168 +#define ELF32_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
169 +#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0"
170 +#else
171 +#define ELF32_DYNAMIC_LINKER "/lib/ld-linux.so.2"
172 +#define ELF64_DYNAMIC_LINKER "/lib64/ld-linux-x86-64.so.2"
173 +#endif
174  #undef LINK_SPEC
175  #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \
176    %{shared:-shared} \
177    %{!shared: \
178      %{!static: \
179        %{rdynamic:-export-dynamic} \
180 -      %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
181 -      %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \
182 +      %{m32:%{!dynamic-linker:-dynamic-linker " ELF32_DYNAMIC_LINKER "}} \
183 +      %{!m32:%{!dynamic-linker:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}} \
184      %{static:-static}}"
185  
186  /* Similar to standard Linux, but adding -ffast-math support.  */
187 --- gcc-4.1.0/gcc/config/ia64/linux.h
188 +++ gcc-4.1.0/gcc/config/ia64/linux.h
189 @@ -37,13 +37,18 @@ do {                                                \
190  /* Define this for shared library support because it isn't in the main
191     linux.h file.  */
192  
193 +#ifdef USE_UCLIBC
194 +#define ELF_DYNAMIC_LINKER     "/lib/ld-uClibc.so.0"
195 +#else
196 +#define ELF_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
197 +#endif
198  #undef LINK_SPEC
199  #define LINK_SPEC "\
200    %{shared:-shared} \
201    %{!shared: \
202      %{!static: \
203        %{rdynamic:-export-dynamic} \
204 -      %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \
205 +      %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
206        %{static:-static}}"
207  
208  
209 --- gcc-4.1.0/gcc/config/m68k/linux.h
210 +++ gcc-4.1.0/gcc/config/m68k/linux.h
211 @@ -123,12 +123,17 @@ Boston, MA 02110-1301, USA.  */
212  
213  /* If ELF is the default format, we should not use /lib/elf.  */
214  
215 +#ifdef USE_UCLIBC
216 +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
217 +#else
218 +#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
219 +#endif
220  #undef LINK_SPEC
221  #define LINK_SPEC "-m m68kelf %{shared} \
222    %{!shared: \
223      %{!static: \
224        %{rdynamic:-export-dynamic} \
225 -      %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \
226 +      %{!dynamic-linker*:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
227      %{static}}"
228  
229  /* For compatibility with linux/a.out */
230 --- gcc-4.1.0/gcc/config/mips/linux.h
231 +++ gcc-4.1.0/gcc/config/mips/linux.h
232 @@ -105,6 +105,11 @@ Boston, MA 02110-1301, USA.  */
233  
234  /* Borrowed from sparc/linux.h */
235  #undef LINK_SPEC
236 +#ifdef USE_UCLIBC
237 +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
238 +#else
239 +#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
240 +#endif
241  #define LINK_SPEC \
242   "%(endian_spec) \
243    %{shared:-shared} \
244 @@ -112,7 +117,7 @@ Boston, MA 02110-1301, USA.  */
245      %{!ibcs: \
246        %{!static: \
247          %{rdynamic:-export-dynamic} \
248 -        %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
249 +        %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
250          %{static:-static}}}"
251  
252  #undef SUBTARGET_ASM_SPEC
253 --- gcc-4.1.0/gcc/config/pa/pa-linux.h
254 +++ gcc-4.1.0/gcc/config/pa/pa-linux.h
255 @@ -49,13 +49,18 @@ Boston, MA 02110-1301, USA.  */
256  /* Define this for shared library support because it isn't in the main
257     linux.h file.  */
258  
259 +#ifdef USE_UCLIBC
260 +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
261 +#else
262 +#define ELF_DYNAMIC_LINKER "/lib/ld.so.1"
263 +#endif
264  #undef LINK_SPEC
265  #define LINK_SPEC "\
266    %{shared:-shared} \
267    %{!shared: \
268      %{!static: \
269        %{rdynamic:-export-dynamic} \
270 -      %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
271 +      %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
272        %{static:-static}}"
273  
274  /* glibc's profiling functions don't need gcc to allocate counters.  */
275 --- gcc-4.1.0/gcc/config/rs6000/linux.h
276 +++ gcc-4.1.0/gcc/config/rs6000/linux.h
277 @@ -72,7 +72,11 @@
278  #define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
279  
280  #undef LINK_OS_DEFAULT_SPEC
281 +#ifdef USE_UCLIBC
282 +#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)"
283 +#else
284  #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
285 +#endif
286  
287  #define LINK_GCC_C_SEQUENCE_SPEC \
288    "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
289 --- gcc-4.1.0/gcc/config/rs6000/sysv4.h
290 +++ gcc-4.1.0/gcc/config/rs6000/sysv4.h
291 @@ -866,6 +866,7 @@ extern int fixuplabelno;
292    mcall-linux  : %(link_os_linux)       ; \
293    mcall-gnu    : %(link_os_gnu)         ; \
294    mcall-netbsd : %(link_os_netbsd)      ; \
295 +  mcall-linux-uclibc : %(link_os_linux_uclibc); \
296    mcall-openbsd: %(link_os_openbsd)     ; \
297                 : %(link_os_default)     }"
298  
299 @@ -1043,6 +1044,10 @@ extern int fixuplabelno;
300    %{rdynamic:-export-dynamic} \
301    %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
302  
303 +#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \
304 +  %{rdynamic:-export-dynamic} \
305 +  %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}"
306 +
307  #if defined(HAVE_LD_EH_FRAME_HDR)
308  # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
309  #endif
310 @@ -1209,6 +1214,7 @@ ncrtn.o%s"
311    { "link_os_sim",             LINK_OS_SIM_SPEC },                     \
312    { "link_os_freebsd",         LINK_OS_FREEBSD_SPEC },                 \
313    { "link_os_linux",           LINK_OS_LINUX_SPEC },                   \
314 +  { "link_os_linux_uclibc",    LINK_OS_LINUX_UCLIBC_SPEC },            \
315    { "link_os_gnu",             LINK_OS_GNU_SPEC },                     \
316    { "link_os_netbsd",          LINK_OS_NETBSD_SPEC },                  \
317    { "link_os_openbsd",         LINK_OS_OPENBSD_SPEC },                 \
318 --- gcc-4.1.0/gcc/config/s390/linux.h
319 +++ gcc-4.1.0/gcc/config/s390/linux.h
320 @@ -77,6 +77,13 @@ Software Foundation, 51 Franklin Street,
321  #define MULTILIB_DEFAULTS { "m31" }
322  #endif
323  
324 +#ifdef USE_UCLIBC
325 +#define ELF31_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
326 +#define ELF64_DYNAMIC_LINKER "/lib/ld64-uClibc.so.0"
327 +#else
328 +#define ELF31_DYNAMIC_LINKER "/lib/ld.so.1"
329 +#define ELF64_DYNAMIC_LINKER "/lib/ld64.so.1"
330 +#endif
331  #undef  LINK_SPEC
332  #define LINK_SPEC \
333    "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
334 @@ -86,8 +93,8 @@ Software Foundation, 51 Franklin Street,
335        %{!static: \
336         %{rdynamic:-export-dynamic} \
337         %{!dynamic-linker: \
338 -          %{m31:-dynamic-linker /lib/ld.so.1} \
339 -          %{m64:-dynamic-linker /lib/ld64.so.1}}}}"
340 +          %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \
341 +          %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}"
342  
343  
344  #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
345 --- gcc-4.1.0/gcc/config/sh/linux.h
346 +++ gcc-4.1.0/gcc/config/sh/linux.h
347 @@ -56,12 +56,21 @@ Boston, MA 02110-1301, USA.  */
348  #undef SUBTARGET_LINK_EMUL_SUFFIX
349  #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
350  #undef SUBTARGET_LINK_SPEC
351 +#ifdef USE_UCLIBC
352 +#define SUBTARGET_LINK_SPEC \
353 +  "%{shared:-shared} \
354 +   %{!static: \
355 +     %{rdynamic:-export-dynamic} \
356 +     %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
357 +   %{static:-static}"
358 +#else
359  #define SUBTARGET_LINK_SPEC \
360    "%{shared:-shared} \
361     %{!static: \
362       %{rdynamic:-export-dynamic} \
363       %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
364     %{static:-static}"
365 +#endif
366  
367  /* Output assembler code to STREAM to call the profiler.  */
368  
369 --- gcc-4.1.0/gcc/config/sparc/linux.h
370 +++ gcc-4.1.0/gcc/config/sparc/linux.h
371 @@ -125,6 +125,11 @@ Boston, MA 02110-1301, USA.  */
372  
373  /* If ELF is the default format, we should not use /lib/elf.  */
374  
375 +#ifdef USE_UCLIBC
376 +#define ELF_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
377 +#else
378 +#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
379 +#endif
380  #undef  LINK_SPEC
381  #define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
382    %{!mno-relax:%{!r:-relax}} \
383 @@ -132,7 +137,7 @@ Boston, MA 02110-1301, USA.  */
384      %{!ibcs: \
385        %{!static: \
386          %{rdynamic:-export-dynamic} \
387 -        %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
388 +        %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
389          %{static:-static}}}"
390  
391  /* The sun bundled assembler doesn't accept -Yd, (and neither does gas).
392 --- gcc-4.1.0/gcc/config/sparc/linux64.h
393 +++ gcc-4.1.0/gcc/config/sparc/linux64.h
394 @@ -162,12 +162,17 @@ Boston, MA 02110-1301, USA.  */
395    { "link_arch_default", LINK_ARCH_DEFAULT_SPEC },       \
396    { "link_arch",        LINK_ARCH_SPEC },
397      
398 +#ifdef USE_UCLIBC
399 +#define ELF_DYNAMIC_LINKER     "/lib/ld-uClibc.so.0"
400 +#else
401 +#define ELF_DYNAMIC_LINKER  "/lib/ld-linux.so.2"
402 +#endif
403  #define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
404    %{!shared: \
405      %{!ibcs: \
406        %{!static: \
407          %{rdynamic:-export-dynamic} \
408 -        %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
409 +        %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
410          %{static:-static}}} \
411  "
412  
413 --- gcc-4.1.0/libffi/configure
414 +++ gcc-4.1.0/libffi/configure
415 @@ -3457,6 +3457,11 @@ linux-gnu*)
416    lt_cv_deplibs_check_method=pass_all
417    ;;
418  
419 +linux-uclibc*)
420 +  lt_cv_deplibs_check_method=pass_all
421 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
422 +  ;;
423 +
424  netbsd* | knetbsd*-gnu)
425    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
426      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
427 --- gcc-4.1.0/libgfortran/configure
428 +++ gcc-4.1.0/libgfortran/configure
429 @@ -3699,6 +3699,11 @@ linux-gnu*)
430    lt_cv_deplibs_check_method=pass_all
431    ;;
432  
433 +linux-uclibc*)
434 +  lt_cv_deplibs_check_method=pass_all
435 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
436 +  ;;
437 +
438  netbsd* | knetbsd*-gnu)
439    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
440      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
441 --- gcc-4.1.0/libjava/configure
442 +++ gcc-4.1.0/libjava/configure
443 @@ -5137,6 +5137,11 @@ linux-gnu*)
444    lt_cv_deplibs_check_method=pass_all
445    ;;
446  
447 +linux-uclibc*)
448 +  lt_cv_deplibs_check_method=pass_all
449 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
450 +  ;;
451 +
452  netbsd* | knetbsd*-gnu)
453    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
454      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
455 --- gcc-4.1.0/libmudflap/configure
456 +++ gcc-4.1.0/libmudflap/configure
457 @@ -5382,6 +5382,11 @@ linux-gnu*)
458    lt_cv_deplibs_check_method=pass_all
459    ;;
460  
461 +linux-uclibc*)
462 +  lt_cv_deplibs_check_method=pass_all
463 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
464 +  ;;
465 +
466  netbsd* | knetbsd*-gnu)
467    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
468      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
469 --- gcc-4.1.0/libobjc/configure
470 +++ gcc-4.1.0/libobjc/configure
471 @@ -3312,6 +3312,11 @@ linux-gnu*)
472    lt_cv_deplibs_check_method=pass_all
473    ;;
474  
475 +linux-uclibc*)
476 +  lt_cv_deplibs_check_method=pass_all
477 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
478 +  ;;
479 +
480  netbsd* | knetbsd*-gnu)
481    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
482      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
483 --- gcc-4.1.0/libtool.m4
484 +++ gcc-4.1.0/libtool.m4
485 @@ -743,6 +743,11 @@ linux-gnu*)
486    lt_cv_deplibs_check_method=pass_all
487    ;;
488  
489 +linux-uclibc*)
490 +  lt_cv_deplibs_check_method=pass_all
491 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
492 +  ;;
493 +
494  netbsd* | knetbsd*-gnu)
495    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
496      [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
497 --- gcc-4.1.0/ltconfig
498 +++ gcc-4.1.0/ltconfig
499 @@ -603,6 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
500  
501  # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
502  case $host_os in
503 +linux-uclibc*) ;;
504  linux-gnu*) ;;
505  linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
506  esac
507 @@ -1274,6 +1275,23 @@ linux-gnu*)
508    dynamic_linker='GNU/Linux ld.so'
509    ;;
510  
511 +linux-uclibc*)
512 +  version_type=linux
513 +  need_lib_prefix=no
514 +  need_version=no
515 +  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
516 +  soname_spec='${libname}${release}.so$major'
517 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
518 +  shlibpath_var=LD_LIBRARY_PATH
519 +  shlibpath_overrides_runpath=no
520 +  # This implies no fast_install, which is unacceptable.
521 +  # Some rework will be needed to allow for fast_install
522 +  # before this can be enabled.
523 +  hardcode_into_libs=yes
524 +  # Assume using the uClibc dynamic linker.
525 +  dynamic_linker="uClibc ld.so"
526 +  ;;
527 +
528  netbsd*)
529    need_lib_prefix=no
530    need_version=no
531 --- gcc-4.1.0/zlib/configure
532 +++ gcc-4.1.0/zlib/configure
533 @@ -3426,6 +3426,11 @@ linux-gnu*)
534    lt_cv_deplibs_check_method=pass_all
535    ;;
536  
537 +linux-uclibc*)
538 +  lt_cv_deplibs_check_method=pass_all
539 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
540 +  ;;
541 +
542  netbsd* | knetbsd*-gnu)
543    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
544      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'