patches/binutils/2.15/110-uclibc-conf.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Jul 28 21:32:33 2008 +0000 (2008-07-28)
changeset 747 d3e603e7c17c
parent 1 patches/binutils/2.15/100-uclibc-conf.patch@eeea35fbf182
permissions -rw-r--r--
Fourth step at renaming patches: renumber all patches with a 10-step.
     1 diff -urN binutils-2.15-dist/bfd/config.bfd binutils-2.15/bfd/config.bfd
     2 --- binutils-2.15-dist/bfd/config.bfd	2004-05-17 14:35:56.000000000 -0500
     3 +++ binutils-2.15/bfd/config.bfd	2004-08-04 12:01:44.000000000 -0500
     4 @@ -126,7 +126,7 @@
     5      targ_defvec=ecoffalpha_little_vec
     6      targ_selvecs=bfd_elf64_alpha_vec
     7      ;;
     8 -  alpha*-*-linux-gnu* | alpha*-*-elf*)
     9 +  alpha*-*-linux-gnu* | alpha*-*-linux-uclibc* | alpha*-*-elf*)
    10      targ_defvec=bfd_elf64_alpha_vec
    11      targ_selvecs=ecoffalpha_little_vec
    12      ;;
    13 @@ -136,7 +136,7 @@
    14    alpha*-*-*)
    15      targ_defvec=ecoffalpha_little_vec
    16      ;;
    17 -  ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
    18 +  ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-linux-uclibc* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
    19      targ_defvec=bfd_elf64_ia64_little_vec
    20      targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec"
    21      ;;
    22 @@ -213,7 +213,7 @@
    23      targ_defvec=bfd_elf32_littlearm_vec
    24      targ_selvecs=bfd_elf32_bigarm_vec
    25      ;;
    26 -  armeb-*-elf | arm*b-*-linux-gnu*)
    27 +  armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*)
    28      targ_defvec=bfd_elf32_bigarm_vec
    29      targ_selvecs=bfd_elf32_littlearm_vec
    30      ;;
    31 @@ -221,7 +221,7 @@
    32      targ_defvec=bfd_elf32_littlearm_vec
    33      targ_selvecs=bfd_elf32_bigarm_vec
    34      ;;
    35 -  arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \
    36 +  arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | arm*-*-conix* | \
    37    arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks)
    38      targ_defvec=bfd_elf32_littlearm_vec
    39      targ_selvecs=bfd_elf32_bigarm_vec
    40 @@ -360,7 +360,7 @@
    41      ;;
    42  
    43  #ifdef BFD64
    44 -  hppa*64*-*-linux-gnu*)
    45 +  hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*)
    46      targ_defvec=bfd_elf64_hppa_linux_vec
    47      targ_selvecs=bfd_elf64_hppa_vec
    48      ;;
    49 @@ -371,7 +371,7 @@
    50      ;;
    51  #endif
    52  
    53 -  hppa*-*-linux-gnu* | hppa*-*-netbsd*)
    54 +  hppa*-*-linux-gnu* | hppa*-*-linux-uclibc* | hppa*-*-netbsd*)
    55      targ_defvec=bfd_elf32_hppa_linux_vec
    56      targ_selvecs=bfd_elf32_hppa_vec
    57      ;;
    58 @@ -494,7 +494,7 @@
    59      targ_selvecs=bfd_elf32_i386_vec
    60      targ_underscore=yes
    61      ;;
    62 -  i[3-7]86-*-linux-gnu*)
    63 +  i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
    64      targ_defvec=bfd_elf32_i386_vec
    65      targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec"
    66      targ64_selvecs=bfd_elf64_x86_64_vec
    67 @@ -508,7 +508,7 @@
    68      targ_defvec=bfd_elf64_x86_64_vec
    69      targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec"
    70      ;;
    71 -  x86_64-*-linux-gnu*)
    72 +  x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*)
    73      targ_defvec=bfd_elf64_x86_64_vec
    74      targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec"
    75      ;;
    76 @@ -683,7 +683,7 @@
    77      targ_selvecs=bfd_elf32_m68k_vec
    78      targ_underscore=yes
    79      ;;
    80 -  m68*-*-linux-gnu*)
    81 +  m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
    82      targ_defvec=bfd_elf32_m68k_vec
    83      targ_selvecs=m68klinux_vec
    84      ;;
    85 @@ -955,7 +955,8 @@
    86      ;;
    87  #endif
    88    powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
    89 -  powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \
    90 +  powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-linux-uclibc* | \
    91 +  powerpc-*-rtems* | \
    92    powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*)
    93      targ_defvec=bfd_elf32_powerpc_vec
    94      targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
    95 @@ -987,8 +988,8 @@
    96      targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
    97      ;;
    98    powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
    99 -  powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\
   100 -  powerpcle-*-rtems*)
   101 +  powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-linux-uclibc* |\
   102 +  powerpcle-*-vxworks* | powerpcle-*-rtems*)
   103      targ_defvec=bfd_elf32_powerpcle_vec
   104      targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
   105      targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
   106 @@ -1149,7 +1150,7 @@
   107      targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
   108      targ_underscore=yes
   109      ;;
   110 -  sparc-*-linux-gnu*)
   111 +  sparc-*-linux-gnu* | sparc-*-linux-uclibc*)
   112      targ_defvec=bfd_elf32_sparc_vec
   113      targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
   114      ;;
   115 @@ -1196,7 +1197,7 @@
   116      targ_defvec=sunos_big_vec
   117      targ_underscore=yes
   118      ;;
   119 -  sparc64-*-linux-gnu*)
   120 +  sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*)
   121      targ_defvec=bfd_elf64_sparc_vec
   122      targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
   123      ;;
   124 @@ -1265,7 +1266,7 @@
   125      targ_underscore=yes
   126      ;;
   127  
   128 -  vax-*-linux-gnu*)
   129 +  vax-*-linux-gnu* | vax-*-linux-uclibc*)
   130      targ_defvec=bfd_elf32_vax_vec
   131      ;;
   132  
   133 diff -urN binutils-2.15-dist/bfd/configure binutils-2.15/bfd/configure
   134 --- binutils-2.15-dist/bfd/configure	2004-05-17 14:35:57.000000000 -0500
   135 +++ binutils-2.15/bfd/configure	2004-08-04 12:01:44.000000000 -0500
   136 @@ -1699,6 +1699,11 @@
   137    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   138    ;;
   139  
   140 +linux-uclibc*)
   141 +  lt_cv_deplibs_check_method=pass_all
   142 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   143 +  ;;
   144 +
   145  netbsd*)
   146    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   147      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
   148 @@ -5278,7 +5283,7 @@
   149    alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
   150  	COREFILE=''
   151  	;;
   152 -  alpha*-*-linux-gnu*)
   153 +  alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
   154  	COREFILE=trad-core.lo
   155  	TRAD_HEADER='"hosts/alphalinux.h"'
   156  	;;
   157 @@ -5338,7 +5343,7 @@
   158  	COREFILE=trad-core.lo
   159  	TRAD_HEADER='"hosts/i386mach3.h"'
   160  	;;
   161 -  i[3-7]86-*-linux-gnu*)
   162 +  i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
   163  	COREFILE=trad-core.lo
   164  	TRAD_HEADER='"hosts/i386linux.h"'
   165  	;;
   166 @@ -5376,7 +5381,7 @@
   167  	COREFILE=trad-core.lo
   168  	TRAD_HEADER='"hosts/hp300bsd.h"'
   169  	;;
   170 -  m68*-*-linux-gnu*)
   171 +  m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
   172  	COREFILE=trad-core.lo
   173  	TRAD_HEADER='"hosts/m68klinux.h"'
   174  	;;
   175 @@ -5477,7 +5482,7 @@
   176  	COREFILE=trad-core.lo
   177  	TRAD_HEADER='"hosts/vaxult2.h"'
   178  	;;
   179 -  vax-*-linux-gnu*)
   180 +  vax-*-linux-gnu* | vax-*-linux-uclibc*)
   181  	COREFILE=trad-core.lo
   182  	TRAD_HEADER='"hosts/vaxlinux.h"'
   183  	;;
   184 diff -urN binutils-2.15-dist/bfd/configure.in binutils-2.15/bfd/configure.in
   185 --- binutils-2.15-dist/bfd/configure.in	2004-05-17 14:35:57.000000000 -0500
   186 +++ binutils-2.15/bfd/configure.in	2004-08-04 12:01:44.000000000 -0500
   187 @@ -178,7 +178,7 @@
   188    alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
   189  	COREFILE=''
   190  	;;
   191 -  alpha*-*-linux-gnu*)
   192 +  alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
   193  	COREFILE=trad-core.lo
   194  	TRAD_HEADER='"hosts/alphalinux.h"'
   195  	;;
   196 @@ -259,7 +259,7 @@
   197  	TRAD_HEADER='"hosts/i386mach3.h"'
   198  	;;
   199  changequote(,)dnl
   200 -  i[3-7]86-*-linux-gnu*)
   201 +  i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
   202  changequote([,])dnl
   203  	COREFILE=trad-core.lo
   204  	TRAD_HEADER='"hosts/i386linux.h"'
   205 @@ -300,7 +300,7 @@
   206  	COREFILE=trad-core.lo
   207  	TRAD_HEADER='"hosts/hp300bsd.h"'
   208  	;;
   209 -  m68*-*-linux-gnu*)
   210 +  m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
   211  	COREFILE=trad-core.lo
   212  	TRAD_HEADER='"hosts/m68klinux.h"'
   213  	;;
   214 @@ -385,7 +385,7 @@
   215  	COREFILE=trad-core.lo
   216  	TRAD_HEADER='"hosts/vaxult2.h"'
   217  	;;
   218 -  vax-*-linux-gnu*)
   219 +  vax-*-linux-gnu* | vax-*-linux-uclibc*)
   220  	COREFILE=trad-core.lo
   221  	TRAD_HEADER='"hosts/vaxlinux.h"'
   222  	;;
   223 diff -urN binutils-2.15-dist/binutils/configure binutils-2.15/binutils/configure
   224 --- binutils-2.15-dist/binutils/configure	2004-01-02 11:08:04.000000000 -0600
   225 +++ binutils-2.15/binutils/configure	2004-08-04 12:01:44.000000000 -0500
   226 @@ -1585,6 +1585,11 @@
   227    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   228    ;;
   229  
   230 +linux-uclibc*)
   231 +  lt_cv_deplibs_check_method=pass_all
   232 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   233 +  ;;
   234 +
   235  netbsd*)
   236    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   237      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
   238 diff -urN binutils-2.15-dist/configure binutils-2.15/configure
   239 --- binutils-2.15-dist/configure	2004-05-17 14:36:20.000000000 -0500
   240 +++ binutils-2.15/configure	2004-08-04 12:01:44.000000000 -0500
   241 @@ -1288,6 +1288,18 @@
   242    i[3456789]86-*-freebsd* | i[3456789]86-*-kfreebsd*-gnu)
   243      noconfigdirs="$noconfigdirs target-newlib target-libgloss"
   244      ;;
   245 +  i[3456789]86-*-linux-uclibc*)
   246 +    # This section makes it possible to build newlib natively on linux.
   247 +    # If we are using a cross compiler then don't configure newlib.
   248 +    if test x${is_cross_compiler} != xno ; then
   249 +      noconfigdirs="$noconfigdirs target-newlib"
   250 +    fi
   251 +    noconfigdirs="$noconfigdirs target-libgloss"
   252 +    # If we are not using a cross compiler, do configure newlib.
   253 +    # Note however, that newlib will only be configured in this situation
   254 +    # if the --with-newlib option has been given, because otherwise
   255 +    # 'target-newlib' will appear in skipdirs.
   256 +    ;;
   257    i[3456789]86-*-linux*)
   258      # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
   259      # not build java stuff by default.
   260 diff -urN binutils-2.15-dist/configure.in binutils-2.15/configure.in
   261 --- binutils-2.15-dist/configure.in	2004-05-17 14:40:54.000000000 -0500
   262 +++ binutils-2.15/configure.in	2004-08-04 12:01:44.000000000 -0500
   263 @@ -521,6 +521,18 @@
   264    i[[3456789]]86-*-freebsd* | i[[3456789]]86-*-kfreebsd*-gnu)
   265      noconfigdirs="$noconfigdirs target-newlib target-libgloss"
   266      ;;
   267 +  i[[3456789]]86-*-linux-uclibc*)
   268 +    # This section makes it possible to build newlib natively on linux.
   269 +    # If we are using a cross compiler then don't configure newlib.
   270 +    if test x${is_cross_compiler} != xno ; then
   271 +      noconfigdirs="$noconfigdirs target-newlib"
   272 +    fi
   273 +    noconfigdirs="$noconfigdirs target-libgloss"
   274 +    # If we are not using a cross compiler, do configure newlib.
   275 +    # Note however, that newlib will only be configured in this situation
   276 +    # if the --with-newlib option has been given, because otherwise
   277 +    # 'target-newlib' will appear in skipdirs.
   278 +    ;;
   279    i[[3456789]]86-*-linux*)
   280      # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
   281      # not build java stuff by default.
   282 diff -urN binutils-2.15-dist/gas/configure binutils-2.15/gas/configure
   283 --- binutils-2.15-dist/gas/configure	2004-05-17 14:36:07.000000000 -0500
   284 +++ binutils-2.15/gas/configure	2004-08-04 12:07:50.000000000 -0500
   285 @@ -3400,6 +3400,11 @@
   286    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   287    ;;
   288  
   289 +linux-uclibc*)
   290 +  lt_cv_deplibs_check_method=pass_all
   291 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   292 +  ;;
   293 +
   294  netbsd*)
   295    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   296      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
   297 @@ -4224,6 +4229,7 @@
   298        alpha*-*-osf*)			fmt=ecoff ;;
   299        alpha*-*-linuxecoff*)		fmt=ecoff ;;
   300        alpha*-*-linux-gnu*)		fmt=elf em=linux ;;
   301 +      alpha*-*-linux-uclibc*)		fmt=elf em=linux ;;
   302        alpha*-*-netbsd*)			fmt=elf em=nbsd ;;
   303        alpha*-*-openbsd*)		fmt=elf em=obsd ;;
   304  
   305 @@ -4240,6 +4246,7 @@
   306        arm*-*-conix*)			fmt=elf ;;
   307        arm-*-linux*aout*)		fmt=aout em=linux ;;
   308        arm*-*-linux-gnu*)		fmt=elf  em=linux ;;
   309 +      arm*-*-linux-uclibc*)		fmt=elf  em=linux ;;
   310        arm*-*-uclinux*)			fmt=elf  em=linux ;;
   311        arm-*-netbsdelf*)                 fmt=elf  em=nbsd ;;
   312        arm-*-*n*bsd*)			fmt=aout em=nbsd ;;
   313 @@ -4253,6 +4260,7 @@
   314        avr-*-*)				fmt=elf ;;
   315  
   316        cris-*-linux-gnu*)		fmt=multi bfd_gas=yes em=linux ;;
   317 +      cris-*-linux-uclibc*)		fmt=multi bfd_gas=yes em=linux ;;
   318        cris-*-*)				fmt=multi bfd_gas=yes ;;
   319  
   320        d10v-*-*)				fmt=elf ;;
   321 @@ -4310,7 +4318,9 @@
   322        i386-*-linux*oldld)		fmt=aout em=linux ;;
   323        i386-*-linux*coff*)		fmt=coff em=linux ;;
   324        i386-*-linux-gnu*)		fmt=elf em=linux ;;
   325 +      i386-*-linux-uclibc*)		fmt=elf em=linux ;;
   326        x86_64-*-linux-gnu*)		fmt=elf em=linux ;;
   327 +      x86_64-*-linux-uclibc*)		fmt=elf em=linux ;;
   328        i386-*-lynxos*)			fmt=coff em=lynx ;;
   329        i386-*-sysv[45]*)			fmt=elf ;;
   330        i386-*-solaris*)			fmt=elf ;;
   331 @@ -4370,6 +4380,7 @@
   332        ia64-*-elf*)			fmt=elf ;;
   333        ia64-*-aix*)			fmt=elf em=ia64aix ;;
   334        ia64-*-linux-gnu*)		fmt=elf em=linux ;;
   335 +      ia64-*-linux-uclibc*)		fmt=elf em=linux ;;
   336        ia64-*-hpux*)			fmt=elf em=hpux ;;
   337        ia64-*-netbsd*)			fmt=elf em=nbsd ;;
   338  
   339 @@ -4397,6 +4408,7 @@
   340        m68k-*-hpux*)			fmt=hp300 em=hp300 ;;
   341        m68k-*-linux*aout*)		fmt=aout em=linux ;;
   342        m68k-*-linux-gnu*)		fmt=elf em=linux ;;
   343 +      m68k-*-linux-uclibc*)		fmt=elf em=linux ;;
   344        m68k-*-uclinux*)			fmt=elf ;;
   345        m68k-*-gnu*)			fmt=elf ;;
   346        m68k-*-lynxos*)			fmt=coff em=lynx ;;
   347 @@ -4459,6 +4471,7 @@
   348        ppc-*-beos*)			fmt=coff ;;
   349        ppc-*-*n*bsd* | ppc-*-elf*)	fmt=elf ;;
   350        ppc-*-eabi* | ppc-*-sysv4*)	fmt=elf ;;
   351 +      ppc-*-linux-uclibc* | \
   352        ppc-*-linux-gnu*)			fmt=elf em=linux
   353  	    case "$endian" in
   354  		big)  ;;
   355 @@ -4486,7 +4499,9 @@
   356        ppc-*-kaos*)			fmt=elf ;;
   357  
   358        s390x-*-linux-gnu*)		fmt=elf em=linux ;;
   359 +      s390x-*-linux-uclibc*)		fmt=elf em=linux ;;
   360        s390-*-linux-gnu*)		fmt=elf em=linux ;;
   361 +      s390-*-linux-uclibc*)		fmt=elf em=linux ;;
   362  
   363        sh*-*-linux*)			fmt=elf em=linux
   364  	    case ${cpu} in
   365 @@ -4519,6 +4534,7 @@
   366        sparc-*-coff)			fmt=coff ;;
   367        sparc-*-linux*aout*)		fmt=aout em=linux ;;
   368        sparc-*-linux-gnu*)		fmt=elf em=linux ;;
   369 +      sparc-*-linux-uclibc*)		fmt=elf em=linux ;;
   370        sparc-*-lynxos*)			fmt=coff em=lynx ;;
   371        sparc-fujitsu-none)		fmt=aout ;;
   372        sparc-*-elf)			fmt=elf ;;
   373 diff -urN binutils-2.15-dist/gas/configure.in binutils-2.15/gas/configure.in
   374 --- binutils-2.15-dist/gas/configure.in	2004-05-17 14:36:07.000000000 -0500
   375 +++ binutils-2.15/gas/configure.in	2004-08-04 12:07:21.000000000 -0500
   376 @@ -194,6 +194,7 @@
   377        alpha*-*-osf*)			fmt=ecoff ;;
   378        alpha*-*-linuxecoff*)		fmt=ecoff ;;
   379        alpha*-*-linux-gnu*)		fmt=elf em=linux ;;
   380 +      alpha*-*-linux-uclibc*)		fmt=elf em=linux ;;
   381        alpha*-*-netbsd*)			fmt=elf em=nbsd ;;
   382        alpha*-*-openbsd*)		fmt=elf em=obsd ;;
   383  
   384 @@ -210,6 +211,7 @@
   385        arm*-*-conix*)			fmt=elf ;;
   386        arm-*-linux*aout*)		fmt=aout em=linux ;;
   387        arm*-*-linux-gnu*)		fmt=elf  em=linux ;;
   388 +      arm*-*-linux-uclibc*)		fmt=elf  em=linux ;;
   389        arm*-*-uclinux*)			fmt=elf  em=linux ;;
   390        arm-*-netbsdelf*)                 fmt=elf  em=nbsd ;;
   391        arm-*-*n*bsd*)			fmt=aout em=nbsd ;;
   392 @@ -223,6 +225,7 @@
   393        avr-*-*)				fmt=elf ;;
   394  
   395        cris-*-linux-gnu*)		fmt=multi bfd_gas=yes em=linux ;;
   396 +      cris-*-linux-uclibc*)		fmt=multi bfd_gas=yes em=linux ;;
   397        cris-*-*)				fmt=multi bfd_gas=yes ;;
   398  
   399        d10v-*-*)				fmt=elf ;;
   400 @@ -280,7 +283,9 @@
   401        i386-*-linux*oldld)		fmt=aout em=linux ;;
   402        i386-*-linux*coff*)		fmt=coff em=linux ;;
   403        i386-*-linux-gnu*)		fmt=elf em=linux ;;
   404 +      i386-*-linux-uclibc*)		fmt=elf em=linux ;;
   405        x86_64-*-linux-gnu*)		fmt=elf em=linux ;;
   406 +      x86_64-*-linux-uclibc*)		fmt=elf em=linux ;;
   407        i386-*-lynxos*)			fmt=coff em=lynx ;;
   408  changequote(,)dnl
   409        i386-*-sysv[45]*)			fmt=elf ;;
   410 @@ -333,6 +338,7 @@
   411        ia64-*-elf*)			fmt=elf ;;
   412        ia64-*-aix*)			fmt=elf em=ia64aix ;;
   413        ia64-*-linux-gnu*)		fmt=elf em=linux ;;
   414 +      ia64-*-linux-uclibc*)		fmt=elf em=linux ;;
   415        ia64-*-hpux*)			fmt=elf em=hpux ;;
   416        ia64-*-netbsd*)			fmt=elf em=nbsd ;;
   417  
   418 @@ -360,6 +366,7 @@
   419        m68k-*-hpux*)			fmt=hp300 em=hp300 ;;
   420        m68k-*-linux*aout*)		fmt=aout em=linux ;;
   421        m68k-*-linux-gnu*)		fmt=elf em=linux ;;
   422 +      m68k-*-linux-uclibc*)		fmt=elf em=linux ;;
   423        m68k-*-uclinux*)			fmt=elf ;;
   424        m68k-*-gnu*)			fmt=elf ;;
   425        m68k-*-lynxos*)			fmt=coff em=lynx ;;
   426 @@ -419,6 +426,7 @@
   427        ppc-*-beos*)			fmt=coff ;;
   428        ppc-*-*n*bsd* | ppc-*-elf*)	fmt=elf ;;
   429        ppc-*-eabi* | ppc-*-sysv4*)	fmt=elf ;;
   430 +      ppc-*-linux-uclibc* | \
   431        ppc-*-linux-gnu*)			fmt=elf em=linux
   432  	    case "$endian" in
   433  		big)  ;;
   434 @@ -439,7 +447,9 @@
   435        ppc-*-kaos*)			fmt=elf ;;
   436  
   437        s390x-*-linux-gnu*)		fmt=elf em=linux ;;
   438 +      s390x-*-linux-uclibc*)		fmt=elf em=linux ;;
   439        s390-*-linux-gnu*)		fmt=elf em=linux ;;
   440 +      s390-*-linux-uclibc*)		fmt=elf em=linux ;;
   441  
   442        sh*-*-linux*)			fmt=elf em=linux
   443  	    case ${cpu} in
   444 @@ -472,6 +482,7 @@
   445        sparc-*-coff)			fmt=coff ;;
   446        sparc-*-linux*aout*)		fmt=aout em=linux ;;
   447        sparc-*-linux-gnu*)		fmt=elf em=linux ;;
   448 +      sparc-*-linux-uclibc*)		fmt=elf em=linux ;;
   449        sparc-*-lynxos*)			fmt=coff em=lynx ;;
   450        sparc-fujitsu-none)		fmt=aout ;;
   451        sparc-*-elf)			fmt=elf ;;
   452 diff -urN binutils-2.15-dist/gprof/configure binutils-2.15/gprof/configure
   453 --- binutils-2.15-dist/gprof/configure	2003-08-26 12:19:19.000000000 -0500
   454 +++ binutils-2.15/gprof/configure	2004-08-04 12:01:45.000000000 -0500
   455 @@ -1581,6 +1581,11 @@
   456    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   457    ;;
   458  
   459 +linux-uclibc*)
   460 +  lt_cv_deplibs_check_method=pass_all
   461 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   462 +  ;;
   463 +
   464  netbsd*)
   465    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   466      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
   467 diff -urN binutils-2.15-dist/ld/configure binutils-2.15/ld/configure
   468 --- binutils-2.15-dist/ld/configure	2003-04-24 07:36:07.000000000 -0500
   469 +++ binutils-2.15/ld/configure	2004-08-04 12:01:45.000000000 -0500
   470 @@ -1589,6 +1589,11 @@
   471    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   472    ;;
   473  
   474 +linux-uclibc*)
   475 +  lt_cv_deplibs_check_method=pass_all
   476 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   477 +  ;;
   478 +
   479  netbsd*)
   480    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   481      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
   482 diff -urN binutils-2.15-dist/ld/configure.tgt binutils-2.15/ld/configure.tgt
   483 --- binutils-2.15-dist/ld/configure.tgt	2004-05-17 14:36:15.000000000 -0500
   484 +++ binutils-2.15/ld/configure.tgt	2004-08-04 12:01:45.000000000 -0500
   485 @@ -30,6 +30,7 @@
   486  			targ_extra_emuls="criself crislinux"
   487  			targ_extra_libpath=$targ_extra_emuls ;;
   488  cris-*-linux-gnu*)	targ_emul=crislinux ;;
   489 +cris-*-linux-uclibc*)	targ_emul=crislinux ;;
   490  cris-*-*)		targ_emul=criself
   491  			targ_extra_emuls="crisaout crislinux"
   492  			targ_extra_libpath=$targ_extra_emuls ;;
   493 @@ -59,14 +60,16 @@
   494  			tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
   495  			tdir_sun4=sparc-sun-sunos4
   496  			;;
   497 -sparc64-*-linux-gnu*)	targ_emul=elf64_sparc
   498 +sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*)	 \
   499 +			targ_emul=elf64_sparc
   500  			targ_extra_emuls="elf32_sparc sparclinux sun4"
   501  			targ_extra_libpath=elf32_sparc
   502  			tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
   503  			tdir_sparclinux=${tdir_elf32_sparc}aout
   504  			tdir_sun4=sparc-sun-sunos4
   505  			;;
   506 -sparc*-*-linux-gnu*)	targ_emul=elf32_sparc
   507 +sparc*-*-linux-gnu* | sparc*-*-linux-uclibc*) \
   508 +			targ_emul=elf32_sparc
   509  			targ_extra_emuls="sparclinux elf64_sparc sun4"
   510  			targ_extra_libpath=elf64_sparc
   511  			tdir_sparclinux=${targ_alias}aout
   512 @@ -118,7 +121,9 @@
   513  m32r*le-*-elf*)         targ_emul=m32rlelf ;;
   514  m32r*-*-elf*)           targ_emul=m32relf ;;
   515  m32r*le-*-linux-gnu*)   targ_emul=m32rlelf_linux ;;
   516 +m32r*le-*-linux-uclibc*) targ_emul=m32rlelf_linux ;;
   517  m32r*-*-linux-gnu*)     targ_emul=m32relf_linux ;;
   518 +m32r*-*-linux-uclibc*)  targ_emul=m32relf_linux ;;
   519  m68hc11-*-*|m6811-*-*)	targ_emul=m68hc11elf 
   520  			targ_extra_emuls="m68hc11elfb m68hc12elf m68hc12elfb" ;;
   521  m68hc12-*-*|m6812-*-*)	targ_emul=m68hc12elf 
   522 @@ -128,7 +133,7 @@
   523  m68*-ericsson-ose)	targ_emul=sun3 ;;
   524  m68*-apple-aux*)	targ_emul=m68kaux ;;
   525  *-tandem-none)		targ_emul=st2000 ;;
   526 -i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;;
   527 +i370-*-elf* | i370-*-linux-gnu* | i370-*-linux-uclibc*) targ_emul=elf32i370 ;;
   528  i[3-7]86-*-nto-qnx*)	targ_emul=i386nto ;;
   529  i[3-7]86-*-vsta)	targ_emul=vsta ;;
   530  i[3-7]86-go32-rtems*)	targ_emul=i386go32 ;;
   531 @@ -152,14 +157,16 @@
   532  			tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
   533  			;;
   534  i[3-7]86-*-linux*oldld)	targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
   535 -i[3-7]86-*-linux-gnu*)	targ_emul=elf_i386
   536 +i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*) \
   537 +			targ_emul=elf_i386
   538  			targ_extra_emuls=i386linux
   539  			if test x${want64} = xtrue; then
   540  			  targ_extra_emuls="$targ_extra_emuls elf_x86_64"
   541  			fi
   542  			tdir_i386linux=${targ_alias}aout
   543  			;;
   544 -x86_64-*-linux-gnu*)	targ_emul=elf_x86_64
   545 +x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*) \
   546 +			targ_emul=elf_x86_64
   547  			targ_extra_emuls="elf_i386 i386linux"
   548  			targ_extra_libpath=elf_i386
   549  			tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
   550 @@ -259,10 +266,13 @@
   551  arm9e-*-elf)		targ_emul=armelf ;;
   552  arm-*-oabi)		targ_emul=armelf_oabi ;;
   553  arm*b-*-linux-gnu*)	targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
   554 +arm*b-*-linux-uclibc*)	targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
   555  arm*-*-linux-gnu*)	targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
   556 +arm*-*-linux-uclibc*)	targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
   557  arm*-*-uclinux*)	targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
   558  arm*-*-conix*)		targ_emul=armelf ;;
   559 -thumb-*-linux-gnu* | thumb-*-uclinux*)	targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
   560 +thumb-*-linux-gnu* | thumb-*-linux-uclibc* | thumb-*-uclinux*) \
   561 +			targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
   562  strongarm-*-coff)	targ_emul=armcoff ;;
   563  strongarm-*-elf)	targ_emul=armelf ;;
   564  strongarm-*-kaos*)	targ_emul=armelf ;;
   565 @@ -364,7 +374,8 @@
   566  			targ_extra_emuls=m68kelf
   567  			tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
   568  			;;
   569 -m68k-*-linux-gnu*)	targ_emul=m68kelf
   570 +m68k-*-linux-gnu* | m68k-*-linux-uclibc*) \
   571 +			targ_emul=m68kelf
   572  			targ_extra_emuls=m68klinux
   573  			tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
   574  			;;
   575 @@ -381,9 +392,9 @@
   576  m68*-*-psos*)		targ_emul=m68kpsos ;;
   577  m68*-*-rtemscoff*)	targ_emul=m68kcoff ;;
   578  m68*-*-rtems*)		targ_emul=m68kelf ;;
   579 -hppa*64*-*-linux-gnu*)	targ_emul=hppa64linux ;;
   580 +hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*)  targ_emul=hppa64linux ;;
   581  hppa*64*-*)		targ_emul=elf64hppa ;;
   582 -hppa*-*-linux-gnu*)	targ_emul=hppalinux ;;
   583 +hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*)	targ_emul=hppalinux ;;
   584  hppa*-*-*elf*)		targ_emul=hppaelf ;;
   585  hppa*-*-lites*)		targ_emul=hppaelf ;;
   586  hppa*-*-netbsd*)	targ_emul=hppanbsd ;;
   587 @@ -396,6 +407,7 @@
   588  			targ_emul=vaxnbsd
   589  			targ_extra_emuls=elf32vax ;;
   590  vax-*-linux-gnu*)	targ_emul=elf32vax ;;
   591 +vax-*-linux-uclibc*)	targ_emul=elf32vax ;;
   592  mips*-*-pe)		targ_emul=mipspe ;
   593  			targ_extra_ofiles="deffilep.o pe-dll.o" ;;
   594  mips*-dec-ultrix*)	targ_emul=mipslit ;;
   595 @@ -429,16 +441,16 @@
   596  mips*-*-vxworks*)	targ_emul=elf32ebmip
   597  		        targ_extra_emuls="elf32elmip" ;;
   598  mips*-*-windiss)	targ_emul=elf32mipswindiss ;;
   599 -mips64*el-*-linux-gnu*)	targ_emul=elf32ltsmipn32
   600 +mips64*el-*-linux-gnu* | mips64*el-*-linux-uclibc*)	targ_emul=elf32ltsmipn32
   601  			targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
   602  			;;
   603 -mips64*-*-linux-gnu*)	targ_emul=elf32btsmipn32
   604 +mips64*-*-linux-gnu* | mips64*-*-linux-uclibc*)	targ_emul=elf32btsmipn32
   605  			targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
   606  			;;
   607 -mips*el-*-linux-gnu*)	targ_emul=elf32ltsmip
   608 +mips*el-*-linux-gnu* | mips*el-*-linux-uclibc*)	targ_emul=elf32ltsmip
   609  			targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
   610  			;;
   611 -mips*-*-linux-gnu*)	targ_emul=elf32btsmip
   612 +mips*-*-linux-gnu* | mips*-*-linux-uclibc*)	targ_emul=elf32btsmip
   613  			targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
   614  			;;
   615  mips*-*-lnews*)		targ_emul=mipslnews ;;
   616 @@ -461,6 +473,10 @@
   617  alpha*-*-linux-gnu*)	targ_emul=elf64alpha targ_extra_emuls=alpha
   618  			tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
   619  			;;
   620 +alpha*-*-linux-uclibc*)	targ_emul=elf64alpha targ_extra_emuls=alpha
   621 +			# The following needs to be checked...
   622 +			tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
   623 +			;;
   624  alpha*-*-osf*)		targ_emul=alpha ;;
   625  alpha*-*-gnu*)		targ_emul=elf64alpha ;;
   626  alpha*-*-netware*)	targ_emul=alpha ;;
   627 diff -urN binutils-2.15-dist/libtool.m4 binutils-2.15/libtool.m4
   628 --- binutils-2.15-dist/libtool.m4	2003-04-10 22:58:39.000000000 -0500
   629 +++ binutils-2.15/libtool.m4	2004-08-04 12:01:45.000000000 -0500
   630 @@ -645,6 +645,11 @@
   631    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   632    ;;
   633  
   634 +linux-uclibc*)
   635 +  lt_cv_deplibs_check_method=pass_all
   636 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   637 +  ;;
   638 +
   639  netbsd*)
   640    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   641      [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
   642 diff -urN binutils-2.15-dist/ltconfig binutils-2.15/ltconfig
   643 --- binutils-2.15-dist/ltconfig	2003-10-03 23:54:47.000000000 -0500
   644 +++ binutils-2.15/ltconfig	2004-08-04 12:01:45.000000000 -0500
   645 @@ -603,6 +603,7 @@
   646  # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
   647  case $host_os in
   648  linux-gnu*) ;;
   649 +linux-uclibc*) ;;
   650  linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
   651  esac
   652  
   653 @@ -1259,6 +1260,24 @@
   654    dynamic_linker='GNU/Linux ld.so'
   655    ;;
   656  
   657 +linux-uclibc*)
   658 +  version_type=linux
   659 +  need_lib_prefix=no
   660 +  need_version=no
   661 +  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
   662 +  soname_spec='${libname}${release}.so$major'
   663 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   664 +  shlibpath_var=LD_LIBRARY_PATH
   665 +  shlibpath_overrides_runpath=no
   666 +  # This implies no fast_install, which is unacceptable.
   667 +  # Some rework will be needed to allow for fast_install
   668 +  # before this can be enabled.
   669 +  # Note: copied from linux-gnu, and may not be appropriate.
   670 +  hardcode_into_libs=yes
   671 +  # Assume using the uClibc dynamic linker.
   672 +  dynamic_linker="uClibc ld.so"
   673 +  ;;
   674 +
   675  netbsd*)
   676    need_lib_prefix=no
   677    need_version=no
   678 diff -urN binutils-2.15-dist/opcodes/configure binutils-2.15/opcodes/configure
   679 --- binutils-2.15-dist/opcodes/configure	2003-08-05 04:39:31.000000000 -0500
   680 +++ binutils-2.15/opcodes/configure	2004-08-04 12:01:45.000000000 -0500
   681 @@ -1700,6 +1700,11 @@
   682    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
   683    ;;
   684  
   685 +linux-uclibc*)
   686 +  lt_cv_deplibs_check_method=pass_all
   687 +  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
   688 +  ;;
   689 +
   690  netbsd*)
   691    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
   692      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'