3 # Patch managed by http://www.holgerschurig.de/patcher.html
6 --- binutils-2.14.90.0.7/bfd/config.bfd~binutils-uclibc-100-conf
7 +++ binutils-2.14.90.0.7/bfd/config.bfd
9 targ_defvec=ecoffalpha_little_vec
10 targ_selvecs=bfd_elf64_alpha_vec
12 - alpha*-*-linux-gnu* | alpha*-*-elf*)
13 + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc* | alpha*-*-elf*)
14 targ_defvec=bfd_elf64_alpha_vec
15 targ_selvecs=ecoffalpha_little_vec
19 targ_defvec=ecoffalpha_little_vec
21 - ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
22 + ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-kfreebsd*-gnu | \
23 + ia64*-*-linux-uclibc* | ia64*-*-elf*)
24 targ_defvec=bfd_elf64_ia64_little_vec
25 targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec"
28 targ_defvec=bfd_elf32_littlearm_vec
29 targ_selvecs=bfd_elf32_bigarm_vec
31 - armeb-*-elf | arm*b-*-linux-gnu*)
32 + armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*)
33 targ_defvec=bfd_elf32_bigarm_vec
34 targ_selvecs=bfd_elf32_littlearm_vec
37 targ_defvec=bfd_elf32_littlearm_vec
38 targ_selvecs=bfd_elf32_bigarm_vec
40 - arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu)
41 + arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | arm-*-kfreebsd*-gnu | \
42 + arm*-*-conix* | arm*-*-uclinux*)
43 targ_defvec=bfd_elf32_littlearm_vec
44 targ_selvecs=bfd_elf32_bigarm_vec
50 - hppa*64*-*-linux-gnu*)
51 + hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*)
52 targ_defvec=bfd_elf64_hppa_linux_vec
53 targ_selvecs=bfd_elf64_hppa_vec
59 - hppa*-*-linux-gnu* | hppa*-*-netbsd*)
60 + hppa*-*-linux-gnu* | hppa*-*-linux-uclibc* | hppa*-*-netbsd*)
61 targ_defvec=bfd_elf32_hppa_linux_vec
62 targ_selvecs=bfd_elf32_hppa_vec
65 targ_selvecs=bfd_elf32_i386_vec
68 - i[3-7]86-*-linux-gnu*)
69 + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
70 targ_defvec=bfd_elf32_i386_vec
71 targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec"
72 targ64_selvecs=bfd_elf64_x86_64_vec
74 targ_defvec=bfd_elf64_x86_64_vec
75 targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec"
77 - x86_64-*-linux-gnu*)
78 + x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*)
79 targ_defvec=bfd_elf64_x86_64_vec
80 targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec"
83 targ_selvecs=bfd_elf32_m68k_vec
87 + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
88 targ_defvec=bfd_elf32_m68k_vec
89 targ_selvecs=m68klinux_vec
94 powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
95 - powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \
96 + powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-linux-uclibc* | \
97 + powerpc-*-rtems* | \
98 powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*)
99 targ_defvec=bfd_elf32_powerpc_vec
100 targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
102 targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
104 powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
105 - powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\
106 - powerpcle-*-rtems*)
107 + powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-linux-uclibc* |\
108 + powerpcle-*-vxworks* | powerpcle-*-rtems*)
109 targ_defvec=bfd_elf32_powerpcle_vec
110 targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
111 targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
112 @@ -1110,7 +1113,7 @@
113 targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
116 - sparc-*-linux-gnu*)
117 + sparc-*-linux-gnu* | sparc-*-linux-uclibc*)
118 targ_defvec=bfd_elf32_sparc_vec
119 targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
121 @@ -1157,7 +1160,7 @@
122 targ_defvec=sunos_big_vec
125 - sparc64-*-linux-gnu*)
126 + sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*)
127 targ_defvec=bfd_elf64_sparc_vec
128 targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
130 --- binutils-2.14.90.0.7/bfd/configure~binutils-uclibc-100-conf
131 +++ binutils-2.14.90.0.7/bfd/configure
132 @@ -1699,6 +1699,11 @@
133 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
137 + lt_cv_deplibs_check_method=pass_all
138 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
142 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
143 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
144 @@ -5278,7 +5283,7 @@
145 alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
148 - alpha*-*-linux-gnu*)
149 + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
150 COREFILE=trad-core.lo
151 TRAD_HEADER='"hosts/alphalinux.h"'
153 @@ -5338,7 +5343,7 @@
154 COREFILE=trad-core.lo
155 TRAD_HEADER='"hosts/i386mach3.h"'
157 - i[3-7]86-*-linux-gnu*)
158 + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
159 COREFILE=trad-core.lo
160 TRAD_HEADER='"hosts/i386linux.h"'
162 @@ -5388,7 +5393,7 @@
163 COREFILE=trad-core.lo
164 TRAD_HEADER='"hosts/hp300bsd.h"'
167 + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
168 COREFILE=trad-core.lo
169 TRAD_HEADER='"hosts/m68klinux.h"'
171 --- binutils-2.14.90.0.7/bfd/configure.in~binutils-uclibc-100-conf
172 +++ binutils-2.14.90.0.7/bfd/configure.in
174 alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
177 - alpha*-*-linux-gnu*)
178 + alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
179 COREFILE=trad-core.lo
180 TRAD_HEADER='"hosts/alphalinux.h"'
183 TRAD_HEADER='"hosts/i386mach3.h"'
186 - i[3-7]86-*-linux-gnu*)
187 + i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
189 COREFILE=trad-core.lo
190 TRAD_HEADER='"hosts/i386linux.h"'
192 COREFILE=trad-core.lo
193 TRAD_HEADER='"hosts/hp300bsd.h"'
196 + m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
197 COREFILE=trad-core.lo
198 TRAD_HEADER='"hosts/m68klinux.h"'
200 --- binutils-2.14.90.0.7/config.sub~binutils-uclibc-100-conf
201 +++ binutils-2.14.90.0.7/config.sub
203 # Here we must recognize all the valid KERNEL-OS combinations.
204 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
206 - nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
207 + nto-qnx* | linux-gnu* | linux-uclibc* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
209 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
211 @@ -1131,7 +1131,8 @@
212 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
213 | -chorusos* | -chorusrdb* \
214 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
215 - | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
216 + | -mingw32* | -linux-gnu* | -linux-uclibc* \
217 + | -uxpv* | -beos* | -mpeix* | -udk* \
218 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
219 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
220 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
221 --- binutils-2.14.90.0.7/configure~binutils-uclibc-100-conf
222 +++ binutils-2.14.90.0.7/configure
223 @@ -1276,6 +1276,18 @@
224 i[3456789]86-*-freebsd* | i[3456789]86-*-kfreebsd*-gnu)
225 noconfigdirs="$noconfigdirs target-newlib target-libgloss"
227 + i[3456789]86-*-linux-uclibc)
228 + # This section makes it possible to build newlib natively on linux.
229 + # If we are using a cross compiler then don't configure newlib.
230 + if test x${is_cross_compiler} != xno ; then
231 + noconfigdirs="$noconfigdirs target-newlib"
233 + noconfigdirs="$noconfigdirs target-libgloss"
234 + # If we are not using a cross compiler, do configure newlib.
235 + # Note however, that newlib will only be configured in this situation
236 + # if the --with-newlib option has been given, because otherwise
237 + # 'target-newlib' will appear in skipdirs.
239 i[3456789]86-*-linux*)
240 # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
241 # not build java stuff by default.
242 --- binutils-2.14.90.0.7/configure.in~binutils-uclibc-100-conf
243 +++ binutils-2.14.90.0.7/configure.in
245 i[[3456789]]86-*-freebsd* | i[[3456789]]86-*-kfreebsd*-gnu)
246 noconfigdirs="$noconfigdirs target-newlib target-libgloss"
248 + i[3456789]86-*-linux-uclibc)
249 + # This section makes it possible to build newlib natively on linux.
250 + # If we are using a cross compiler then don't configure newlib.
251 + if test x${is_cross_compiler} != xno ; then
252 + noconfigdirs="$noconfigdirs target-newlib"
254 + noconfigdirs="$noconfigdirs target-libgloss"
256 + # If we are not using a cross compiler, do configure newlib.
257 + # Note however, that newlib will only be configured in this situation
258 + # if the --with-newlib option has been given, because otherwise
259 + # 'target-newlib' will appear in skipdirs.
261 i[[3456789]]86-*-linux*)
262 # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
263 # not build java stuff by default.
264 --- binutils-2.14.90.0.7/demangler/configure~binutils-uclibc-100-conf
265 +++ binutils-2.14.90.0.7/demangler/configure
266 @@ -1380,6 +1380,11 @@
267 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
271 + lt_cv_deplibs_check_method=pass_all
272 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
276 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
277 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
278 --- binutils-2.14.90.0.7/gas/configure~binutils-uclibc-100-conf
279 +++ binutils-2.14.90.0.7/gas/configure
280 @@ -3215,6 +3215,11 @@
281 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
285 + lt_cv_deplibs_check_method=pass_all
286 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
290 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
291 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
292 @@ -4028,6 +4033,7 @@
293 alpha*-*-osf*) fmt=ecoff ;;
294 alpha*-*-linuxecoff*) fmt=ecoff ;;
295 alpha*-*-linux-gnu*) fmt=elf em=linux ;;
296 + alpha*-*-linux-uclibc*) fmt=elf em=linux ;;
297 alpha*-*-netbsd*) fmt=elf em=nbsd ;;
298 alpha*-*-openbsd*) fmt=elf em=obsd ;;
300 @@ -4044,6 +4050,7 @@
301 arm*-*-conix*) fmt=elf ;;
302 arm-*-linux*aout*) fmt=aout em=linux ;;
303 arm*-*-linux-gnu*) fmt=elf em=linux ;;
304 + arm*-*-linux-uclibc*) fmt=elf em=linux ;;
305 arm*-*-uclinux*) fmt=elf em=linux ;;
306 arm-*-netbsdelf*) fmt=elf em=nbsd ;;
307 arm-*-*n*bsd*) fmt=aout em=nbsd ;;
308 @@ -4058,6 +4065,7 @@
311 cris-*-linux-gnu*) fmt=multi bfd_gas=yes em=linux ;;
312 + cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
313 cris-*-*) fmt=multi bfd_gas=yes ;;
316 @@ -4114,7 +4122,9 @@
317 i386-*-linux*oldld) fmt=aout em=linux ;;
318 i386-*-linux*coff*) fmt=coff em=linux ;;
319 i386-*-linux-gnu*) fmt=elf em=linux ;;
320 + i386-*-linux-uclibc*) fmt=elf em=linux ;;
321 x86_64-*-linux-gnu*) fmt=elf em=linux ;;
322 + x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
323 i386-*-lynxos*) fmt=coff em=lynx ;;
324 i386-*-sysv[45]*) fmt=elf ;;
325 i386-*-solaris*) fmt=elf ;;
326 @@ -4175,6 +4185,7 @@
327 ia64-*-elf*) fmt=elf ;;
328 ia64-*-aix*) fmt=elf em=ia64aix ;;
329 ia64-*-linux-gnu*) fmt=elf em=linux ;;
330 + ia64-*-linux-uclibc*) fmt=elf em=linux ;;
331 ia64-*-hpux*) fmt=elf em=hpux ;;
332 ia64-*-netbsd*) fmt=elf em=nbsd ;;
334 @@ -4201,6 +4212,7 @@
335 m68k-*-hpux*) fmt=hp300 em=hp300 ;;
336 m68k-*-linux*aout*) fmt=aout em=linux ;;
337 m68k-*-linux-gnu*) fmt=elf em=linux ;;
338 + m68k-*-linux-uclibc*) fmt=elf em=linux ;;
339 m68k-*-gnu*) fmt=elf ;;
340 m68k-*-lynxos*) fmt=coff em=lynx ;;
341 m68k-*-netbsdelf*) fmt=elf em=nbsd ;;
342 @@ -4257,6 +4269,7 @@
343 ppc-*-beos*) fmt=coff ;;
344 ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
345 ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
346 + ppc-*-linux-uclibc* | \
347 ppc-*-linux-gnu*) fmt=elf em=linux
350 @@ -4286,7 +4299,9 @@
351 ppc-*-kaos*) fmt=elf ;;
353 s390x-*-linux-gnu*) fmt=elf em=linux ;;
354 + s390x-*-linux-uclibc*) fmt=elf em=linux ;;
355 s390-*-linux-gnu*) fmt=elf em=linux ;;
356 + s390-*-linux-uclibc*) fmt=elf em=linux ;;
358 sh*-*-linux*) fmt=elf em=linux
360 @@ -4319,6 +4334,7 @@
361 sparc-*-coff) fmt=coff ;;
362 sparc-*-linux*aout*) fmt=aout em=linux ;;
363 sparc-*-linux-gnu*) fmt=elf em=linux ;;
364 + sparc-*-linux-uclibc*) fmt=elf em=linux ;;
365 sparc-*-lynxos*) fmt=coff em=lynx ;;
366 sparc-fujitsu-none) fmt=aout ;;
367 sparc-*-elf) fmt=elf ;;
368 --- binutils-2.14.90.0.7/gas/configure.in~binutils-uclibc-100-conf
369 +++ binutils-2.14.90.0.7/gas/configure.in
371 alpha*-*-osf*) fmt=ecoff ;;
372 alpha*-*-linuxecoff*) fmt=ecoff ;;
373 alpha*-*-linux-gnu*) fmt=elf em=linux ;;
374 + alpha*-*-linux-uclibc*) fmt=elf em=linux ;;
375 alpha*-*-netbsd*) fmt=elf em=nbsd ;;
376 alpha*-*-openbsd*) fmt=elf em=obsd ;;
379 arm*-*-conix*) fmt=elf ;;
380 arm-*-linux*aout*) fmt=aout em=linux ;;
381 arm*-*-linux-gnu*) fmt=elf em=linux ;;
382 + arm*-*-linux-uclibc*) fmt=elf em=linux ;;
383 arm*-*-uclinux*) fmt=elf em=linux ;;
384 arm-*-netbsdelf*) fmt=elf em=nbsd ;;
385 arm-*-*n*bsd*) fmt=aout em=nbsd ;;
389 cris-*-linux-gnu*) fmt=multi bfd_gas=yes em=linux ;;
390 + cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
391 cris-*-*) fmt=multi bfd_gas=yes ;;
395 i386-*-linux*oldld) fmt=aout em=linux ;;
396 i386-*-linux*coff*) fmt=coff em=linux ;;
397 i386-*-linux-gnu*) fmt=elf em=linux ;;
398 + i386-*-linux-uclibc*) fmt=elf em=linux ;;
399 x86_64-*-linux-gnu*) fmt=elf em=linux ;;
400 + x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
401 i386-*-lynxos*) fmt=coff em=lynx ;;
403 i386-*-sysv[45]*) fmt=elf ;;
405 ia64-*-elf*) fmt=elf ;;
406 ia64-*-aix*) fmt=elf em=ia64aix ;;
407 ia64-*-linux-gnu*) fmt=elf em=linux ;;
408 + ia64-*-linux-uclibc*) fmt=elf em=linux ;;
409 ia64-*-hpux*) fmt=elf em=hpux ;;
410 ia64-*-netbsd*) fmt=elf em=nbsd ;;
413 m68k-*-hpux*) fmt=hp300 em=hp300 ;;
414 m68k-*-linux*aout*) fmt=aout em=linux ;;
415 m68k-*-linux-gnu*) fmt=elf em=linux ;;
416 + m68k-*-linux-uclibc*) fmt=elf em=linux ;;
417 m68k-*-gnu*) fmt=elf ;;
418 m68k-*-lynxos*) fmt=coff em=lynx ;;
419 m68k-*-netbsdelf*) fmt=elf em=nbsd ;;
421 ppc-*-beos*) fmt=coff ;;
422 ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
423 ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
424 + ppc-*-linux-uclibc* | \
425 ppc-*-linux-gnu*) fmt=elf em=linux
429 ppc-*-kaos*) fmt=elf ;;
431 s390x-*-linux-gnu*) fmt=elf em=linux ;;
432 + s390x-*-linux-uclibc*) fmt=elf em=linux ;;
433 s390-*-linux-gnu*) fmt=elf em=linux ;;
434 + s390-*-linux-uclibc*) fmt=elf em=linux ;;
436 sh*-*-linux*) fmt=elf em=linux
439 sparc-*-coff) fmt=coff ;;
440 sparc-*-linux*aout*) fmt=aout em=linux ;;
441 sparc-*-linux-gnu*) fmt=elf em=linux ;;
442 + sparc-*-linux-uclibc*) fmt=elf em=linux ;;
443 sparc-*-lynxos*) fmt=coff em=lynx ;;
444 sparc-fujitsu-none) fmt=aout ;;
445 sparc-*-elf) fmt=elf ;;
446 --- binutils-2.14.90.0.7/ld/configure~binutils-uclibc-100-conf
447 +++ binutils-2.14.90.0.7/ld/configure
448 @@ -1578,6 +1578,11 @@
449 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
453 + lt_cv_deplibs_check_method=pass_all
454 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
458 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
459 lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
460 --- binutils-2.14.90.0.7/ld/configure.tgt~binutils-uclibc-100-conf
461 +++ binutils-2.14.90.0.7/ld/configure.tgt
463 targ_extra_emuls="criself crislinux"
464 targ_extra_libpath=$targ_extra_emuls ;;
465 cris-*-linux-gnu*) targ_emul=crislinux ;;
466 +cris-*-linux-uclibc*) targ_emul=crislinux ;;
467 cris-*-*) targ_emul=criself
468 targ_extra_emuls="crisaout crislinux"
469 targ_extra_libpath=$targ_extra_emuls ;;
471 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
472 tdir_sun4=sparc-sun-sunos4
474 -sparc64-*-linux-gnu*) targ_emul=elf64_sparc
475 +sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*) \
476 + targ_emul=elf64_sparc
477 targ_extra_emuls="elf32_sparc sparclinux sun4"
478 targ_extra_libpath=elf32_sparc
479 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
480 tdir_sparclinux=${tdir_elf32_sparc}aout
481 tdir_sun4=sparc-sun-sunos4
483 -sparc*-*-linux-gnu*) targ_emul=elf32_sparc
484 +sparc*-*-linux-gnu* | sparc*-*-linux-uclibc*) \
485 + targ_emul=elf32_sparc
486 targ_extra_emuls="sparclinux elf64_sparc sun4"
487 targ_extra_libpath=elf64_sparc
488 tdir_sparclinux=${targ_alias}aout
490 m68*-ericsson-ose) targ_emul=sun3 ;;
491 m68*-apple-aux*) targ_emul=m68kaux ;;
492 *-tandem-none) targ_emul=st2000 ;;
493 -i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;;
494 +i370-*-elf* | i370-*-linux-gnu* | i370-*-linux-uclibc*) targ_emul=elf32i370 ;;
495 i[3-7]86-*-nto-qnx*) targ_emul=i386nto ;;
496 i[3-7]86-*-vsta) targ_emul=vsta ;;
497 i[3-7]86-go32-rtems*) targ_emul=i386go32 ;;
498 @@ -149,14 +152,16 @@
499 tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
501 i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
502 -i[3-7]86-*-linux-gnu*) targ_emul=elf_i386
503 +i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) \
505 targ_extra_emuls=i386linux
506 if test x${want64} = xtrue; then
507 targ_extra_emuls="$targ_extra_emuls elf_x86_64"
509 tdir_i386linux=${targ_alias}aout
511 -x86_64-*-linux-gnu*) targ_emul=elf_x86_64
512 +x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) \
513 + targ_emul=elf_x86_64
514 targ_extra_emuls="elf_i386 i386linux"
515 targ_extra_libpath=elf_i386
516 tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
517 @@ -256,10 +261,13 @@
518 arm9e-*-elf) targ_emul=armelf ;;
519 arm-*-oabi) targ_emul=armelf_oabi ;;
520 arm*b-*-linux-gnu*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
521 +arm*b-*-linux-uclibc*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
522 arm*-*-linux-gnu*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
523 +arm*-*-linux-uclibc*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
524 arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
525 arm*-*-conix*) targ_emul=armelf ;;
526 -thumb-*-linux-gnu* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
527 +thumb-*-linux-gnu* | thumb-*-linux-uclibc* | thumb-*-uclinux*) \
528 + targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
529 strongarm-*-coff) targ_emul=armcoff ;;
530 strongarm-*-elf) targ_emul=armelf ;;
531 strongarm-*-kaos*) targ_emul=armelf ;;
533 targ_extra_emuls=m68kelf
534 tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
536 -m68k-*-linux-gnu*) targ_emul=m68kelf
537 +m68k-*-linux-gnu* | m68k-*-linux-uclibc*) \
539 targ_extra_emuls=m68klinux
540 tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
543 m68*-*-psos*) targ_emul=m68kpsos ;;
544 m68*-*-rtemscoff*) targ_emul=m68kcoff ;;
545 m68*-*-rtems*) targ_emul=m68kelf ;;
546 -hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;;
547 +hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*) targ_emul=hppa64linux ;;
548 hppa*64*-*) targ_emul=elf64hppa ;;
549 -hppa*-*-linux-gnu*) targ_emul=hppalinux ;;
550 +hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*) targ_emul=hppalinux ;;
551 hppa*-*-*elf*) targ_emul=hppaelf ;;
552 hppa*-*-lites*) targ_emul=hppaelf ;;
553 hppa*-*-netbsd*) targ_emul=hppanbsd ;;
554 @@ -422,16 +431,20 @@
555 mips*-*-rtems*) targ_emul=elf32ebmip ;;
556 mips*el-*-vxworks*) targ_emul=elf32elmip ;;
557 mips*-*-vxworks*) targ_emul=elf32ebmip ;;
558 -mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32
559 +mips64*el-*-linux-gnu* | mips64*el-*-linux-uclibc*) \
560 + targ_emul=elf32ltsmipn32
561 targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
563 -mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32
564 +mips64*-*-linux-gnu* | mips64*-*-linux-uclibc*) \
565 + targ_emul=elf32btsmipn32
566 targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
568 -mips*el-*-linux-gnu*) targ_emul=elf32ltsmip
569 +mips*el-*-linux-gnu* | mips*el-*-linux-uclibc*) \
570 + targ_emul=elf32ltsmip
571 targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
573 -mips*-*-linux-gnu*) targ_emul=elf32btsmip
574 +mips*-*-linux-gnu* | mips*-*-linux-uclibc*) \
575 + targ_emul=elf32btsmip
576 targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
578 mips*-*-lnews*) targ_emul=mipslnews ;;
580 alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha
581 tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
583 +alpha*-*-linux-uclibc*) targ_emul=elf64alpha targ_extra_emuls=alpha
584 + # The following needs to be checked...
585 + tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
587 alpha*-*-osf*) targ_emul=alpha ;;
588 alpha*-*-gnu*) targ_emul=elf64alpha ;;
589 alpha*-*-netware*) targ_emul=alpha ;;
590 --- binutils-2.14.90.0.7/libtool.m4~binutils-uclibc-100-conf
591 +++ binutils-2.14.90.0.7/libtool.m4
593 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
597 + lt_cv_deplibs_check_method=pass_all
598 + lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
602 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
603 [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
604 --- binutils-2.14.90.0.7/ltconfig~binutils-uclibc-100-conf
605 +++ binutils-2.14.90.0.7/ltconfig
607 # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
611 linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
614 @@ -1259,6 +1260,24 @@
615 dynamic_linker='GNU/Linux ld.so'
622 + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
623 + soname_spec='${libname}${release}.so$major'
624 + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
625 + shlibpath_var=LD_LIBRARY_PATH
626 + shlibpath_overrides_runpath=no
627 + # This implies no fast_install, which is unacceptable.
628 + # Some rework will be needed to allow for fast_install
629 + # before this can be enabled.
630 + # Note: copied from linux-gnu, and may not be appropriate.
631 + hardcode_into_libs=yes
632 + # Assume using the uClibc dynamic linker.
633 + dynamic_linker="uClibc ld.so"