Commit f16bf215 authored by Gustavo Zacarias's avatar Gustavo Zacarias Committed by Peter Korsgaard
Browse files

binutils: add version 2.24

parent 7af351d8
Loading
Loading
Loading
Loading
+29 −0
Original line number Diff line number Diff line
r10231 | lethal | 2005-05-02 09:58:00 -0400 (Mon, 02 May 2005) | 13 lines

Likewise, binutils has no idea about any of these new targets either, so we 
fix that up too.. now we're able to actually build a real toolchain for 
sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more 
inept targets than that one, really. Go look, I promise).

--- a/configure
+++ b/configure
@@ -1495,7 +1495,7 @@
   mips*-*-*)
     noconfigdirs="$noconfigdirs gprof"
     ;;
-  sh-*-* | sh64-*-*)
+  sh*-*-* | sh64-*-*)
     case "${target}" in
       sh*-*-elf)
          ;;
--- a/configure.ac
+++ b/configure.ac
@@ -712,7 +712,7 @@
   mips*-*-*)
     noconfigdirs="$noconfigdirs gprof"
     ;;
-  sh-*-* | sh64-*-*)
+  sh*-*-* | sh64-*-*)
     case "${target}" in
       sh*-*-elf)
          ;;
+24 −0
Original line number Diff line number Diff line
diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.am binutils-2.17.50.0.17/ld/Makefile.am
--- binutils-2.17.50.0.17.oorig/ld/Makefile.am	2007-06-18 19:29:29.000000000 +0200
+++ binutils-2.17.50.0.17/ld/Makefile.am	2007-06-25 10:00:36.000000000 +0200
@@ -18,7 +18,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@
diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.in binutils-2.17.50.0.17/ld/Makefile.in
--- binutils-2.17.50.0.17.oorig/ld/Makefile.in	2007-06-18 19:29:29.000000000 +0200
+++ binutils-2.17.50.0.17/ld/Makefile.in	2007-06-25 10:00:36.000000000 +0200
@@ -287,7 +287,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
+21 −0
Original line number Diff line number Diff line
diff -Nura binutils-2.21.orig/ld/emultempl/elf32.em binutils-2.21/ld/emultempl/elf32.em
--- binutils-2.21.orig/ld/emultempl/elf32.em	2010-10-29 09:10:36.000000000 -0300
+++ binutils-2.21/ld/emultempl/elf32.em	2010-12-10 09:26:56.746102724 -0300
@@ -1270,6 +1270,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;
@@ -1497,6 +1499,8 @@
   rpath = command_line.rpath;
   if (rpath == NULL)
     rpath = (const char *) getenv ("LD_RUN_PATH");
+  if ((rpath) && (strlen (rpath) == 0))
+  	rpath = NULL;
 
   for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next)
     if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
+37 −0
Original line number Diff line number Diff line
Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>

Always try to prepend the sysroot prefix to absolute filenames first.

http://bugs.gentoo.org/275666
http://sourceware.org/bugzilla/show_bug.cgi?id=10340

--- a/ld/ldfile.c
+++ b/ld/ldfile.c
@@ -308,18 +308,25 @@
      directory first.  */
   if (! entry->flags.maybe_archive)
     {
-      if (entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename))
+      /* For absolute pathnames, try to always open the file in the
+	 sysroot first. If this fails, try to open the file at the
+	 given location.  */
+      entry->flags.sysrooted = is_sysrooted_pathname (entry->filename);
+      if (!entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename)
+	  && ld_sysroot)
 	{
 	  char *name = concat (ld_sysroot, entry->filename,
 			       (const char *) NULL);
 	  if (ldfile_try_open_bfd (name, entry))
 	    {
 	      entry->filename = name;
+	      entry->flags.sysrooted = TRUE;
 	      return TRUE;
 	    }
 	  free (name);
 	}
-      else if (ldfile_try_open_bfd (entry->filename, entry))
+
+      if (ldfile_try_open_bfd (entry->filename, entry))
 	return TRUE;
 
       if (IS_ABSOLUTE_PATH (entry->filename))
+5 −0
Original line number Diff line number Diff line
@@ -39,6 +39,10 @@ choice
		depends on !BR2_avr32
		bool "binutils 2.23.2"

	config BR2_BINUTILS_VERSION_2_24
		depends on !BR2_avr32
		bool "binutils 2.24"

endchoice

config BR2_BINUTILS_VERSION
@@ -51,6 +55,7 @@ config BR2_BINUTILS_VERSION
	default "2.22"		if BR2_BINUTILS_VERSION_2_22
	default "2.23.1"	if BR2_BINUTILS_VERSION_2_23_1
	default "2.23.2"	if BR2_BINUTILS_VERSION_2_23_2
	default "2.24"		if BR2_BINUTILS_VERSION_2_24

config BR2_BINUTILS_EXTRA_CONFIG_OPTIONS
	string "Additional binutils options"