binutils: add support for v2.19.1 (from #4492, thanks to dwrobel)
SVN-Revision: 14393
This commit is contained in:
		@@ -18,6 +18,8 @@ choice
 | 
			
		||||
		depends !TARGET_avr32
 | 
			
		||||
		bool "binutils 2.19"
 | 
			
		||||
 | 
			
		||||
	config BINUTILS_VERSION_2_19_1
 | 
			
		||||
		bool "binutils 2.19.1"
 | 
			
		||||
endchoice
 | 
			
		||||
 | 
			
		||||
config EXTRA_BINUTILS_CONFIG_OPTIONS
 | 
			
		||||
@@ -33,6 +35,7 @@ config BINUTILS_VERSION
 | 
			
		||||
	default "2.17"            if BINUTILS_VERSION_2_17
 | 
			
		||||
	default "2.18"            if BINUTILS_VERSION_2_18
 | 
			
		||||
	default "2.19"            if BINUTILS_VERSION_2_19
 | 
			
		||||
	default "2.19.1"          if BINUTILS_VERSION_2_19_1
 | 
			
		||||
	default "2.18"            if TARGET_avr32
 | 
			
		||||
	default "2.18"            if TARGET_ppc44x || TARGET_ppc40x
 | 
			
		||||
	default "2.17"
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
# 
 | 
			
		||||
# Copyright (C) 2006-2008 OpenWrt.org
 | 
			
		||||
# Copyright (C) 2006-2009 OpenWrt.org
 | 
			
		||||
#
 | 
			
		||||
# This is free software, licensed under the GNU General Public License v2.
 | 
			
		||||
# See /LICENSE for more information.
 | 
			
		||||
@@ -21,6 +21,9 @@ endif
 | 
			
		||||
ifeq ($(PKG_VERSION),2.19)
 | 
			
		||||
  PKG_MD5SUM:=17a52219dee5a76c1a9d9b0bfd337d66
 | 
			
		||||
endif
 | 
			
		||||
ifeq ($(PKG_VERSION),2.19.1)
 | 
			
		||||
  PKG_MD5SUM:=09a8c5821a2dfdbb20665bc0bd680791
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
PATCH_DIR:=./patches/$(PKG_VERSION)
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										22
									
								
								toolchain/binutils/patches/2.19.1/110-arm-eabi-conf.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								toolchain/binutils/patches/2.19.1/110-arm-eabi-conf.patch
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
--- a/configure
 | 
			
		||||
+++ b/configure
 | 
			
		||||
@@ -2313,7 +2313,7 @@ case "${target}" in
 | 
			
		||||
     noconfigdirs="$noconfigdirs target-libffi target-qthreads"
 | 
			
		||||
     libgloss_dir=arm
 | 
			
		||||
     ;;
 | 
			
		||||
-  arm*-*-linux-gnueabi)
 | 
			
		||||
+  arm*-*-linux-*gnueabi)
 | 
			
		||||
     noconfigdirs="$noconfigdirs target-qthreads"
 | 
			
		||||
     case ${with_newlib} in
 | 
			
		||||
       no) noconfigdirs="$noconfigdirs target-newlib target-libgloss"
 | 
			
		||||
--- a/configure.ac
 | 
			
		||||
+++ b/configure.ac
 | 
			
		||||
@@ -562,7 +562,7 @@ case "${target}" in
 | 
			
		||||
     noconfigdirs="$noconfigdirs target-libffi target-qthreads"
 | 
			
		||||
     libgloss_dir=arm
 | 
			
		||||
     ;;
 | 
			
		||||
-  arm*-*-linux-gnueabi)
 | 
			
		||||
+  arm*-*-linux-*gnueabi)
 | 
			
		||||
     noconfigdirs="$noconfigdirs target-qthreads"
 | 
			
		||||
     case ${with_newlib} in
 | 
			
		||||
       no) noconfigdirs="$noconfigdirs target-newlib target-libgloss"
 | 
			
		||||
							
								
								
									
										40
									
								
								toolchain/binutils/patches/2.19.1/120-sh-conf.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								toolchain/binutils/patches/2.19.1/120-sh-conf.patch
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,40 @@
 | 
			
		||||
--- a/configure
 | 
			
		||||
+++ b/configure
 | 
			
		||||
@@ -2281,7 +2281,7 @@ case "${target}" in
 | 
			
		||||
   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)
 | 
			
		||||
@@ -2606,7 +2606,7 @@ case "${target}" in
 | 
			
		||||
   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
 | 
			
		||||
--- a/configure.ac
 | 
			
		||||
+++ b/configure.ac
 | 
			
		||||
@@ -530,7 +530,7 @@ case "${target}" in
 | 
			
		||||
   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)
 | 
			
		||||
@@ -855,7 +855,7 @@ case "${target}" in
 | 
			
		||||
   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
 | 
			
		||||
@@ -0,0 +1,22 @@
 | 
			
		||||
--- a/ld/Makefile.am
 | 
			
		||||
+++ b/ld/Makefile.am
 | 
			
		||||
@@ -18,7 +18,7 @@ AM_CFLAGS = $(WARN_CFLAGS)
 | 
			
		||||
 # 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@
 | 
			
		||||
--- a/ld/Makefile.in
 | 
			
		||||
+++ b/ld/Makefile.in
 | 
			
		||||
@@ -291,7 +291,7 @@ AM_CFLAGS = $(WARN_CFLAGS)
 | 
			
		||||
 # 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
 | 
			
		||||
@@ -0,0 +1,20 @@
 | 
			
		||||
--- a/ld/emultempl/elf32.em
 | 
			
		||||
+++ b/ld/emultempl/elf32.em
 | 
			
		||||
@@ -1219,6 +1219,8 @@ fragment <<EOF
 | 
			
		||||
 	      && 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;
 | 
			
		||||
@@ -1404,6 +1406,8 @@ gld${EMULATION_NAME}_before_allocation (
 | 
			
		||||
   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
 | 
			
		||||
 	 (link_info.output_bfd, command_line.soname, rpath,
 | 
			
		||||
 	  command_line.filter_shlib,
 | 
			
		||||
		Reference in New Issue
	
	Block a user