summaryrefslogtreecommitdiff
path: root/binutils
diff options
context:
space:
mode:
Diffstat (limited to 'binutils')
-rw-r--r--binutils/binutils-2.14.90.0.6/binutils-006_better_file_error.patch17
-rw-r--r--binutils/binutils-2.14.90.0.6/binutils-uclibc-001-debian.patch134
-rw-r--r--binutils/binutils-2.14.90.0.7/600-arm-textrel.patch67
-rw-r--r--binutils/binutils-2.14.90.0.7/binutils-006_better_file_error.patch17
-rw-r--r--binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-100-conf.patch (renamed from binutils/binutils-2.14.90.0.6/plt32trunc.patch)0
-rw-r--r--binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-200-build_modules.patch (renamed from binutils/binutils-2.14.90.0.7/plt32trunc.patch)0
-rw-r--r--binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-210-cflags.patch (renamed from binutils/binutils-2.15.90.0.3/binutils-001_ld_makefile.patch)0
-rw-r--r--binutils/binutils-2.14.90.0.7/binutils-petypes.patch (renamed from binutils/binutils-2.15.90.0.3/binutils-006_better_file_error.patch)0
-rw-r--r--binutils/binutils-2.14.90.0.7/binutils-uclibc-001-debian.patch134
-rw-r--r--binutils/binutils-2.14.90.0.7/binutils-undefsym.patch (renamed from binutils/binutils-2.15.90.0.3/binutils-009_signed_char_fix.patch)0
-rw-r--r--binutils/binutils-2.15.91.0.2/600-arm-textrel.patch (renamed from binutils/binutils-2.15.90.0.3/plt32trunc.patch)0
-rw-r--r--binutils/binutils-2.15.91.0.2/binutils-100_cflags_for_build.patch (renamed from binutils/binutils-2.15.91.0.1/binutils-001_ld_makefile.patch)0
-rw-r--r--binutils/binutils-2.15.91.0.2/binutils-2.15.90.0.3-uclibc-200-build_modules.patch (renamed from binutils/binutils-2.15.91.0.1/binutils-006_better_file_error.patch)0
-rw-r--r--binutils/binutils-2.15.91.0.2/binutils-2.15.90.0.3-uclibc-210-cflags.patch (renamed from binutils/binutils-2.15.91.0.1/binutils-009_signed_char_fix.patch)0
-rw-r--r--binutils/binutils-2.15.91.0.2/binutils-2.15.91.0.1-uclibc-100-conf.patch (renamed from binutils/binutils-cvs/binutils-001_ld_makefile.patch)0
-rw-r--r--binutils/binutils-cross-sdk_2.15.91.0.2.oe (renamed from binutils/binutils-cvs/binutils-006_better_file_error.patch)0
-rw-r--r--binutils/binutils-cross_2.15.91.0.2.oe (renamed from binutils/binutils-cvs/binutils-009_signed_char_fix.patch)0
-rw-r--r--binutils/binutils_2.14.90.0.6.oe4
-rw-r--r--binutils/binutils_2.14.90.0.7.oe4
-rw-r--r--binutils/binutils_2.15.90.0.3.oe6
-rw-r--r--binutils/binutils_2.15.91.0.1.oe6
-rw-r--r--binutils/binutils_2.15.91.0.2.oe0
-rw-r--r--binutils/binutils_cvs.oe111
-rw-r--r--binutils/files/better_file_error.patch0
-rw-r--r--binutils/files/ld_makefile.patch0
-rw-r--r--binutils/files/plt32trunc.patch0
-rw-r--r--binutils/files/signed_char_fix.patch0
27 files changed, 458 insertions, 42 deletions
diff --git a/binutils/binutils-2.14.90.0.6/binutils-006_better_file_error.patch b/binutils/binutils-2.14.90.0.6/binutils-006_better_file_error.patch
deleted file mode 100644
index 38ef52966e..0000000000
--- a/binutils/binutils-2.14.90.0.6/binutils-006_better_file_error.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-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;
-+ }
-
- nbfd = _bfd_new_bfd ();
- if (nbfd == NULL)
diff --git a/binutils/binutils-2.14.90.0.6/binutils-uclibc-001-debian.patch b/binutils/binutils-2.14.90.0.6/binutils-uclibc-001-debian.patch
index e69de29bb2..e453a1a1b5 100644
--- a/binutils/binutils-2.14.90.0.6/binutils-uclibc-001-debian.patch
+++ b/binutils/binutils-2.14.90.0.6/binutils-uclibc-001-debian.patch
@@ -0,0 +1,134 @@
+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.
+
++If you use gcc 2.95.x or 3.0 to compile your binaries, you may need
++to add the @samp{-fprofile-arcs} to the compile command line in order
++for the call graphs to be properly stored in gmon.out.
++
+ @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
+@@ -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
+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");
++ if ((lib_path) && (strlen (lib_path) == 0))
++ lib_path = NULL;
+ if (gld${EMULATION_NAME}_search_needed (lib_path, l->name,
+ force))
+ break;
+@@ -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,
+ command_line.filter_shlib,
+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 $?
++ if test -n "$linkname"; then
++ $show "(cd $output_objdir && $rm ../$linkname && $LN_S $output_objdir/$linkname ../$linkname)"
++ $run eval '(cd $output_objdir && $rm ../$linkname && $LN_S $output_objdir/$linkname ../$linkname)' || exit $?
++ fi
+ ;;
+ esac
+ exit 0
+--- 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)/
+
+ 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
diff --git a/binutils/binutils-2.14.90.0.7/600-arm-textrel.patch b/binutils/binutils-2.14.90.0.7/600-arm-textrel.patch
index e69de29bb2..1ccfd3a38c 100644
--- a/binutils/binutils-2.14.90.0.7/600-arm-textrel.patch
+++ b/binutils/binutils-2.14.90.0.7/600-arm-textrel.patch
@@ -0,0 +1,67 @@
+
+#
+# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
+#
+
+--- binutils-2.14.90.0.7/bfd/elf32-arm.h~600-arm-textrel 2004-09-08 12:55:41.000000000 -0500
++++ binutils-2.14.90.0.7/bfd/elf32-arm.h 2004-09-08 12:57:37.000000000 -0500
+@@ -54,6 +54,8 @@
+ static int elf32_thumb_to_arm_stub
+ PARAMS ((struct bfd_link_info *, const char *, bfd *, bfd *, asection *,
+ bfd_byte *, asection *, bfd_vma, bfd_signed_vma, bfd_vma));
++static bfd_boolean elf32_arm_readonly_dynrelocs
++ PARAMS ((struct elf_link_hash_entry *, PTR));
+ static bfd_boolean elf32_arm_relocate_section
+ PARAMS ((bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *,
+ Elf_Internal_Rela *, Elf_Internal_Sym *, asection **));
+@@ -3139,6 +3141,37 @@
+ return TRUE;
+ }
+
++/* Find any dynamic relocs that apply to read-only sections. */
++
++static bfd_boolean
++elf32_arm_readonly_dynrelocs (h, inf)
++ struct elf_link_hash_entry *h;
++ PTR inf;
++{
++ struct elf32_arm_link_hash_entry *eh;
++ struct elf32_arm_relocs_copied *p;
++
++ if (h->root.type == bfd_link_hash_warning)
++ h = (struct elf_link_hash_entry *) h->root.u.i.link;
++
++ eh = (struct elf32_arm_link_hash_entry *) h;
++ for (p = eh->relocs_copied; p != NULL; p = p->next)
++ {
++ asection *s = p->section;
++
++ if (s != NULL && (s->flags & SEC_READONLY) != 0)
++ {
++ struct bfd_link_info *info = (struct bfd_link_info *) inf;
++
++ info->flags |= DF_TEXTREL;
++
++ /* Not an error, just cut short the traversal. */
++ return FALSE;
++ }
++ }
++ return TRUE;
++}
++
+ /* Set the sizes of the dynamic sections. */
+
+ static bfd_boolean
+@@ -3297,6 +3330,12 @@
+ return FALSE;
+ }
+
++ /* If any dynamic relocs apply to a read-only section,
++ then we need a DT_TEXTREL entry. */
++ if ((info->flags & DF_TEXTREL) == 0)
++ elf_link_hash_traverse (&htab->root, elf32_arm_readonly_dynrelocs,
++ (PTR) info);
++
+ if ((info->flags & DF_TEXTREL) != 0)
+ {
+ if (!add_dynamic_entry (DT_TEXTREL, 0))
diff --git a/binutils/binutils-2.14.90.0.7/binutils-006_better_file_error.patch b/binutils/binutils-2.14.90.0.7/binutils-006_better_file_error.patch
deleted file mode 100644
index 38ef52966e..0000000000
--- a/binutils/binutils-2.14.90.0.7/binutils-006_better_file_error.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-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;
-+ }
-
- nbfd = _bfd_new_bfd ();
- if (nbfd == NULL)
diff --git a/binutils/binutils-2.14.90.0.6/plt32trunc.patch b/binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-100-conf.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.14.90.0.6/plt32trunc.patch
+++ b/binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-100-conf.patch
diff --git a/binutils/binutils-2.14.90.0.7/plt32trunc.patch b/binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-200-build_modules.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.14.90.0.7/plt32trunc.patch
+++ b/binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-200-build_modules.patch
diff --git a/binutils/binutils-2.15.90.0.3/binutils-001_ld_makefile.patch b/binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-210-cflags.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.15.90.0.3/binutils-001_ld_makefile.patch
+++ b/binutils/binutils-2.14.90.0.7/binutils-2.15.90.0.3-uclibc-210-cflags.patch
diff --git a/binutils/binutils-2.15.90.0.3/binutils-006_better_file_error.patch b/binutils/binutils-2.14.90.0.7/binutils-petypes.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.15.90.0.3/binutils-006_better_file_error.patch
+++ b/binutils/binutils-2.14.90.0.7/binutils-petypes.patch
diff --git a/binutils/binutils-2.14.90.0.7/binutils-uclibc-001-debian.patch b/binutils/binutils-2.14.90.0.7/binutils-uclibc-001-debian.patch
index e69de29bb2..e453a1a1b5 100644
--- a/binutils/binutils-2.14.90.0.7/binutils-uclibc-001-debian.patch
+++ b/binutils/binutils-2.14.90.0.7/binutils-uclibc-001-debian.patch
@@ -0,0 +1,134 @@
+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.
+
++If you use gcc 2.95.x or 3.0 to compile your binaries, you may need
++to add the @samp{-fprofile-arcs} to the compile command line in order
++for the call graphs to be properly stored in gmon.out.
++
+ @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
+@@ -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
+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");
++ if ((lib_path) && (strlen (lib_path) == 0))
++ lib_path = NULL;
+ if (gld${EMULATION_NAME}_search_needed (lib_path, l->name,
+ force))
+ break;
+@@ -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,
+ command_line.filter_shlib,
+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 $?
++ if test -n "$linkname"; then
++ $show "(cd $output_objdir && $rm ../$linkname && $LN_S $output_objdir/$linkname ../$linkname)"
++ $run eval '(cd $output_objdir && $rm ../$linkname && $LN_S $output_objdir/$linkname ../$linkname)' || exit $?
++ fi
+ ;;
+ esac
+ exit 0
+--- 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)/
+
+ 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
diff --git a/binutils/binutils-2.15.90.0.3/binutils-009_signed_char_fix.patch b/binutils/binutils-2.14.90.0.7/binutils-undefsym.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.15.90.0.3/binutils-009_signed_char_fix.patch
+++ b/binutils/binutils-2.14.90.0.7/binutils-undefsym.patch
diff --git a/binutils/binutils-2.15.90.0.3/plt32trunc.patch b/binutils/binutils-2.15.91.0.2/600-arm-textrel.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.15.90.0.3/plt32trunc.patch
+++ b/binutils/binutils-2.15.91.0.2/600-arm-textrel.patch
diff --git a/binutils/binutils-2.15.91.0.1/binutils-001_ld_makefile.patch b/binutils/binutils-2.15.91.0.2/binutils-100_cflags_for_build.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.15.91.0.1/binutils-001_ld_makefile.patch
+++ b/binutils/binutils-2.15.91.0.2/binutils-100_cflags_for_build.patch
diff --git a/binutils/binutils-2.15.91.0.1/binutils-006_better_file_error.patch b/binutils/binutils-2.15.91.0.2/binutils-2.15.90.0.3-uclibc-200-build_modules.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.15.91.0.1/binutils-006_better_file_error.patch
+++ b/binutils/binutils-2.15.91.0.2/binutils-2.15.90.0.3-uclibc-200-build_modules.patch
diff --git a/binutils/binutils-2.15.91.0.1/binutils-009_signed_char_fix.patch b/binutils/binutils-2.15.91.0.2/binutils-2.15.90.0.3-uclibc-210-cflags.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-2.15.91.0.1/binutils-009_signed_char_fix.patch
+++ b/binutils/binutils-2.15.91.0.2/binutils-2.15.90.0.3-uclibc-210-cflags.patch
diff --git a/binutils/binutils-cvs/binutils-001_ld_makefile.patch b/binutils/binutils-2.15.91.0.2/binutils-2.15.91.0.1-uclibc-100-conf.patch
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-cvs/binutils-001_ld_makefile.patch
+++ b/binutils/binutils-2.15.91.0.2/binutils-2.15.91.0.1-uclibc-100-conf.patch
diff --git a/binutils/binutils-cvs/binutils-006_better_file_error.patch b/binutils/binutils-cross-sdk_2.15.91.0.2.oe
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-cvs/binutils-006_better_file_error.patch
+++ b/binutils/binutils-cross-sdk_2.15.91.0.2.oe
diff --git a/binutils/binutils-cvs/binutils-009_signed_char_fix.patch b/binutils/binutils-cross_2.15.91.0.2.oe
index e69de29bb2..e69de29bb2 100644
--- a/binutils/binutils-cvs/binutils-009_signed_char_fix.patch
+++ b/binutils/binutils-cross_2.15.91.0.2.oe
diff --git a/binutils/binutils_2.14.90.0.6.oe b/binutils/binutils_2.14.90.0.6.oe
index 88ad697273..95330d8e87 100644
--- a/binutils/binutils_2.14.90.0.6.oe
+++ b/binutils/binutils_2.14.90.0.6.oe
@@ -35,11 +35,13 @@ FILES_${PN}-symlinks = " \
SRC_URI = \
"http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
+ file://ld_makefile.patch;patch=1 \
+ file://better_file_error.patch;patch=1 \
+ file://signed_char_fix.patch;patch=1 \
file://binutils-uclibc-001-debian.patch;patch=1 \
file://binutils-uclibc-100-conf.patch;patch=1 \
file://binutils-uclibc-200-build_modules.patch;patch=1 \
file://binutils-uclibc-210-cflags.patch;patch=1 \
- file://binutils-006_better_file_error.patch;patch=1 \
file://binutils-100_cflags_for_build.patch;patch=1 \
file://plt32trunc.patch;patch=1"
diff --git a/binutils/binutils_2.14.90.0.7.oe b/binutils/binutils_2.14.90.0.7.oe
index bbfca3a5f7..d8d7fa713a 100644
--- a/binutils/binutils_2.14.90.0.7.oe
+++ b/binutils/binutils_2.14.90.0.7.oe
@@ -36,11 +36,13 @@ FILES_${PN}-symlinks = " \
SRC_URI = \
"http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
+ file://ld_makefile.patch;patch=1 \
+ file://better_file_error.patch;patch=1 \
+ file://signed_char_fix.patch;patch=1 \
file://binutils-uclibc-001-debian.patch;patch=1 \
file://binutils-uclibc-100-conf.patch;patch=1 \
file://binutils-uclibc-200-build_modules.patch;patch=1 \
file://binutils-uclibc-210-cflags.patch;patch=1 \
- file://binutils-006_better_file_error.patch;patch=1 \
file://binutils-100_cflags_for_build.patch;patch=1 \
file://plt32trunc.patch;patch=1 \
file://600-arm-textrel.patch;patch=1"
diff --git a/binutils/binutils_2.15.90.0.3.oe b/binutils/binutils_2.15.90.0.3.oe
index d99927c8a9..a7668fe36d 100644
--- a/binutils/binutils_2.15.90.0.3.oe
+++ b/binutils/binutils_2.15.90.0.3.oe
@@ -36,9 +36,9 @@ FILES_${PN}-symlinks = " \
SRC_URI = \
"http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
- file://binutils-001_ld_makefile.patch;patch=1 \
- file://binutils-006_better_file_error.patch;patch=1 \
- file://binutils-009_signed_char_fix.patch;patch=1 \
+ file://ld_makefile.patch;patch=1 \
+ file://better_file_error.patch;patch=1 \
+ file://signed_char_fix.patch;patch=1 \
file://binutils-100_cflags_for_build.patch;patch=1 \
file://binutils-2.15.90.0.3-uclibc-100-conf.patch;patch=1 \
file://binutils-2.15.90.0.3-uclibc-200-build_modules.patch;patch=1 \
diff --git a/binutils/binutils_2.15.91.0.1.oe b/binutils/binutils_2.15.91.0.1.oe
index dcf99edf79..cf8d2b186b 100644
--- a/binutils/binutils_2.15.91.0.1.oe
+++ b/binutils/binutils_2.15.91.0.1.oe
@@ -36,9 +36,9 @@ FILES_${PN}-symlinks = " \
SRC_URI = \
"http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
- file://binutils-001_ld_makefile.patch;patch=1 \
- file://binutils-006_better_file_error.patch;patch=1 \
- file://binutils-009_signed_char_fix.patch;patch=1 \
+ file://ld_makefile.patch;patch=1 \
+ file://better_file_error.patch;patch=1 \
+ file://signed_char_fix.patch;patch=1 \
file://binutils-100_cflags_for_build.patch;patch=1 \
file://binutils-2.15.91.0.1-uclibc-100-conf.patch;patch=1 \
file://binutils-2.15.90.0.3-uclibc-200-build_modules.patch;patch=1 \
diff --git a/binutils/binutils_2.15.91.0.2.oe b/binutils/binutils_2.15.91.0.2.oe
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/binutils/binutils_2.15.91.0.2.oe
diff --git a/binutils/binutils_cvs.oe b/binutils/binutils_cvs.oe
index e69de29bb2..2c975b759f 100644
--- a/binutils/binutils_cvs.oe
+++ b/binutils/binutils_cvs.oe
@@ -0,0 +1,111 @@
+inherit autotools
+
+DESCRIPTION = "A GNU collection of binary utilities"
+LICENSE = "GPL"
+MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
+FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-cvs"
+PV = "0.0cvs${CVSDATE}"
+
+PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
+
+FILES_${PN} = " \
+ ${bindir}/${TARGET_PREFIX}* \
+ ${libdir}/lib*-*.so"
+
+FILES_${PN}-dev = " \
+ ${includedir} \
+ ${libdir}/*.a \
+ ${libdir}/*.la \
+ ${libdir}/libbfd.so \
+ ${libdir}/libopcodes.so"
+
+FILES_${PN}-symlinks = " \
+ ${bindir}/addr2line \
+ ${bindir}/ar \
+ ${bindir}/as \
+ ${bindir}/c++filt \
+ ${bindir}/gprof \
+ ${bindir}/ld \
+ ${bindir}/nm \
+ ${bindir}/objcopy \
+ ${bindir}/objdump \
+ ${bindir}/ranlib \
+ ${bindir}/readelf \
+ ${bindir}/size \
+ ${bindir}/strings \
+ ${bindir}/strip"
+
+SRC_URI = "cvs://anoncvs:anoncvs@sources.redhat.com/cvs/src;module=binutils;method=pserver;localdir=src \
+ file://ld_makefile.patch;patch=1 \
+ file://better_file_error.patch;patch=1 \
+ file://signed_char_fix.patch;patch=1 \
+ file://binutils-100_cflags_for_build.patch;patch=1 \
+ file://binutils-2.15.91.0.1-uclibc-100-conf.patch;patch=1 \
+ file://binutils-2.15.90.0.3-uclibc-200-build_modules.patch;patch=1"
+
+S = "${WORKDIR}/src"
+B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
+
+EXTRA_OECONF = "--with-sysroot=${prefix} \
+ --disable-nls \
+ --program-prefix=${TARGET_PREFIX} \
+ --enable-shared"
+
+# This is necessary due to a bug in the binutils Makefiles
+EXTRA_OEMAKE = "configure-build-libiberty all"
+
+export AR = "${HOST_PREFIX}ar"
+export AS = "${HOST_PREFIX}as"
+export LD = "${HOST_PREFIX}ld"
+export NM = "${HOST_PREFIX}nm"
+export RANLIB = "${HOST_PREFIX}ranlib"
+export OBJCOPY = "${HOST_PREFIX}objcopy"
+export OBJDUMP = "${HOST_PREFIX}objdump"
+
+export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
+export AS_FOR_TARGET = "${TARGET_PREFIX}as"
+export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
+export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
+export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
+
+export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
+export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
+
+export CC_FOR_BUILD = "${BUILD_CC}"
+
+export CC = "${CCACHE} ${HOST_PREFIX}gcc"
+
+do_configure () {
+ (cd ${S}; gnu-configize) || die "Failed to run gnu-configize"
+ oe_runconf
+}
+
+do_stage () {
+ oe_libinstall -so -a -C opcodes libopcodes ${STAGING_LIBDIR}/
+ oe_libinstall -a -C libiberty libiberty ${STAGING_LIBDIR}/
+ oe_libinstall -so -a -C bfd libbfd ${STAGING_LIBDIR}/
+ install -m 0644 ${S}/include/dis-asm.h ${STAGING_INCDIR}/
+ install -m 0644 ${S}/include/symcat.h ${STAGING_INCDIR}/
+ install -m 0644 ${S}/include/libiberty.h ${STAGING_INCDIR}/
+ install -m 0644 ${S}/include/ansidecl.h ${STAGING_INCDIR}/
+ install -m 0644 ${S}/include/bfdlink.h ${STAGING_INCDIR}/
+ install -m 0644 bfd/bfd.h ${STAGING_INCDIR}/
+}
+
+do_install () {
+ autotools_do_install
+
+ # We don't really need these, so we'll remove them...
+ rm -rf ${D}/${libdir}/ldscripts
+
+ # Install the libiberty header
+ install -m 644 ${S}/include/ansidecl.h ${D}/${includedir}
+ install -m 644 ${S}/include/libiberty.h ${D}/${includedir}
+
+ cd ${D}/${bindir}
+
+ # Symlinks for ease of running these on the native target
+ for p in ${TARGET_SYS}-* ; do
+ ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
+ done
+}
diff --git a/binutils/files/better_file_error.patch b/binutils/files/better_file_error.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/binutils/files/better_file_error.patch
diff --git a/binutils/files/ld_makefile.patch b/binutils/files/ld_makefile.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/binutils/files/ld_makefile.patch
diff --git a/binutils/files/plt32trunc.patch b/binutils/files/plt32trunc.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/binutils/files/plt32trunc.patch
diff --git a/binutils/files/signed_char_fix.patch b/binutils/files/signed_char_fix.patch
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/binutils/files/signed_char_fix.patch