Revert back to binutils .6 since .8 broke things on arm.
authorManuel Novoa III <mjn3@codepoet.org>
Mon, 1 Mar 2004 06:28:02 +0000 (06:28 -0000)
committerManuel Novoa III <mjn3@codepoet.org>
Mon, 1 Mar 2004 06:28:02 +0000 (06:28 -0000)
Also, explicitly set the CFLAGS for the build system since otherwise
the TARGET_OPTIMIZATION flags were used.  This was tripping up a mipsel
build where it tried to use -mips2 when building for i386.

make/binutils-uclibc.mk
sources/binutils-uclibc-001-debian.patch
sources/binutils-uclibc-100-conf.patch
sources/binutils-uclibc-200-build_modules.patch [new file with mode: 0644]

index 955f5db2e5d5109bbc367aaf92083ef006bff297..0f32964976a7212abcfc81bdbee82f3d1f3ecafc 100644 (file)
@@ -4,8 +4,8 @@
 #
 #############################################################
 BINUTILS_SITE:=http://ftp.kernel.org/pub/linux/devel/binutils
-BINUTILS_SOURCE:=binutils-2.14.90.0.8.tar.bz2
-BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-2.14.90.0.8
+BINUTILS_SOURCE:=binutils-2.14.90.0.6.tar.bz2
+BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-2.14.90.0.6
 BINUTILS_CAT:=bzcat
 
 BINUTILS_DIR1:=$(TOOL_BUILD_DIR)/binutils-build
@@ -83,6 +83,7 @@ $(BINUTILS_DIR2)/.configured: $(BINUTILS_DIR)/.patched
        (cd $(BINUTILS_DIR2); \
                PATH=$(TARGET_PATH) \
                CFLAGS="$(TARGET_CFLAGS)" \
+               CFLAGS_FOR_BUILD="-O2 -g" \
                $(BINUTILS_DIR)/configure \
                --prefix=/usr \
                --exec-prefix=/usr \
index 780823542a96325b303fb8ba58c4fb9054c6fcd2..97b8e7fde7fd643870d9c6605578b4425f40b91f 100644 (file)
@@ -1,43 +1,29 @@
-diff -urN binutils-2.14.90.0.8-dist/bfd/elf64-alpha.c binutils-2.14.90.0.8/bfd/elf64-alpha.c
---- binutils-2.14.90.0.8-dist/bfd/elf64-alpha.c        2004-01-14 15:07:43.000000000 -0600
-+++ binutils-2.14.90.0.8/bfd/elf64-alpha.c     2004-02-11 03:42:05.000000000 -0600
-@@ -4144,9 +4144,12 @@
-   loc = srel->contents;
-   loc += srel->reloc_count++ * sizeof (Elf64_External_Rela);
--  bfd_elf64_swap_reloca_out (abfd, &outrel, loc);
--  BFD_ASSERT (sizeof (Elf64_External_Rela) * srel->reloc_count
--            <= srel->_cooked_size);
-+  if (loc)
-+    {
-+      bfd_elf64_swap_reloca_out (abfd, &outrel, loc);
-+      BFD_ASSERT (sizeof (Elf64_External_Rela) * srel->reloc_count
-+                <= srel->_cooked_size);
-+    }
- }
+--- binutils-2.11.90.0.19.orig/ld/Makefile.am
++++ binutils-2.11.90.0.19/ld/Makefile.am
+@@ -19,7 +19,7 @@
+ # We put the scripts in the directory $(scriptdir)/ldscripts.
+ # We can't put the scripts in $(datadir) because the SEARCH_DIR
+ # directives need to be different for native and cross linkers.
+-scriptdir = $(tooldir)/lib
++scriptdir = $(libdir)
  
- /* Relocate an Alpha ELF section for a relocatable link.
-diff -urN binutils-2.14.90.0.8-dist/bfd/opncls.c binutils-2.14.90.0.8/bfd/opncls.c
---- binutils-2.14.90.0.8-dist/bfd/opncls.c     2004-01-14 15:07:43.000000000 -0600
-+++ binutils-2.14.90.0.8/bfd/opncls.c  2004-02-11 03:42:01.000000000 -0600
-@@ -150,6 +150,13 @@
- {
-   bfd *nbfd;
-   const bfd_target *target_vec;
-+  struct stat s;
-+
-+  if (stat (filename, &s) == 0)
-+    if (S_ISDIR(s.st_mode)) {
-+      bfd_set_error (bfd_error_file_not_recognized);
-+      return NULL;
-+    }
+ EMUL = @EMUL@
+ EMULATION_OFILES = @EMULATION_OFILES@
+--- binutils-2.11.90.0.19.orig/ld/Makefile.in
++++ binutils-2.11.90.0.19/ld/Makefile.in
+@@ -123,7 +123,7 @@
+ # We put the scripts in the directory $(scriptdir)/ldscripts.
+ # We can't put the scripts in $(datadir) because the SEARCH_DIR
+ # directives need to be different for native and cross linkers.
+-scriptdir = $(tooldir)/lib
++scriptdir = $(libdir)
  
-   nbfd = _bfd_new_bfd ();
-   if (nbfd == NULL)
-diff -urN binutils-2.14.90.0.8-dist/gprof/gprof.texi binutils-2.14.90.0.8/gprof/gprof.texi
---- binutils-2.14.90.0.8-dist/gprof/gprof.texi 2004-01-14 15:07:51.000000000 -0600
-+++ binutils-2.14.90.0.8/gprof/gprof.texi      2004-02-11 03:42:01.000000000 -0600
-@@ -138,6 +138,10 @@
+ EMUL = @EMUL@
+ EMULATION_OFILES = @EMULATION_OFILES@
+diff -urN binutils-2.11.90.0.27/gprof/gprof.texi binutils-2.11.90.0.27.new/gprof/gprof.texi
+--- binutils-2.11.90.0.27/gprof/gprof.texi     Tue Jun 19 14:57:58 2001
++++ binutils-2.11.90.0.27.new/gprof/gprof.texi Mon Aug 27 10:27:23 2001
+@@ -137,6 +137,10 @@
  If more than one profile file is specified, the @code{gprof}
  output shows the sum of the profile information in the given profile files.
  
@@ -48,55 +34,51 @@ diff -urN binutils-2.14.90.0.8-dist/gprof/gprof.texi binutils-2.14.90.0.8/gprof/
  @code{Gprof} calculates the amount of time spent in each routine.
  Next, these times are propagated along the edges of the call graph.
  Cycles are discovered, and calls into a cycle are made to share the time
-@@ -182,7 +186,7 @@
- @c man end
- @c man begin SEEALSO
--monitor(3), profil(2), cc(1), prof(1), and the Info entry for @file{gprof}.
-+profil(2), cc(1), prof(1), and the Info entry for @file{gprof}.
- ``An Execution Profiler for Modular Programs'',
- by S. Graham, P. Kessler, M. McKusick;
-@@ -268,6 +272,11 @@
+@@ -266,6 +270,11 @@
+ to do the linking, simply specify @samp{-pg} in addition to your usual
  options.  The same option, @samp{-pg}, alters either compilation or linking
  to do what is necessary for profiling.  Here are examples:
++
 +If you use gcc 2.95.x or 3.0.x, you may need to add the
 +@samp{-fprofile-arcs} option to the compile line along with @samp{-pg}
 +in order to allow the call-graphs to be properly included in the gmon.out
 +file.
-+
  @example
  cc -g -c myprog.c utils.c -pg
- cc -o myprog myprog.o utils.o -pg
-diff -urN binutils-2.14.90.0.8-dist/ld/Makefile.am binutils-2.14.90.0.8/ld/Makefile.am
---- binutils-2.14.90.0.8-dist/ld/Makefile.am   2004-01-14 15:07:52.000000000 -0600
-+++ binutils-2.14.90.0.8/ld/Makefile.am        2004-02-11 03:42:01.000000000 -0600
-@@ -19,7 +19,7 @@
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
+diff -urN binutils-2.11.92.0.5/bfd/opncls.c binutils-2.11.92.0.5.new/bfd/opncls.c
+--- binutils-2.11.92.0.5/bfd/opncls.c  Mon Oct  1 18:25:21 2001
++++ binutils-2.11.92.0.5.new/bfd/opncls.c      Sat Oct 13 11:26:59 2001
+@@ -127,6 +127,13 @@
+ {
+   bfd *nbfd;
+   const bfd_target *target_vec;
++  struct stat s;
++
++  if (stat (filename, &s) == 0)
++    if (S_ISDIR(s.st_mode)) {
++      bfd_set_error (bfd_error_file_not_recognized);
++      return NULL;
++    }
  
- EMUL = @EMUL@
- EMULATION_OFILES = @EMULATION_OFILES@
-diff -urN binutils-2.14.90.0.8-dist/ld/Makefile.in binutils-2.14.90.0.8/ld/Makefile.in
---- binutils-2.14.90.0.8-dist/ld/Makefile.in   2004-01-14 15:07:52.000000000 -0600
-+++ binutils-2.14.90.0.8/ld/Makefile.in        2004-02-11 03:42:01.000000000 -0600
-@@ -128,7 +128,7 @@
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
+   nbfd = _bfd_new_bfd ();
+   if (nbfd == NULL)
+diff -urN binutils-2.11.92.0.12.3/opcodes/i386-dis.c binutils-2.11.92.0.12.3.new/opcodes/i386-dis.c
+--- binutils-2.11.92.0.12.3/opcodes/i386-dis.c Fri Nov 16 17:05:55 2001
++++ binutils-2.11.92.0.12.3.new/opcodes/i386-dis.c     Mon Dec 31 15:55:04 2001
+@@ -1830,7 +1830,7 @@
+  * The function returns the length of this instruction in bytes.
+  */
  
- EMUL = @EMUL@
- EMULATION_OFILES = @EMULATION_OFILES@
-diff -urN binutils-2.14.90.0.8-dist/ld/emultempl/elf32.em binutils-2.14.90.0.8/ld/emultempl/elf32.em
---- binutils-2.14.90.0.8-dist/ld/emultempl/elf32.em    2004-01-14 15:07:53.000000000 -0600
-+++ binutils-2.14.90.0.8/ld/emultempl/elf32.em 2004-02-11 03:42:01.000000000 -0600
-@@ -671,6 +671,8 @@
+-static char intel_syntax;
++static signed char intel_syntax;
+ static char open_char;
+ static char close_char;
+ static char separator_char;
+diff -urN binutils-2.12.90.0.12/ld/emultempl/elf32.em binutils-2.12.90.0.12.new/ld/emultempl/elf32.em
+--- binutils-2.12.90.0.12/ld/emultempl/elf32.em        Wed Jun 19 00:41:59 2002
++++ binutils-2.12.90.0.12.new/ld/emultempl/elf32.em    Wed Jun 26 10:00:26 2002
+@@ -672,6 +672,8 @@
              && command_line.rpath == NULL)
            {
              lib_path = (const char *) getenv ("LD_RUN_PATH");
@@ -105,19 +87,81 @@ diff -urN binutils-2.14.90.0.8-dist/ld/emultempl/elf32.em binutils-2.14.90.0.8/l
              if (gld${EMULATION_NAME}_search_needed (lib_path, l->name,
                                                      force))
                break;
-@@ -850,6 +852,8 @@
+@@ -867,6 +869,8 @@
    rpath = command_line.rpath;
    if (rpath == NULL)
      rpath = (const char *) getenv ("LD_RUN_PATH");
 +  if ((rpath) && (strlen (rpath) == 0))
 +      rpath = NULL;
    if (! (bfd_elf${ELFSIZE}_size_dynamic_sections
-        (output_bfd, command_line.soname, rpath,
+          (output_bfd, command_line.soname, rpath,
          command_line.filter_shlib,
-diff -urN binutils-2.14.90.0.8-dist/ltmain.sh binutils-2.14.90.0.8/ltmain.sh
---- binutils-2.14.90.0.8-dist/ltmain.sh        2002-03-22 16:06:16.000000000 -0600
-+++ binutils-2.14.90.0.8/ltmain.sh     2004-02-11 03:42:05.000000000 -0600
-@@ -4413,6 +4413,10 @@
+diff -urN binutils-2.13.90.0.18/gprof/gprof.texi binutils-2.13.90.0.18.new/gprof/gprof.texi
+--- binutils-2.13.90.0.18/gprof/gprof.texi     2003-02-02 18:29:09.000000000 -0500
++++ binutils-2.13.90.0.18.new/gprof/gprof.texi 2003-02-02 18:28:37.000000000 -0500
+@@ -185,7 +185,7 @@
+ @c man end
+ @c man begin SEEALSO
+-monitor(3), profil(2), cc(1), prof(1), and the Info entry for @file{gprof}.
++profil(2), cc(1), prof(1), and the Info entry for @file{gprof}.
+ ``An Execution Profiler for Modular Programs'',
+ by S. Graham, P. Kessler, M. McKusick;
+diff -urN binutils-2.13.90.0.10/opcodes/alpha-opc.c binutils-2.13.90.0.10.new/opcodes/alpha-opc.c
+--- binutils-2.13.90.0.10/opcodes/alpha-opc.c  2002-03-07 14:52:40.000000000 -0500
++++ binutils-2.13.90.0.10.new/opcodes/alpha-opc.c      2002-10-12 20:16:08.000000000 -0400
+@@ -1101,7 +1101,8 @@
+   { "wmb",            MFC(0x18,0x4400), BASE, ARG_NONE },
+   { "fetch",          MFC(0x18,0x8000), BASE, { ZA, PRB } },
+   { "fetch_m",                MFC(0x18,0xA000), BASE, { ZA, PRB } },
+-  { "rpcc",           MFC(0x18,0xC000), BASE, { RA } },
++  { "rpcc",           MFC(0x18,0xC000), BASE, { RA, ZB } },
++  { "rpcc",           MFC(0x18,0xC000), BASE, { RA, RB } },   /* ev6 una */
+   { "rc",             MFC(0x18,0xE000), BASE, { RA } },
+   { "ecb",            MFC(0x18,0xE800), BASE, { ZA, PRB } },  /* ev56 una */
+   { "rs",             MFC(0x18,0xF000), BASE, { RA } },
+--- binutils-2.13.90.0.18/bfd/elf64-alpha.c    2003-01-21 19:21:32.000000000 +0100
++++ binutils-2.13.90.0.18-modif/bfd/elf64-alpha.c      2003-04-11 01:24:26.000000000 +0200
+@@ -4184,9 +4184,12 @@
+   loc = srel->contents;
+   loc += srel->reloc_count++ * sizeof (Elf64_External_Rela);
+-  bfd_elf64_swap_reloca_out (abfd, &outrel, loc);
+-  BFD_ASSERT (sizeof (Elf64_External_Rela) * srel->reloc_count
+-            <= srel->_cooked_size);
++  if (loc)
++    {
++      bfd_elf64_swap_reloca_out (abfd, &outrel, loc);
++      BFD_ASSERT (sizeof (Elf64_External_Rela) * srel->reloc_count
++                <= srel->_cooked_size);
++    }
+ }
+ /* Relocate an Alpha ELF section for a relocatable link.
+2003-05-23  H.J. Lu <hongjiu.lu@intel.com>
+
+       * ltmain.sh: Make symlink for shared library if needed.
+
+opcodes/
+
+2003-07-14  H.J. Lu <hongjiu.lu@intel.com>
+
+       * Makefile.in: Regenerated.
+
+2003-06-11  H.J. Lu <hongjiu.lu@intel.com>
+
+       * Makefile.in: Regenerated.
+
+2003-05-23  H.J. Lu <hongjiu.lu@intel.com>
+
+       * Makefile.am (libopcodes_la_LIBADD): Use "-L../bfd -lbfd"
+       instead of "../bfd/libbfd.la".
+       * Makefile.in: Regenerated.
+
+--- binutils/ltmain.sh.dso     2002-03-22 00:16:20.000000000 -0800
++++ binutils/ltmain.sh 2003-07-14 12:50:17.000000000 -0700
+@@ -4413,6 +4413,10 @@ relink_command=\"$relink_command\""
        # LD_LIBRARY_PATH before the program is installed.
        $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
        $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
@@ -128,15 +172,14 @@ diff -urN binutils-2.14.90.0.8-dist/ltmain.sh binutils-2.14.90.0.8/ltmain.sh
        ;;
      esac
      exit 0
-diff -urN binutils-2.14.90.0.8-dist/opcodes/i386-dis.c binutils-2.14.90.0.8/opcodes/i386-dis.c
---- binutils-2.14.90.0.8-dist/opcodes/i386-dis.c       2004-01-14 15:07:55.000000000 -0600
-+++ binutils-2.14.90.0.8/opcodes/i386-dis.c    2004-02-11 03:42:01.000000000 -0600
-@@ -1879,7 +1879,7 @@
-  * The function returns the length of this instruction in bytes.
-  */
+--- binutils/opcodes/Makefile.am.dso   2003-06-11 07:18:04.000000000 -0700
++++ binutils/opcodes/Makefile.am       2003-07-14 12:50:18.000000000 -0700
+@@ -283,7 +283,7 @@ disassemble.lo: disassemble.c $(INCDIR)/
  
--static char intel_syntax;
-+static signed char intel_syntax;
- static char open_char;
- static char close_char;
- static char separator_char;
+ libopcodes_la_SOURCES =  dis-buf.c disassemble.c
+ libopcodes_la_DEPENDENCIES = $(OFILES) ../bfd/libbfd.la
+-libopcodes_la_LIBADD = $(OFILES) @WIN32LIBADD@ ../bfd/libbfd.la
++libopcodes_la_LIBADD = $(OFILES) @WIN32LIBADD@ -L../bfd -lbfd
+ libopcodes_la_LDFLAGS = -release $(VERSION) @WIN32LDFLAGS@
+ # libtool will build .libs/libopcodes.a.  We create libopcodes.a in
index 5cb516cd21a09d8462c46278990b6306f46a0c64..87db23fb01561a4fddd2ecf8685093065b05cda6 100644 (file)
@@ -1,6 +1,6 @@
-diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bfd/config.bfd
---- binutils-2.14.90.0.8-001-debian/bfd/config.bfd     2004-01-14 15:07:43.000000000 -0600
-+++ binutils-2.14.90.0.8/bfd/config.bfd        2004-02-12 14:18:14.000000000 -0600
+diff -urN binutils-2.14.90.0.6/bfd/config.bfd binutils-2.14.90.0.6-uClibc/bfd/config.bfd
+--- binutils-2.14.90.0.6/bfd/config.bfd        2003-08-21 10:28:47.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/bfd/config.bfd 2004-01-06 23:20:32.000000000 -0600
 @@ -121,7 +121,7 @@
      targ_defvec=ecoffalpha_little_vec
      targ_selvecs=bfd_elf64_alpha_vec
@@ -10,16 +10,17 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf64_alpha_vec
      targ_selvecs=ecoffalpha_little_vec
      ;;
-@@ -131,7 +131,7 @@
+@@ -131,7 +131,8 @@
    alpha*-*-*)
      targ_defvec=ecoffalpha_little_vec
      ;;
--  ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
-+  ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-linux-uclibc* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
+-  ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf*)
++  ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | \
++  ia64*-*-linux-uclibc* | ia64*-*-elf*)
      targ_defvec=bfd_elf64_ia64_little_vec
      targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec"
      ;;
-@@ -208,7 +208,7 @@
+@@ -214,7 +215,7 @@
      targ_defvec=bfd_elf32_littlearm_vec
      targ_selvecs=bfd_elf32_bigarm_vec
      ;;
@@ -28,18 +29,17 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf32_bigarm_vec
      targ_selvecs=bfd_elf32_littlearm_vec
      ;;
-@@ -216,8 +216,8 @@
+@@ -222,7 +223,8 @@
      targ_defvec=bfd_elf32_littlearm_vec
      targ_selvecs=bfd_elf32_bigarm_vec
      ;;
--  arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \
--  arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks)
+-  arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | arm*-*-uclinux*)
 +  arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | \
-+  arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks)
++  arm*-*-conix* | arm*-*-uclinux*)
      targ_defvec=bfd_elf32_littlearm_vec
      targ_selvecs=bfd_elf32_bigarm_vec
      ;;
-@@ -350,7 +350,7 @@
+@@ -355,7 +357,7 @@
      ;;
  
  #ifdef BFD64
@@ -48,16 +48,16 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf64_hppa_linux_vec
      targ_selvecs=bfd_elf64_hppa_vec
      ;;
-@@ -361,7 +361,7 @@
+@@ -366,7 +368,7 @@
      ;;
  #endif
  
--  hppa*-*-linux-gnu* | hppa*-*-netbsd*)
-+  hppa*-*-linux-gnu* | hppa*-*-linux-uclibc* | hppa*-*-netbsd*)
+-  hppa*-*-linux-gnu*)
++  hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*)
      targ_defvec=bfd_elf32_hppa_linux_vec
      targ_selvecs=bfd_elf32_hppa_vec
      ;;
-@@ -483,7 +483,7 @@
+@@ -488,7 +490,7 @@
      targ_selvecs=bfd_elf32_i386_vec
      targ_underscore=yes
      ;;
@@ -66,7 +66,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf32_i386_vec
      targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec"
      targ64_selvecs=bfd_elf64_x86_64_vec
-@@ -497,7 +497,7 @@
+@@ -502,7 +504,7 @@
      targ_defvec=bfd_elf64_x86_64_vec
      targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec"
      ;;
@@ -75,7 +75,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf64_x86_64_vec
      targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec"
      ;;
-@@ -672,7 +672,7 @@
+@@ -662,7 +664,7 @@
      targ_selvecs=bfd_elf32_m68k_vec
      targ_underscore=yes
      ;;
@@ -84,7 +84,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf32_m68k_vec
      targ_selvecs=m68klinux_vec
      ;;
-@@ -952,7 +952,8 @@
+@@ -929,7 +931,8 @@
      ;;
  #endif
    powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
@@ -94,7 +94,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
    powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*)
      targ_defvec=bfd_elf32_powerpc_vec
      targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
-@@ -984,8 +985,8 @@
+@@ -961,8 +964,8 @@
      targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
      ;;
    powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
@@ -105,7 +105,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf32_powerpcle_vec
      targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
      targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
-@@ -1141,7 +1142,7 @@
+@@ -1110,7 +1113,7 @@
      targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
      targ_underscore=yes
      ;;
@@ -114,7 +114,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf32_sparc_vec
      targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
      ;;
-@@ -1188,7 +1189,7 @@
+@@ -1157,7 +1160,7 @@
      targ_defvec=sunos_big_vec
      targ_underscore=yes
      ;;
@@ -123,10 +123,10 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/config.bfd binutils-2.14.90.0.8/bf
      targ_defvec=bfd_elf64_sparc_vec
      targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
      ;;
-diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure binutils-2.14.90.0.8/bfd/configure
---- binutils-2.14.90.0.8-001-debian/bfd/configure      2004-01-14 15:07:43.000000000 -0600
-+++ binutils-2.14.90.0.8/bfd/configure 2004-02-12 14:09:10.000000000 -0600
-@@ -1699,6 +1699,11 @@
+diff -urN binutils-2.14.90.0.6/bfd/configure binutils-2.14.90.0.6-uClibc/bfd/configure
+--- binutils-2.14.90.0.6/bfd/configure 2003-08-21 10:28:47.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/bfd/configure  2004-01-06 20:26:51.000000000 -0600
+@@ -1698,6 +1698,11 @@
    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
    ;;
  
@@ -138,8 +138,8 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure binutils-2.14.90.0.8/bfd
  netbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
-@@ -5278,7 +5283,7 @@
-   alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
+@@ -5102,7 +5107,7 @@
+   alpha*-*-freebsd*)
        COREFILE=''
        ;;
 -  alpha*-*-linux-gnu*)
@@ -147,7 +147,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure binutils-2.14.90.0.8/bfd
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/alphalinux.h"'
        ;;
-@@ -5338,7 +5343,7 @@
+@@ -5161,7 +5166,7 @@
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/i386mach3.h"'
        ;;
@@ -156,7 +156,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure binutils-2.14.90.0.8/bfd
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/i386linux.h"'
        ;;
-@@ -5388,7 +5393,7 @@
+@@ -5211,7 +5216,7 @@
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/hp300bsd.h"'
        ;;
@@ -165,11 +165,11 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure binutils-2.14.90.0.8/bfd
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/m68klinux.h"'
        ;;
-diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure.in binutils-2.14.90.0.8/bfd/configure.in
---- binutils-2.14.90.0.8-001-debian/bfd/configure.in   2004-01-14 15:07:43.000000000 -0600
-+++ binutils-2.14.90.0.8/bfd/configure.in      2004-02-12 14:09:10.000000000 -0600
-@@ -178,7 +178,7 @@
-   alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
+diff -urN binutils-2.14.90.0.6/bfd/configure.in binutils-2.14.90.0.6-uClibc/bfd/configure.in
+--- binutils-2.14.90.0.6/bfd/configure.in      2003-08-21 10:28:47.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/bfd/configure.in       2004-01-06 20:33:02.000000000 -0600
+@@ -153,7 +153,7 @@
+   alpha*-*-freebsd*)
        COREFILE=''
        ;;
 -  alpha*-*-linux-gnu*)
@@ -177,7 +177,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure.in binutils-2.14.90.0.8/
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/alphalinux.h"'
        ;;
-@@ -259,7 +259,7 @@
+@@ -233,7 +233,7 @@
        TRAD_HEADER='"hosts/i386mach3.h"'
        ;;
  changequote(,)dnl
@@ -186,7 +186,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure.in binutils-2.14.90.0.8/
  changequote([,])dnl
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/i386linux.h"'
-@@ -312,7 +312,7 @@
+@@ -286,7 +286,7 @@
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/hp300bsd.h"'
        ;;
@@ -195,9 +195,9 @@ diff -urN binutils-2.14.90.0.8-001-debian/bfd/configure.in binutils-2.14.90.0.8/
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/m68klinux.h"'
        ;;
-diff -urN binutils-2.14.90.0.8-001-debian/config.sub binutils-2.14.90.0.8/config.sub
---- binutils-2.14.90.0.8-001-debian/config.sub 2004-01-14 15:07:42.000000000 -0600
-+++ binutils-2.14.90.0.8/config.sub    2004-02-12 14:09:10.000000000 -0600
+diff -urN binutils-2.14.90.0.6/config.sub binutils-2.14.90.0.6-uClibc/config.sub
+--- binutils-2.14.90.0.6/config.sub    2003-08-21 10:28:47.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/config.sub     2004-01-06 22:56:56.000000000 -0600
 @@ -118,7 +118,7 @@
  # Here we must recognize all the valid KERNEL-OS combinations.
  maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
@@ -217,11 +217,11 @@ diff -urN binutils-2.14.90.0.8-001-debian/config.sub binutils-2.14.90.0.8/config
              | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
              | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
              | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-diff -urN binutils-2.14.90.0.8-001-debian/configure binutils-2.14.90.0.8/configure
---- binutils-2.14.90.0.8-001-debian/configure  2004-01-14 15:07:42.000000000 -0600
-+++ binutils-2.14.90.0.8/configure     2004-02-12 14:09:10.000000000 -0600
-@@ -1273,6 +1273,18 @@
-   i[3456789]86-*-freebsd* | i[3456789]86-*-kfreebsd*-gnu)
+diff -urN binutils-2.14.90.0.6/configure binutils-2.14.90.0.6-uClibc/configure
+--- binutils-2.14.90.0.6/configure     2003-08-21 10:29:32.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/configure      2004-01-07 05:43:40.000000000 -0600
+@@ -1257,6 +1262,18 @@
+   i[3456789]86-*-freebsd*)
      noconfigdirs="$noconfigdirs target-newlib target-libgloss"
      ;;
 +  i[3456789]86-*-linux-uclibc)
@@ -239,20 +239,21 @@ diff -urN binutils-2.14.90.0.8-001-debian/configure binutils-2.14.90.0.8/configu
    i[3456789]86-*-linux*)
      # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
      # not build java stuff by default.
-diff -urN binutils-2.14.90.0.8-001-debian/configure.in binutils-2.14.90.0.8/configure.in
---- binutils-2.14.90.0.8-001-debian/configure.in       2004-01-14 15:07:42.000000000 -0600
-+++ binutils-2.14.90.0.8/configure.in  2004-02-12 14:50:56.000000000 -0600
-@@ -512,6 +512,18 @@
-   i[[3456789]]86-*-freebsd* | i[[3456789]]86-*-kfreebsd*-gnu)
+diff -urN binutils-2.14.90.0.6/configure.in binutils-2.14.90.0.6-uClibc/configure.in
+--- binutils-2.14.90.0.6/configure.in  2003-08-21 10:29:30.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/configure.in   2004-01-07 05:44:02.000000000 -0600
+@@ -508,6 +513,19 @@
+   i[[3456789]]86-*-freebsd*)
      noconfigdirs="$noconfigdirs target-newlib target-libgloss"
      ;;
-+  i[[3456789]]86-*-linux-uclibc)
++  i[3456789]86-*-linux-uclibc)
 +    # This section makes it possible to build newlib natively on linux.
 +    # If we are using a cross compiler then don't configure newlib.
 +    if test x${is_cross_compiler} != xno ; then
 +      noconfigdirs="$noconfigdirs target-newlib"
 +    fi
 +    noconfigdirs="$noconfigdirs target-libgloss"
++    build_modules=
 +    # If we are not using a cross compiler, do configure newlib.
 +    # Note however, that newlib will only be configured in this situation
 +    # if the --with-newlib option has been given, because otherwise
@@ -261,10 +262,25 @@ diff -urN binutils-2.14.90.0.8-001-debian/configure.in binutils-2.14.90.0.8/conf
    i[[3456789]]86-*-linux*)
      # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
      # not build java stuff by default.
-diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas/configure
---- binutils-2.14.90.0.8-001-debian/gas/configure      2004-01-14 15:07:45.000000000 -0600
-+++ binutils-2.14.90.0.8/gas/configure 2004-02-12 14:57:43.000000000 -0600
-@@ -3215,6 +3215,11 @@
+diff -urN binutils-2.14.90.0.6/demangler/configure binutils-2.14.90.0.6-uClibc/demangler/configure
+--- binutils-2.14.90.0.6/demangler/configure   2003-08-21 10:29:31.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/demangler/configure    2004-01-06 21:45:51.000000000 -0600
+@@ -1363,6 +1363,11 @@
+   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
+   ;;
++linux-uclibc*)
++  lt_cv_deplibs_check_method=pass_all
++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
++  ;;
++
+ netbsd*)
+   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
+diff -urN binutils-2.14.90.0.6/gas/configure binutils-2.14.90.0.6-uClibc/gas/configure
+--- binutils-2.14.90.0.6/gas/configure 2003-07-23 10:08:10.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/gas/configure  2004-01-06 21:57:25.000000000 -0600
+@@ -1576,6 +1576,11 @@
    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
    ;;
  
@@ -276,7 +292,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
  netbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
-@@ -4030,6 +4035,7 @@
+@@ -2370,6 +2375,7 @@
        alpha*-*-osf*)                  fmt=ecoff ;;
        alpha*-*-linuxecoff*)           fmt=ecoff ;;
        alpha*-*-linux-gnu*)            fmt=elf em=linux ;;
@@ -284,7 +300,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
        alpha*-*-netbsd*)                       fmt=elf em=nbsd ;;
        alpha*-*-openbsd*)              fmt=elf em=obsd ;;
  
-@@ -4046,6 +4052,7 @@
+@@ -2386,6 +2392,7 @@
        arm*-*-conix*)                  fmt=elf ;;
        arm-*-linux*aout*)              fmt=aout em=linux ;;
        arm*-*-linux-gnu*)              fmt=elf  em=linux ;;
@@ -292,7 +308,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
        arm*-*-uclinux*)                        fmt=elf  em=linux ;;
        arm-*-netbsdelf*)                 fmt=elf  em=nbsd ;;
        arm-*-*n*bsd*)                  fmt=aout em=nbsd ;;
-@@ -4059,6 +4066,7 @@
+@@ -2400,6 +2407,7 @@
        avr-*-*)                                fmt=elf ;;
  
        cris-*-linux-gnu*)              fmt=multi bfd_gas=yes em=linux ;;
@@ -300,7 +316,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
        cris-*-*)                               fmt=multi bfd_gas=yes ;;
  
        d10v-*-*)                               fmt=elf ;;
-@@ -4115,7 +4123,9 @@
+@@ -2455,7 +2463,9 @@
        i386-*-linux*oldld)             fmt=aout em=linux ;;
        i386-*-linux*coff*)             fmt=coff em=linux ;;
        i386-*-linux-gnu*)              fmt=elf em=linux ;;
@@ -310,7 +326,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
        i386-*-lynxos*)                 fmt=coff em=lynx ;;
        i386-*-sysv[45]*)                       fmt=elf ;;
        i386-*-solaris*)                        fmt=elf ;;
-@@ -4175,6 +4185,7 @@
+@@ -2512,6 +2522,7 @@
        ia64-*-elf*)                    fmt=elf ;;
        ia64-*-aix*)                    fmt=elf em=ia64aix ;;
        ia64-*-linux-gnu*)              fmt=elf em=linux ;;
@@ -318,23 +334,23 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
        ia64-*-hpux*)                   fmt=elf em=hpux ;;
        ia64-*-netbsd*)                 fmt=elf em=nbsd ;;
  
-@@ -4202,6 +4213,7 @@
+@@ -2538,6 +2549,7 @@
        m68k-*-hpux*)                   fmt=hp300 em=hp300 ;;
        m68k-*-linux*aout*)             fmt=aout em=linux ;;
        m68k-*-linux-gnu*)              fmt=elf em=linux ;;
 +      m68k-*-linux-uclibc*)           fmt=elf em=linux ;;
-       m68k-*-uclinux*)                        fmt=elf ;;
        m68k-*-gnu*)                    fmt=elf ;;
        m68k-*-lynxos*)                 fmt=coff em=lynx ;;
-@@ -4265,6 +4277,7 @@
+       m68k-*-netbsdelf*)              fmt=elf em=nbsd ;;
+@@ -2592,6 +2604,7 @@
        ppc-*-beos*)                    fmt=coff ;;
        ppc-*-*n*bsd* | ppc-*-elf*)     fmt=elf ;;
        ppc-*-eabi* | ppc-*-sysv4*)     fmt=elf ;;
 +      ppc-*-linux-uclibc* | \
-       ppc-*-linux-gnu*)                       fmt=elf em=linux
+       ppc-*-linux-gnu*)                       fmt=elf
            case "$endian" in
                big)  ;;
-@@ -4292,7 +4305,9 @@
+@@ -2616,7 +2629,9 @@
        ppc-*-kaos*)                    fmt=elf ;;
  
        s390x-*-linux-gnu*)             fmt=elf em=linux ;;
@@ -344,7 +360,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
  
        sh*-*-linux*)                   fmt=elf em=linux
            case ${cpu} in
-@@ -4325,6 +4340,7 @@
+@@ -2649,6 +2664,7 @@
        sparc-*-coff)                   fmt=coff ;;
        sparc-*-linux*aout*)            fmt=aout em=linux ;;
        sparc-*-linux-gnu*)             fmt=elf em=linux ;;
@@ -352,10 +368,10 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure binutils-2.14.90.0.8/gas
        sparc-*-lynxos*)                        fmt=coff em=lynx ;;
        sparc-fujitsu-none)             fmt=aout ;;
        sparc-*-elf)                    fmt=elf ;;
-diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/gas/configure.in
---- binutils-2.14.90.0.8-001-debian/gas/configure.in   2004-01-14 15:07:45.000000000 -0600
-+++ binutils-2.14.90.0.8/gas/configure.in      2004-02-12 14:21:06.000000000 -0600
-@@ -194,6 +194,7 @@
+diff -urN binutils-2.14.90.0.6/gas/configure.in binutils-2.14.90.0.6-uClibc/gas/configure.in
+--- binutils-2.14.90.0.6/gas/configure.in      2003-07-23 10:08:10.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/gas/configure.in       2004-01-06 21:57:26.000000000 -0600
+@@ -184,6 +184,7 @@
        alpha*-*-osf*)                  fmt=ecoff ;;
        alpha*-*-linuxecoff*)           fmt=ecoff ;;
        alpha*-*-linux-gnu*)            fmt=elf em=linux ;;
@@ -363,7 +379,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/
        alpha*-*-netbsd*)                       fmt=elf em=nbsd ;;
        alpha*-*-openbsd*)              fmt=elf em=obsd ;;
  
-@@ -210,6 +211,7 @@
+@@ -200,6 +201,7 @@
        arm*-*-conix*)                  fmt=elf ;;
        arm-*-linux*aout*)              fmt=aout em=linux ;;
        arm*-*-linux-gnu*)              fmt=elf  em=linux ;;
@@ -371,7 +387,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/
        arm*-*-uclinux*)                        fmt=elf  em=linux ;;
        arm-*-netbsdelf*)                 fmt=elf  em=nbsd ;;
        arm-*-*n*bsd*)                  fmt=aout em=nbsd ;;
-@@ -223,6 +225,7 @@
+@@ -214,6 +216,7 @@
        avr-*-*)                                fmt=elf ;;
  
        cris-*-linux-gnu*)              fmt=multi bfd_gas=yes em=linux ;;
@@ -379,7 +395,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/
        cris-*-*)                               fmt=multi bfd_gas=yes ;;
  
        d10v-*-*)                               fmt=elf ;;
-@@ -279,7 +282,9 @@
+@@ -269,7 +272,9 @@
        i386-*-linux*oldld)             fmt=aout em=linux ;;
        i386-*-linux*coff*)             fmt=coff em=linux ;;
        i386-*-linux-gnu*)              fmt=elf em=linux ;;
@@ -389,7 +405,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/
        i386-*-lynxos*)                 fmt=coff em=lynx ;;
  changequote(,)dnl
        i386-*-sysv[45]*)                       fmt=elf ;;
-@@ -332,6 +337,7 @@
+@@ -322,6 +327,7 @@
        ia64-*-elf*)                    fmt=elf ;;
        ia64-*-aix*)                    fmt=elf em=ia64aix ;;
        ia64-*-linux-gnu*)              fmt=elf em=linux ;;
@@ -397,23 +413,23 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/
        ia64-*-hpux*)                   fmt=elf em=hpux ;;
        ia64-*-netbsd*)                 fmt=elf em=nbsd ;;
  
-@@ -359,6 +365,7 @@
+@@ -348,6 +354,7 @@
        m68k-*-hpux*)                   fmt=hp300 em=hp300 ;;
        m68k-*-linux*aout*)             fmt=aout em=linux ;;
        m68k-*-linux-gnu*)              fmt=elf em=linux ;;
 +      m68k-*-linux-uclibc*)           fmt=elf em=linux ;;
-       m68k-*-uclinux*)                        fmt=elf ;;
        m68k-*-gnu*)                    fmt=elf ;;
        m68k-*-lynxos*)                 fmt=coff em=lynx ;;
-@@ -419,6 +426,7 @@
+       m68k-*-netbsdelf*)              fmt=elf em=nbsd ;;
+@@ -402,6 +409,7 @@
        ppc-*-beos*)                    fmt=coff ;;
        ppc-*-*n*bsd* | ppc-*-elf*)     fmt=elf ;;
        ppc-*-eabi* | ppc-*-sysv4*)     fmt=elf ;;
 +      ppc-*-linux-uclibc* | \
-       ppc-*-linux-gnu*)                       fmt=elf em=linux
+       ppc-*-linux-gnu*)                       fmt=elf
            case "$endian" in
                big)  ;;
-@@ -439,7 +447,9 @@
+@@ -424,7 +432,9 @@
        ppc-*-kaos*)                    fmt=elf ;;
  
        s390x-*-linux-gnu*)             fmt=elf em=linux ;;
@@ -423,7 +439,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/
  
        sh*-*-linux*)                   fmt=elf em=linux
            case ${cpu} in
-@@ -472,6 +482,7 @@
+@@ -457,6 +467,7 @@
        sparc-*-coff)                   fmt=coff ;;
        sparc-*-linux*aout*)            fmt=aout em=linux ;;
        sparc-*-linux-gnu*)             fmt=elf em=linux ;;
@@ -431,9 +447,9 @@ diff -urN binutils-2.14.90.0.8-001-debian/gas/configure.in binutils-2.14.90.0.8/
        sparc-*-lynxos*)                        fmt=coff em=lynx ;;
        sparc-fujitsu-none)             fmt=aout ;;
        sparc-*-elf)                    fmt=elf ;;
-diff -urN binutils-2.14.90.0.8-001-debian/ld/configure binutils-2.14.90.0.8/ld/configure
---- binutils-2.14.90.0.8-001-debian/ld/configure       2003-05-05 16:46:49.000000000 -0500
-+++ binutils-2.14.90.0.8/ld/configure  2004-02-12 14:09:10.000000000 -0600
+diff -urN binutils-2.14.90.0.6/ld/configure binutils-2.14.90.0.6-uClibc/ld/configure
+--- binutils-2.14.90.0.6/ld/configure  2003-05-05 16:46:49.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/ld/configure   2004-01-06 21:59:31.000000000 -0600
 @@ -1578,6 +1578,11 @@
    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
    ;;
@@ -446,9 +462,9 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure binutils-2.14.90.0.8/ld/c
  netbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
-diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/ld/configure.tgt
---- binutils-2.14.90.0.8-001-debian/ld/configure.tgt   2004-01-14 15:07:52.000000000 -0600
-+++ binutils-2.14.90.0.8/ld/configure.tgt      2004-02-12 14:14:12.000000000 -0600
+diff -urN binutils-2.14.90.0.6/ld/configure.tgt binutils-2.14.90.0.6-uClibc/ld/configure.tgt
+--- binutils-2.14.90.0.6/ld/configure.tgt      2003-08-21 10:28:48.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/ld/configure.tgt       2004-01-06 22:09:40.000000000 -0600
 @@ -30,6 +30,7 @@
                        targ_extra_emuls="criself crislinux"
                        targ_extra_libpath=$targ_extra_emuls ;;
@@ -476,7 +492,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
                        targ_extra_emuls="sparclinux elf64_sparc sun4"
                        targ_extra_libpath=elf64_sparc
                        tdir_sparclinux=${targ_alias}aout
-@@ -128,7 +131,7 @@
+@@ -124,7 +127,7 @@
  m68*-ericsson-ose)    targ_emul=sun3 ;;
  m68*-apple-aux*)      targ_emul=m68kaux ;;
  *-tandem-none)                targ_emul=st2000 ;;
@@ -485,7 +501,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
  i[3-7]86-*-nto-qnx*)  targ_emul=i386nto ;;
  i[3-7]86-*-vsta)      targ_emul=vsta ;;
  i[3-7]86-go32-rtems*) targ_emul=i386go32 ;;
-@@ -152,14 +155,16 @@
+@@ -148,14 +151,16 @@
                        tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
                        ;;
  i[3-7]86-*-linux*oldld)       targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
@@ -504,7 +520,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
                        targ_extra_emuls="elf_i386 i386linux"
                        targ_extra_libpath=elf_i386
                        tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
-@@ -259,10 +264,13 @@
+@@ -250,10 +255,13 @@
  arm9e-*-elf)          targ_emul=armelf ;;
  arm-*-oabi)           targ_emul=armelf_oabi ;;
  arm*b-*-linux-gnu*)   targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
@@ -519,7 +535,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
  strongarm-*-coff)     targ_emul=armcoff ;;
  strongarm-*-elf)      targ_emul=armelf ;;
  strongarm-*-kaos*)    targ_emul=armelf ;;
-@@ -363,7 +371,8 @@
+@@ -354,7 +362,8 @@
                        targ_extra_emuls=m68kelf
                        tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
                        ;;
@@ -529,7 +545,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
                        targ_extra_emuls=m68klinux
                        tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
                        ;;
-@@ -380,9 +389,9 @@
+@@ -370,9 +379,9 @@
  m68*-*-psos*)         targ_emul=m68kpsos ;;
  m68*-*-rtemscoff*)    targ_emul=m68kcoff ;;
  m68*-*-rtems*)                targ_emul=m68kelf ;;
@@ -541,10 +557,10 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
  hppa*-*-*elf*)                targ_emul=hppaelf ;;
  hppa*-*-lites*)               targ_emul=hppaelf ;;
  hppa*-*-netbsd*)      targ_emul=hppanbsd ;;
-@@ -429,16 +438,20 @@
- mips*-*-vxworks*)     targ_emul=elf32ebmip
                      targ_extra_emuls="elf32elmip" ;;
- mips*-*-windiss)      targ_emul=elf32mipswindiss ;;
+@@ -416,16 +425,20 @@
+ mips*-*-rtems*)               targ_emul=elf32ebmip ;;
mips*el-*-vxworks*)   targ_emul=elf32elmip ;;
+ mips*-*-vxworks*)     targ_emul=elf32ebmip ;;
 -mips64*el-*-linux-gnu*)       targ_emul=elf32ltsmipn32
 +mips64*el-*-linux-gnu* | mips64*el-*-linux-uclibc*) \
 +                      targ_emul=elf32ltsmipn32
@@ -566,7 +582,7 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
                        targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
                        ;;
  mips*-*-lnews*)               targ_emul=mipslnews ;;
-@@ -461,6 +474,10 @@
+@@ -447,6 +460,10 @@
  alpha*-*-linux-gnu*)  targ_emul=elf64alpha targ_extra_emuls=alpha
                        tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
                        ;;
@@ -577,9 +593,9 @@ diff -urN binutils-2.14.90.0.8-001-debian/ld/configure.tgt binutils-2.14.90.0.8/
  alpha*-*-osf*)                targ_emul=alpha ;;
  alpha*-*-gnu*)                targ_emul=elf64alpha ;;
  alpha*-*-netware*)    targ_emul=alpha ;;
-diff -urN binutils-2.14.90.0.8-001-debian/libtool.m4 binutils-2.14.90.0.8/libtool.m4
---- binutils-2.14.90.0.8-001-debian/libtool.m4 2003-05-05 16:46:46.000000000 -0500
-+++ binutils-2.14.90.0.8/libtool.m4    2004-02-12 14:09:10.000000000 -0600
+diff -urN binutils-2.14.90.0.6/libtool.m4 binutils-2.14.90.0.6-uClibc/libtool.m4
+--- binutils-2.14.90.0.6/libtool.m4    2003-05-05 16:46:46.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/libtool.m4     2004-01-06 20:30:39.000000000 -0600
 @@ -645,6 +645,11 @@
    lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
    ;;
@@ -592,9 +608,9 @@ diff -urN binutils-2.14.90.0.8-001-debian/libtool.m4 binutils-2.14.90.0.8/libtoo
  netbsd*)
    if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
      [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
-diff -urN binutils-2.14.90.0.8-001-debian/ltconfig binutils-2.14.90.0.8/ltconfig
---- binutils-2.14.90.0.8-001-debian/ltconfig   2004-01-14 15:07:42.000000000 -0600
-+++ binutils-2.14.90.0.8/ltconfig      2004-02-12 14:09:10.000000000 -0600
+diff -urN binutils-2.14.90.0.6/ltconfig binutils-2.14.90.0.6-uClibc/ltconfig
+--- binutils-2.14.90.0.6/ltconfig      2003-07-23 10:08:08.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/ltconfig       2004-01-06 21:05:11.000000000 -0600
 @@ -603,6 +603,7 @@
  # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
  case $host_os in
diff --git a/sources/binutils-uclibc-200-build_modules.patch b/sources/binutils-uclibc-200-build_modules.patch
new file mode 100644 (file)
index 0000000..e9f8e75
--- /dev/null
@@ -0,0 +1,31 @@
+Get around an odd build failure.
+diff -urN binutils-2.14.90.0.6/configure binutils-2.14.90.0.6-uClibc/configure
+--- binutils-2.14.90.0.6/configure     2003-08-21 10:29:32.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/configure      2004-01-07 05:43:40.000000000 -0600
+@@ -906,6 +906,11 @@
+ fi
++case "$target" in
++  *-*-*-uclibc*)
++    build_modules=
++    ;;
++esac
+ ################################################################################
+ srcname="gnu development package"
+diff -urN binutils-2.14.90.0.6/configure.in binutils-2.14.90.0.6-uClibc/configure.in
+--- binutils-2.14.90.0.6/configure.in  2003-08-21 10:29:30.000000000 -0500
++++ binutils-2.14.90.0.6-uClibc/configure.in   2004-01-07 05:44:02.000000000 -0600
+@@ -178,6 +178,11 @@
+ fi
++case "$target" in
++  *-*-*-uclibc*)
++    build_modules=
++    ;;
++esac
+ ################################################################################
+ srcname="gnu development package"