diff options
6 files changed, 308 insertions, 0 deletions
| diff --git a/toolchain/binutils/2.17.50.0.6/100-uclibc-conf.patch b/toolchain/binutils/2.17.50.0.6/100-uclibc-conf.patch new file mode 100644 index 000000000..25222e5df --- /dev/null +++ b/toolchain/binutils/2.17.50.0.6/100-uclibc-conf.patch @@ -0,0 +1,139 @@ +--- binutils-2.16.91.0.7/bfd/configure ++++ binutils-2.16.91.0.7/bfd/configure +@@ -3576,7 +3576,7 @@ +   ;; +  + # This must be Linux ELF. +-linux-gnu*) ++linux-gnu*|linux-uclibc*) +   lt_cv_deplibs_check_method=pass_all +   ;; +  +--- binutils-2.16.91.0.7/binutils/configure ++++ binutils-2.16.91.0.7/binutils/configure +@@ -3411,7 +3411,7 @@ +   ;; +  + # This must be Linux ELF. +-linux-gnu*) ++linux-gnu*|linux-uclibc*) +   lt_cv_deplibs_check_method=pass_all +   ;; +  +--- binutils-2.16.91.0.7/configure ++++ binutils-2.16.91.0.7/configure +@@ -1270,7 +1270,7 @@ +   am33_2.0-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;; +-  sh-*-linux*) ++  sh*-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;;     +   sh*-*-pe|mips*-*-pe|*arm-wince-pe) +@@ -1578,7 +1578,7 @@ +   romp-*-*) +     noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" +     ;; +-  sh-*-* | sh64-*-*) ++  sh*-*-* | sh64-*-*) +     case "${host}" in +       i[3456789]86-*-vsta) ;; # don't add gprof back in +       i[3456789]86-*-go32*) ;; # don't add gprof back in +--- binutils-2.16.91.0.7/configure.in ++++ binutils-2.16.91.0.7/configure.in +@@ -468,7 +468,7 @@ +   am33_2.0-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;; +-  sh-*-linux*) ++  sh*-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;;     +   sh*-*-pe|mips*-*-pe|*arm-wince-pe) +@@ -776,7 +776,7 @@ +   romp-*-*) +     noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" +     ;; +-  sh-*-* | sh64-*-*) ++  sh*-*-* | sh64-*-*) +     case "${host}" in +       i[[3456789]]86-*-vsta) ;; # don't add gprof back in +       i[[3456789]]86-*-go32*) ;; # don't add gprof back in +--- binutils-2.16.91.0.7/gas/configure ++++ binutils-2.16.91.0.7/gas/configure +@@ -3411,7 +3411,7 @@ +   ;; +  + # This must be Linux ELF. +-linux-gnu*) ++linux-gnu*|linux-uclibc*) +   lt_cv_deplibs_check_method=pass_all +   ;; +  +--- binutils-2.16.91.0.7/gprof/configure ++++ binutils-2.16.91.0.7/gprof/configure +@@ -3419,6 +3419,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* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +--- binutils-2.16.91.0.7/ld/configure ++++ binutils-2.16.91.0.7/ld/configure +@@ -3413,7 +3413,7 @@ +   ;; +  + # This must be Linux ELF. +-linux-gnu*) ++linux-gnu*|linux-uclibc*) +   lt_cv_deplibs_check_method=pass_all +   ;; +  +--- binutils-2.16.91.0.7/libtool.m4 ++++ binutils-2.16.91.0.7/libtool.m4 +@@ -739,7 +739,7 @@ +   ;; +  + # This must be Linux ELF. +-linux-gnu*) ++linux-gnu*|linux-uclibc*) +   lt_cv_deplibs_check_method=pass_all +   ;; +  +--- binutils-2.16.91.0.7/ltconfig ++++ binutils-2.16.91.0.7/ltconfig +@@ -602,6 +602,7 @@ +  + # Transform linux* to *-*-linux-gnu*, to support old configure scripts. + case $host_os in ++linux-uclibc*) ;; + linux-gnu*) ;; + linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` + esac +@@ -1247,7 +1248,7 @@ +   ;; +  + # This must be Linux ELF. +-linux-gnu*) ++linux-gnu*|linux-uclibc*) +   version_type=linux +   need_lib_prefix=no +   need_version=no +--- binutils-2.16.91.0.7/opcodes/configure ++++ binutils-2.16.91.0.7/opcodes/configure +@@ -3579,7 +3579,7 @@ +   ;; +  + # This must be Linux ELF. +-linux-gnu*) ++linux-gnu*|linux-uclibc*) +   lt_cv_deplibs_check_method=pass_all +   ;; +  diff --git a/toolchain/binutils/2.17.50.0.6/110-arm-eabi-conf.patch b/toolchain/binutils/2.17.50.0.6/110-arm-eabi-conf.patch new file mode 100644 index 000000000..be85ceb10 --- /dev/null +++ b/toolchain/binutils/2.17.50.0.6/110-arm-eabi-conf.patch @@ -0,0 +1,24 @@ +diff -urN binutils-2.16.91.0.7.orig/configure binutils-2.16.91.0.7/configure +--- binutils-2.16.91.0.7.orig/configure	2006-05-31 14:54:24.000000000 +0300 ++++ binutils-2.16.91.0.7/configure	2006-05-31 14:55:53.000000000 +0300 +@@ -1299,7 +1299,7 @@ +   arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* ) +     noconfigdirs="$noconfigdirs target-libffi target-qthreads" +     ;; +-  arm*-*-linux-gnueabi) ++  arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi) +     noconfigdirs="$noconfigdirs target-libffi target-qthreads" +     noconfigdirs="$noconfigdirs target-libjava target-libobjc" +     ;; +diff -urN binutils-2.16.91.0.7.orig/configure.in binutils-2.16.91.0.7/configure.in +--- binutils-2.16.91.0.7.orig/configure.in	2006-05-31 14:54:24.000000000 +0300 ++++ binutils-2.16.91.0.7/configure.in	2006-05-31 14:55:53.000000000 +0300 +@@ -497,7 +497,7 @@ +   arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* ) +     noconfigdirs="$noconfigdirs target-libffi target-qthreads" +     ;; +-  arm*-*-linux-gnueabi) ++  arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi) +     noconfigdirs="$noconfigdirs target-libffi target-qthreads" +     noconfigdirs="$noconfigdirs target-libjava target-libobjc" +     ;; diff --git a/toolchain/binutils/2.17.50.0.6/300-001_ld_makefile_patch.patch b/toolchain/binutils/2.17.50.0.6/300-001_ld_makefile_patch.patch new file mode 100644 index 000000000..04a7e61e2 --- /dev/null +++ b/toolchain/binutils/2.17.50.0.6/300-001_ld_makefile_patch.patch @@ -0,0 +1,50 @@ +#!/bin/sh -e +## 001_ld_makefile_patch.dpatch +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: correct where ld scripts are installed +## DP: Author: Chris Chimelis <chris@debian.org> +## DP: Upstream status: N/A +## DP: Date: ?? + +if [ $# -ne 1 ]; then +    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +    exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in +       -patch) patch $patch_opts -p1 < $0;; +       -unpatch) patch $patch_opts -p1 -R < $0;; +        *) +                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +                exit 1;; +esac + +exit 0 + +@DPATCH@ +--- binutils-2.16.91.0.1/ld/Makefile.am ++++ binutils-2.16.91.0.1/ld/Makefile.am +@@ -20,7 +20,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) +  + EMUL = @EMUL@ + EMULATION_OFILES = @EMULATION_OFILES@ +--- binutils-2.16.91.0.1/ld/Makefile.in ++++ binutils-2.16.91.0.1/ld/Makefile.in +@@ -268,7 +268,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) + BASEDIR = $(srcdir)/.. + BFDDIR = $(BASEDIR)/bfd + INCDIR = $(BASEDIR)/include diff --git a/toolchain/binutils/2.17.50.0.6/300-006_better_file_error.patch b/toolchain/binutils/2.17.50.0.6/300-006_better_file_error.patch new file mode 100644 index 000000000..f337611ed --- /dev/null +++ b/toolchain/binutils/2.17.50.0.6/300-006_better_file_error.patch @@ -0,0 +1,43 @@ +#!/bin/sh -e +## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Specify which filename is causing an error if the filename is a +## DP: directory. (#45832) + +if [ $# -ne 1 ]; then +    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +    exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in +       -patch) patch $patch_opts -p1 < $0;; +       -unpatch) patch $patch_opts -p1 -R < $0;; +        *) +                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +                exit 1;; +esac + +exit 0 + +@DPATCH@ +diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c +--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c	2003-07-23 16:08:09.000000000 +0100 ++++ binutils-2.14.90.0.6/bfd/opncls.c	2003-09-10 22:35:00.000000000 +0100 +@@ -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; ++    } +  +   nbfd = _bfd_new_bfd (); +   if (nbfd == NULL) diff --git a/toolchain/binutils/2.17.50.0.6/300-012_check_ldrunpath_length.patch b/toolchain/binutils/2.17.50.0.6/300-012_check_ldrunpath_length.patch new file mode 100644 index 000000000..498651a90 --- /dev/null +++ b/toolchain/binutils/2.17.50.0.6/300-012_check_ldrunpath_length.patch @@ -0,0 +1,47 @@ +#!/bin/sh -e +## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for +## DP: cases where -rpath isn't specified. (#151024) + +if [ $# -ne 1 ]; then +    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +    exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in +       -patch) patch $patch_opts -p1 < $0;; +       -unpatch) patch $patch_opts -p1 -R < $0;; +        *) +                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +                exit 1;; +esac + +exit 0 + +@DPATCH@ +diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em +--- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em	2004-05-21 23:12:58.000000000 +0100 ++++ binutils-2.15/ld/emultempl/elf32.em	2004-05-21 23:12:59.000000000 +0100 +@@ -692,6 +692,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, &n, + 						      force)) + 		break; +@@ -871,6 +873,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_size_dynamic_sections + 	 (output_bfd, command_line.soname, rpath, + 	  command_line.filter_shlib, diff --git a/toolchain/binutils/Config.in b/toolchain/binutils/Config.in index 526f88818..b59bed56c 100644 --- a/toolchain/binutils/Config.in +++ b/toolchain/binutils/Config.in @@ -59,6 +59,10 @@ choice  		depends !BR2_nios2  		bool "binutils 2.17.50.0.5" +	config BR2_BINUTILS_VERSION_2_17_50_0_6 +		depends !BR2_nios2 +		bool "binutils 2.17.50.0.6" +  endchoice  config BR2_BINUTILS_VERSION @@ -76,6 +80,7 @@ config BR2_BINUTILS_VERSION  	default "2.17.50.0.3"     if BR2_BINUTILS_VERSION_2_17_50_0_3  	default "2.17.50.0.4"     if BR2_BINUTILS_VERSION_2_17_50_0_4  	default "2.17.50.0.5"     if BR2_BINUTILS_VERSION_2_17_50_0_5 +	default "2.17.50.0.6"     if BR2_BINUTILS_VERSION_2_17_50_0_6  config BR2_EXTRA_BINUTILS_CONFIG_OPTIONS  	string "Additional binutils options" | 
