Skip to contentSkip to conversation

binutils: add version 2.25

PATCH New Gustavo Zacarias 3 participants 8 messages Dec 24, 2014 – Dec 28, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 binutils: add version 2.25

---
 package/binutils/2.25/120-sh-conf.patch            |  29 +++
 .../binutils/2.25/300-001_ld_makefile_patch.patch  |  24 ++
 .../2.25/300-012_check_ldrunpath_length.patch      |  21 ++
 package/binutils/2.25/500-sysroot.patch            |  37 +++
 .../2.25/600-poison-system-directories.patch       | 276 +++++++++++++++++++++
 ...ines-search-code-for-conditional-branches.patch |  90 +++++++
 package/binutils/Config.in.host                    |   5 +
 7 files changed, 482 insertions(+)
 create mode 100644 package/binutils/2.25/120-sh-conf.patch
 create mode 100644 package/binutils/2.25/300-001_ld_makefile_patch.patch
 create mode 100644 package/binutils/2.25/300-012_check_ldrunpath_length.patch
 create mode 100644 package/binutils/2.25/500-sysroot.patch
 create mode 100644 package/binutils/2.25/600-poison-system-directories.patch
 create mode 100644 package/binutils/2.25/905-Fix-trampolines-search-code-for-conditional-branches.patch
package/binutils/2.25/120-sh-conf.patch new file +29 -0
new file mode 100644
index 0000000..ea3d1b6
@@ -0,0 +1,29 @@
+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)
+          ;;
package/binutils/2.25/300-001_ld_makefile_patch.patch new file +24 -0
new file mode 100644
index 0000000..5cb0f61
@@ -0,0 +1,24 @@
+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
package/binutils/2.25/300-012_check_ldrunpath_length.patch new file +21 -0
new file mode 100644
index 0000000..df78310
@@ -0,0 +1,21 @@
+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)
package/binutils/2.25/500-sysroot.patch new file +37 -0
new file mode 100644
index 0000000..e49c795
@@ -0,0 +1,37 @@
+Signed-off-by: Sven Rebhan <[email protected]>
+
+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))
package/binutils/2.25/600-poison-system-directories.patch new file +276 -0

276 lines not on this page · raw message

package/binutils/2.25/905-Fix-trampolines-search-code-for-conditional-branches.patch new file +90 -0

90 lines not on this page · raw message

package/binutils/Config.in.host +5 -0
index 45f604a..af046ae 100644
@@ -26,6 +26,10 @@ choice
 		depends on !BR2_avr32 && !BR2_bfin
 		bool "binutils 2.24"
 
+	config BR2_BINUTILS_VERSION_2_25
+		depends on !BR2_avr32 && !BR2_bfin
+		bool "binutils 2.25"
+
 endchoice
 
 config BR2_BINUTILS_VERSION
@@ -35,6 +39,7 @@ config BR2_BINUTILS_VERSION
 	default "2.22"		if BR2_BINUTILS_VERSION_2_22
 	default "2.23.2"	if BR2_BINUTILS_VERSION_2_23_2
 	default "2.24"		if BR2_BINUTILS_VERSION_2_24
+	default "2.25"		if BR2_BINUTILS_VERSION_2_25
 
 config BR2_BINUTILS_EXTRA_CONFIG_OPTIONS
 	string "Additional binutils options"
Signature · 1 line
2.0.4
#1 lore raw

PATCH 1/1 binutils: add version 2.25

Dear Gustavo Zacarias,

Quoted 1 line · Gustavo Zacarias

Applied, thanks.

Our default binutils version is still 2.22. I would propose to move to 2.24 as the default version. Thoughts?

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#2 lore raw

PATCH 1/1 binutils: add version 2.25

Quoted 2 lines · Thomas Petazzoni

Our default binutils version is still 2.22. I would propose to move to 2.24 as the default version. Thoughts?

2.24 has been in the tree for some time and covers all of the architectures nicely (except bfin and avr32 that's going away) so it sounds reasonable.
+1 from me.
Regards.

#3 lore raw

PATCH 1/1 binutils: add version 2.25

Dear Gustavo Zacarias,

Quoted 4 lines · Gustavo Zacarias

2.24 has been in the tree for some time and covers all of the architectures nicely (except bfin and avr32 that's going away) so it sounds reasonable.
+1 from me.

Does this means you will submit a patch for this? :-)

Thanks,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#4 lore raw

PATCH 1/1 binutils: add version 2.25

Quoted 1 line · Thomas Petazzoni

Does this means you will submit a patch for this? :-)

I'll send it as soon as the qemu tests pass (they don't take long to run, just to build).
Regards.

#5 lore raw

PATCH 1/1 binutils: add version 2.25

Quoted 7 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Gustavo" == Gustavo Zacarias <[email protected]> writes:

Quoted 1 line · Thomas Petazzoni

Does this means you will submit a patch for this? :-)

I'll send it as soon as the qemu tests pass (they don't take long to run, just to build).

Sorry, I already did so.

Signature · 1 line
Bye, Peter Korsgaard
#6 lore raw

PATCH 1/1 binutils: add version 2.25

In reply to Thomas Petazzoni
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Dear Gustavo Zacarias,

Quoted 4 lines · Gustavo Zacarias

2.24 has been in the tree for some time and covers all of the architectures nicely (except bfin and avr32 that's going away) so it sounds reasonable.
+1 from me.

Does this means you will submit a patch for this? :-)

I've committed a patch to do that.

Signature · 1 line
Bye, Peter Korsgaard
#7 lore raw

PATCH 1/1 binutils: add version 2.25

In reply to Gustavo Zacarias
Quoted 10 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Gustavo" == Gustavo Zacarias <[email protected]> writes:

Quoted 2 lines · Thomas Petazzoni

Our default binutils version is still 2.22. I would propose to move to 2.24 as the default version. Thoughts?

2.24 has been in the tree for some time and covers all of the architectures nicely (except bfin and avr32 that's going away) so it sounds reasonable.
+1 from me.

From me as well.

Signature · 1 line
Bye, Peter Korsgaard