[PATCH] toolchain/binutils: remove versions 2.29.1 and 2.31.1

Adrian Schmutzler freifunk at adrianschmutzler.de
Wed Jul 29 11:26:08 EDT 2020


We currently support four versions of binutils in parallel. Let's
just keep the latest two and drop the older ones before the next
one comes around.

Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
 toolchain/binutils/Config.in                  |  10 -
 toolchain/binutils/Config.version             |   8 -
 toolchain/binutils/Makefile                   |   8 -
 .../2.29.1/300-001_ld_makefile_patch.patch    |  22 --
 .../300-012_check_ldrunpath_length.patch      |  20 --
 .../400-mips_no_dynamic_linking_sym.patch     |  18 --
 ...e-default-emulation-for-mips64-linux.patch |  37 ---
 ...nment_expressions_in_output_sections.patch | 276 ------------------
 .../2.31.1/300-001_ld_makefile_patch.patch    |  22 --
 .../300-012_check_ldrunpath_length.patch      |  20 --
 .../400-mips_no_dynamic_linking_sym.patch     |  18 --
 ...e-default-emulation-for-mips64-linux.patch |  37 ---
 12 files changed, 496 deletions(-)
 delete mode 100644 toolchain/binutils/patches/2.29.1/300-001_ld_makefile_patch.patch
 delete mode 100644 toolchain/binutils/patches/2.29.1/300-012_check_ldrunpath_length.patch
 delete mode 100644 toolchain/binutils/patches/2.29.1/400-mips_no_dynamic_linking_sym.patch
 delete mode 100644 toolchain/binutils/patches/2.29.1/500-Change-default-emulation-for-mips64-linux.patch
 delete mode 100644 toolchain/binutils/patches/2.31.1/100-delay_evaluation_of_alignment_expressions_in_output_sections.patch
 delete mode 100644 toolchain/binutils/patches/2.31.1/300-001_ld_makefile_patch.patch
 delete mode 100644 toolchain/binutils/patches/2.31.1/300-012_check_ldrunpath_length.patch
 delete mode 100644 toolchain/binutils/patches/2.31.1/400-mips_no_dynamic_linking_sym.patch
 delete mode 100644 toolchain/binutils/patches/2.31.1/500-Change-default-emulation-for-mips64-linux.patch

diff --git a/toolchain/binutils/Config.in b/toolchain/binutils/Config.in
index e9b2d30422..9d77137f4b 100644
--- a/toolchain/binutils/Config.in
+++ b/toolchain/binutils/Config.in
@@ -6,16 +6,6 @@ choice
 	help
 	  Select the version of binutils you wish to use.
 
-	config BINUTILS_USE_VERSION_2_29_1
-		depends on !arc
-		bool "Binutils 2.29.1"
-		select BINUTILS_VERSION_2_29_1
-
-	config BINUTILS_USE_VERSION_2_31_1
-		depends on !arc
-		bool "Binutils 2.31.1"
-		select BINUTILS_VERSION_2_31_1
-
 	config BINUTILS_USE_VERSION_2_32
 		bool "Binutils 2.32"
 		select BINUTILS_VERSION_2_32
diff --git a/toolchain/binutils/Config.version b/toolchain/binutils/Config.version
index e7924f89c3..5350b546a6 100644
--- a/toolchain/binutils/Config.version
+++ b/toolchain/binutils/Config.version
@@ -1,9 +1,3 @@
-config BINUTILS_VERSION_2_29_1
-	bool
-
-config BINUTILS_VERSION_2_31_1
-	bool
-
 config BINUTILS_VERSION_2_32
 	bool
 
@@ -13,7 +7,5 @@ config BINUTILS_VERSION_2_34
 
 config BINUTILS_VERSION
 	string
-	default "2.29.1"		if BINUTILS_VERSION_2_29_1
-	default "2.31.1"		if BINUTILS_VERSION_2_31_1
 	default "2.32"			if BINUTILS_VERSION_2_32
 	default "2.34"			if BINUTILS_VERSION_2_34
diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile
index c5c8bf588c..b5e121a442 100644
--- a/toolchain/binutils/Makefile
+++ b/toolchain/binutils/Makefile
@@ -15,14 +15,6 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 
 TAR_OPTIONS += --exclude='*.rej'
 
-ifeq ($(PKG_VERSION),2.29.1)
-  PKG_HASH:=e7010a46969f9d3e53b650a518663f98a5dde3c3ae21b7d71e5e6803bc36b577
-endif
-
-ifeq ($(PKG_VERSION),2.31.1)
-  PKG_HASH:=5d20086ecf5752cc7d9134246e9588fa201740d540f7eb84d795b1f7a93bca86
-endif
-
 ifeq ($(PKG_VERSION),2.32)
   PKG_HASH:=0ab6c55dd86a92ed561972ba15b9b70a8b9f75557f896446c82e8b36e473ee04
 endif
diff --git a/toolchain/binutils/patches/2.29.1/300-001_ld_makefile_patch.patch b/toolchain/binutils/patches/2.29.1/300-001_ld_makefile_patch.patch
deleted file mode 100644
index 4365197f74..0000000000
--- a/toolchain/binutils/patches/2.29.1/300-001_ld_makefile_patch.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/ld/Makefile.am
-+++ b/ld/Makefile.am
-@@ -57,7 +57,7 @@ endif
- # 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
-@@ -446,7 +446,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
- # 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/patches/2.29.1/300-012_check_ldrunpath_length.patch b/toolchain/binutils/patches/2.29.1/300-012_check_ldrunpath_length.patch
deleted file mode 100644
index 0b02c55978..0000000000
--- a/toolchain/binutils/patches/2.29.1/300-012_check_ldrunpath_length.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/ld/emultempl/elf32.em
-+++ b/ld/emultempl/elf32.em
-@@ -1463,6 +1463,8 @@ fragment <<EOF
- 	      && command_line.rpath == NULL)
- 	    {
- 	      path = (const char *) getenv ("LD_RUN_PATH");
-+	      if ((path) && (strlen (path) == 0))
-+	      	path = NULL;
- 	      if (path
- 		  && gld${EMULATION_NAME}_search_needed (path, &n, force))
- 		break;
-@@ -1740,6 +1742,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;
- 
-   for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
-     if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
diff --git a/toolchain/binutils/patches/2.29.1/400-mips_no_dynamic_linking_sym.patch b/toolchain/binutils/patches/2.29.1/400-mips_no_dynamic_linking_sym.patch
deleted file mode 100644
index a28e9348a3..0000000000
--- a/toolchain/binutils/patches/2.29.1/400-mips_no_dynamic_linking_sym.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/bfd/elfxx-mips.c
-+++ b/bfd/elfxx-mips.c
-@@ -7871,6 +7871,7 @@ _bfd_mips_elf_create_dynamic_sections (b
- 
-       name = SGI_COMPAT (abfd) ? "_DYNAMIC_LINK" : "_DYNAMIC_LINKING";
-       bh = NULL;
-+      if (0) {
-       if (!(_bfd_generic_link_add_one_symbol
- 	    (info, abfd, name, BSF_GLOBAL, bfd_abs_section_ptr, 0,
- 	     NULL, FALSE, get_elf_backend_data (abfd)->collect, &bh)))
-@@ -7883,6 +7884,7 @@ _bfd_mips_elf_create_dynamic_sections (b
- 
-       if (! bfd_elf_link_record_dynamic_symbol (info, h))
- 	return FALSE;
-+      }
- 
-       if (! mips_elf_hash_table (info)->use_rld_obj_head)
- 	{
diff --git a/toolchain/binutils/patches/2.29.1/500-Change-default-emulation-for-mips64-linux.patch b/toolchain/binutils/patches/2.29.1/500-Change-default-emulation-for-mips64-linux.patch
deleted file mode 100644
index 53d5b5ac5a..0000000000
--- a/toolchain/binutils/patches/2.29.1/500-Change-default-emulation-for-mips64-linux.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/bfd/config.bfd
-+++ b/bfd/config.bfd
-@@ -1186,12 +1186,12 @@ case "${targ}" in
-     targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
-     ;;
-   mips64*el-*-linux*)
--    targ_defvec=mips_elf32_ntrad_le_vec
--    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec"
-+    targ_defvec=mips_elf64_trad_le_vec
-+    targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_be_vec"
-     ;;
-   mips64*-*-linux*)
--    targ_defvec=mips_elf32_ntrad_be_vec
--    targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec"
-+    targ_defvec=mips_elf64_trad_be_vec
-+    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec"
-     ;;
-   mips*el-*-linux*)
-     targ_defvec=mips_elf32_trad_le_vec
---- a/ld/configure.tgt
-+++ b/ld/configure.tgt
-@@ -530,11 +530,11 @@ mips*el-*-vxworks*)	targ_emul=elf32elmip
- mips*-*-vxworks*)	targ_emul=elf32ebmipvxworks
- 		        targ_extra_emuls="elf32elmipvxworks" ;;
- mips*-*-windiss)	targ_emul=elf32mipswindiss ;;
--mips64*el-*-linux-*)	targ_emul=elf32ltsmipn32
--			targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
-+mips64*el-*-linux-*)	targ_emul=elf64ltsmip
-+			targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip"
- 			targ_extra_libpath=$targ_extra_emuls ;;
--mips64*-*-linux-*)	targ_emul=elf32btsmipn32
--			targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
-+mips64*-*-linux-*)	targ_emul=elf64btsmip
-+			targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip"
- 			targ_extra_libpath=$targ_extra_emuls ;;
- mips*el-*-linux-*)	targ_emul=elf32ltsmip
- 			targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
diff --git a/toolchain/binutils/patches/2.31.1/100-delay_evaluation_of_alignment_expressions_in_output_sections.patch b/toolchain/binutils/patches/2.31.1/100-delay_evaluation_of_alignment_expressions_in_output_sections.patch
deleted file mode 100644
index c006c94af6..0000000000
--- a/toolchain/binutils/patches/2.31.1/100-delay_evaluation_of_alignment_expressions_in_output_sections.patch
+++ /dev/null
@@ -1,276 +0,0 @@
-From 3d9c8f6b3f033a6092425b7344647fb51dbed5c6 Mon Sep 17 00:00:00 2001
-From: Alan Modra <amodra at gmail.com>
-Date: Sun, 26 Aug 2018 14:23:38 +0930
-Subject: [PATCH] Delay evaluation of alignment expressions in output sections
-
-git commit 702d16713 broke expressions using CONSTANT(COMMONPAGESIZE)
-in ALIGN or SUBALIGN of output section statements, because these
-optional fields were evaluated at script parse time and the patch in
-question delayed setting of config.commonpagesize.  The right thing to
-do is keep the tree representation of those fields for later
-evaluation.
-
-	PR 23571
-	* ldlang.h (section_alignment): Make it an expression tree.
-	(subsection_alignment): Likewise.
-	* ldlang.c (topower): Delete.
-	(output_section_statement_newfunc): Adjust initialization.
-	(init_os): Evaluate section_alignment.
-	(lang_size_sections_1): Likewise.
-	(size_input_section): Evaluate subsection_alignment.
-	(lang_enter_output_section_statement): Don't evaluate here.
-	(lang_new_phdr): Use exp_get_vma rather than exp_get_value_int.
-	* ldexp.h (exp_get_value_int): Delete.
-	(exp_get_power): Declare.
-	* ldexp.c (exp_get_value_int): Delete.
-	(exp_get_power): New function.
-	* emultempl/pe.em (place_orphan): Build expression for section
-	alignment.
-	* emultempl/pep.em (place_orphan): Likewise.
-	* testsuite/ld-scripts/pr23571.d,
-	* testsuite/ld-scripts/pr23571.t: New test.
-	* testsuite/ld-scripts/align.exp: Run it.
----
- ld/ChangeLog                      | 23 +++++++++++++++++++
- ld/emultempl/pe.em                |  2 +-
- ld/emultempl/pep.em               |  2 +-
- ld/ldexp.c                        | 20 ++++++++++++++--
- ld/ldexp.h                        |  4 ++--
- ld/ldlang.c                       | 48 +++++++++++++--------------------------
- ld/ldlang.h                       |  4 ++--
- ld/testsuite/ld-scripts/align.exp |  4 ++++
- ld/testsuite/ld-scripts/pr23571.d | 10 ++++++++
- ld/testsuite/ld-scripts/pr23571.t | 11 +++++++++
- 10 files changed, 88 insertions(+), 40 deletions(-)
- create mode 100644 ld/testsuite/ld-scripts/pr23571.d
- create mode 100644 ld/testsuite/ld-scripts/pr23571.t
-
---- a/ld/emultempl/pe.em
-+++ b/ld/emultempl/pe.em
-@@ -2165,7 +2165,7 @@ gld_${EMULATION_NAME}_place_orphan (asec
- 			       &add_child);
-       if (bfd_link_relocatable (&link_info))
- 	{
--	  os->section_alignment = s->alignment_power;
-+	  os->section_alignment = exp_intop (1U << s->alignment_power);
- 	  os->bfd_section->alignment_power = s->alignment_power;
- 	}
-     }
---- a/ld/emultempl/pep.em
-+++ b/ld/emultempl/pep.em
-@@ -1962,7 +1962,7 @@ gld_${EMULATION_NAME}_place_orphan (asec
- 			       &add_child);
-       if (bfd_link_relocatable (&link_info))
- 	{
--	  os->section_alignment = s->alignment_power;
-+	  os->section_alignment = exp_intop (1U << s->alignment_power);
- 	  os->bfd_section->alignment_power = s->alignment_power;
- 	}
-     }
---- a/ld/ldexp.c
-+++ b/ld/ldexp.c
-@@ -1522,10 +1522,26 @@ exp_get_vma (etree_type *tree, bfd_vma d
-   return def;
- }
- 
-+/* Return the smallest non-negative integer such that two raised to
-+   that power is at least as large as the vma evaluated at TREE, if
-+   TREE is a non-NULL expression that can be resolved.  If TREE is
-+   NULL or cannot be resolved, return -1.  */
-+
- int
--exp_get_value_int (etree_type *tree, int def, char *name)
-+exp_get_power (etree_type *tree, char *name)
- {
--  return exp_get_vma (tree, def, name);
-+  bfd_vma x = exp_get_vma (tree, -1, name);
-+  bfd_vma p2;
-+  int n;
-+
-+  if (x == (bfd_vma) -1)
-+    return -1;
-+
-+  for (n = 0, p2 = 1; p2 < x; ++n, p2 <<= 1)
-+    if (p2 == 0)
-+      break;
-+
-+  return n;
- }
- 
- fill_type *
---- a/ld/ldexp.h
-+++ b/ld/ldexp.h
-@@ -229,8 +229,8 @@ void exp_print_tree
-   (etree_type *);
- bfd_vma exp_get_vma
-   (etree_type *, bfd_vma, char *);
--int exp_get_value_int
--  (etree_type *, int, char *);
-+int exp_get_power
-+  (etree_type *, char *);
- fill_type *exp_get_fill
-   (etree_type *, fill_type *, char *);
- bfd_vma exp_get_abs_int
---- a/ld/ldlang.c
-+++ b/ld/ldlang.c
-@@ -1199,8 +1199,8 @@ output_section_statement_newfunc (struct
-   ret = (struct out_section_hash_entry *) entry;
-   memset (&ret->s, 0, sizeof (ret->s));
-   ret->s.header.type = lang_output_section_statement_enum;
--  ret->s.output_section_statement.subsection_alignment = -1;
--  ret->s.output_section_statement.section_alignment = -1;
-+  ret->s.output_section_statement.subsection_alignment = NULL;
-+  ret->s.output_section_statement.section_alignment = NULL;
-   ret->s.output_section_statement.block_value = 1;
-   lang_list_init (&ret->s.output_section_statement.children);
-   lang_statement_append (stat_ptr, &ret->s, &ret->s.header.next);
-@@ -2193,8 +2193,9 @@ init_os (lang_output_section_statement_t
-     exp_init_os (s->load_base);
- 
-   /* If supplied an alignment, set it.  */
--  if (s->section_alignment != -1)
--    s->bfd_section->alignment_power = s->section_alignment;
-+  if (s->section_alignment != NULL)
-+    s->bfd_section->alignment_power = exp_get_power (s->section_alignment,
-+						     "section alignment");
- }
- 
- /* Make sure that all output sections mentioned in an expression are
-@@ -4706,8 +4707,10 @@ size_input_section
- 	 is greater than any seen before, then record it too.  Perform
- 	 the alignment by inserting a magic 'padding' statement.  */
- 
--      if (output_section_statement->subsection_alignment != -1)
--	i->alignment_power = output_section_statement->subsection_alignment;
-+      if (output_section_statement->subsection_alignment != NULL)
-+	i->alignment_power
-+	  = exp_get_power (output_section_statement->subsection_alignment,
-+			   "subsection alignment");
- 
-       if (o->alignment_power < i->alignment_power)
- 	o->alignment_power = i->alignment_power;
-@@ -5147,7 +5150,8 @@ lang_size_sections_1
- 		    section_alignment = os->bfd_section->alignment_power;
- 		  }
- 		else
--		  section_alignment = os->section_alignment;
-+		  section_alignment = exp_get_power (os->section_alignment,
-+						     "section alignment");
- 
- 		/* Align to what the section needs.  */
- 		if (section_alignment > 0)
-@@ -5225,7 +5229,8 @@ lang_size_sections_1
- 		       only align according to the value in the output
- 		       statement.  */
- 		    if (os->lma_region != os->region)
--		      section_alignment = os->section_alignment;
-+		      section_alignment = exp_get_power (os->section_alignment,
-+							 "section alignment");
- 		    if (section_alignment > 0)
- 		      lma = align_power (lma, section_alignment);
- 		  }
-@@ -6673,25 +6678,6 @@ lang_add_output (const char *name, int f
-     }
- }
- 
--static int
--topower (int x)
--{
--  unsigned int i = 1;
--  int l;
--
--  if (x < 0)
--    return -1;
--
--  for (l = 0; l < 32; l++)
--    {
--      if (i >= (unsigned int) x)
--	return l;
--      i <<= 1;
--    }
--
--  return 0;
--}
--
- lang_output_section_statement_type *
- lang_enter_output_section_statement (const char *output_section_statement_name,
- 				     etree_type *address_exp,
-@@ -6727,10 +6713,8 @@ lang_enter_output_section_statement (con
-     einfo (_("%F%P:%pS: error: align with input and explicit align specified\n"),
- 	   NULL);
- 
--  os->subsection_alignment =
--    topower (exp_get_value_int (subalign, -1, "subsection alignment"));
--  os->section_alignment =
--    topower (exp_get_value_int (align, -1, "section alignment"));
-+  os->subsection_alignment = subalign;
-+  os->section_alignment = align;
- 
-   os->load_base = ebase;
-   return os;
-@@ -7748,7 +7732,7 @@ lang_new_phdr (const char *name,
-   n = (struct lang_phdr *) stat_alloc (sizeof (struct lang_phdr));
-   n->next = NULL;
-   n->name = name;
--  n->type = exp_get_value_int (type, 0, "program header type");
-+  n->type = exp_get_vma (type, 0, "program header type");
-   n->filehdr = filehdr;
-   n->phdrs = phdrs;
-   n->at = at;
---- a/ld/ldlang.h
-+++ b/ld/ldlang.h
-@@ -143,6 +143,8 @@ typedef struct lang_output_section_state
-   fill_type *fill;
-   union etree_union *addr_tree;
-   union etree_union *load_base;
-+  union etree_union *section_alignment;
-+  union etree_union *subsection_alignment;
- 
-   /* If non-null, an expression to evaluate after setting the section's
-      size.  The expression is evaluated inside REGION (above) with '.'
-@@ -153,8 +155,6 @@ typedef struct lang_output_section_state
-   lang_output_section_phdr_list *phdrs;
- 
-   unsigned int block_value;
--  int subsection_alignment;	/* Alignment of components.  */
--  int section_alignment;	/* Alignment of start of section.  */
-   int constraint;
-   flagword flags;
-   enum section_type sectype;
---- a/ld/testsuite/ld-scripts/align.exp
-+++ b/ld/testsuite/ld-scripts/align.exp
-@@ -53,3 +53,7 @@ if ![is_aout_format] {
- }
- run_dump_test align2c
- set LDFLAGS "$saved_LDFLAGS"
-+
-+if { [is_elf_format] && ![is_generic_elf] } {
-+    run_dump_test pr23571
-+}
---- /dev/null
-+++ b/ld/testsuite/ld-scripts/pr23571.d
-@@ -0,0 +1,10 @@
-+#source: align2a.s
-+#ld: -T pr23571.t -z common-page-size=0x1000
-+#objdump: -h -w
-+
-+.*: +file format .*
-+
-+Sections:
-+Idx Name +Size +VMA +LMA +File off +Algn +Flags
-+ +0 \.text +[0-9a-f]* +0+1000 +0+1000 .*
-+ +1 \.data +[0-9a-f]* +0+2000 +0+2000 +[0-9a-f]* +2\*\*12 .*
---- /dev/null
-+++ b/ld/testsuite/ld-scripts/pr23571.t
-@@ -0,0 +1,11 @@
-+SECTIONS
-+{
-+  .text CONSTANT(COMMONPAGESIZE) : {
-+    *(.text)
-+  }
-+
-+  .data : ALIGN(CONSTANT(COMMONPAGESIZE)) {
-+    *(.data)
-+  }
-+  /DISCARD/ : {*(*)}
-+}
diff --git a/toolchain/binutils/patches/2.31.1/300-001_ld_makefile_patch.patch b/toolchain/binutils/patches/2.31.1/300-001_ld_makefile_patch.patch
deleted file mode 100644
index 7b8300efac..0000000000
--- a/toolchain/binutils/patches/2.31.1/300-001_ld_makefile_patch.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/ld/Makefile.am
-+++ b/ld/Makefile.am
-@@ -57,7 +57,7 @@ endif
- # 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
-@@ -563,7 +563,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
- # 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/patches/2.31.1/300-012_check_ldrunpath_length.patch b/toolchain/binutils/patches/2.31.1/300-012_check_ldrunpath_length.patch
deleted file mode 100644
index 58ee759de6..0000000000
--- a/toolchain/binutils/patches/2.31.1/300-012_check_ldrunpath_length.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/ld/emultempl/elf32.em
-+++ b/ld/emultempl/elf32.em
-@@ -1471,6 +1471,8 @@ fragment <<EOF
- 	      && command_line.rpath == NULL)
- 	    {
- 	      path = (const char *) getenv ("LD_RUN_PATH");
-+	      if ((path) && (strlen (path) == 0))
-+	      	path = NULL;
- 	      if (path
- 		  && gld${EMULATION_NAME}_search_needed (path, &n, force))
- 		break;
-@@ -1751,6 +1753,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;
- 
-   for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
-     if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
diff --git a/toolchain/binutils/patches/2.31.1/400-mips_no_dynamic_linking_sym.patch b/toolchain/binutils/patches/2.31.1/400-mips_no_dynamic_linking_sym.patch
deleted file mode 100644
index 91ff77f827..0000000000
--- a/toolchain/binutils/patches/2.31.1/400-mips_no_dynamic_linking_sym.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/bfd/elfxx-mips.c
-+++ b/bfd/elfxx-mips.c
-@@ -7888,6 +7888,7 @@ _bfd_mips_elf_create_dynamic_sections (b
- 
-       name = SGI_COMPAT (abfd) ? "_DYNAMIC_LINK" : "_DYNAMIC_LINKING";
-       bh = NULL;
-+      if (0) {
-       if (!(_bfd_generic_link_add_one_symbol
- 	    (info, abfd, name, BSF_GLOBAL, bfd_abs_section_ptr, 0,
- 	     NULL, FALSE, get_elf_backend_data (abfd)->collect, &bh)))
-@@ -7900,6 +7901,7 @@ _bfd_mips_elf_create_dynamic_sections (b
- 
-       if (! bfd_elf_link_record_dynamic_symbol (info, h))
- 	return FALSE;
-+      }
- 
-       if (! mips_elf_hash_table (info)->use_rld_obj_head)
- 	{
diff --git a/toolchain/binutils/patches/2.31.1/500-Change-default-emulation-for-mips64-linux.patch b/toolchain/binutils/patches/2.31.1/500-Change-default-emulation-for-mips64-linux.patch
deleted file mode 100644
index c6e123e88e..0000000000
--- a/toolchain/binutils/patches/2.31.1/500-Change-default-emulation-for-mips64-linux.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/bfd/config.bfd
-+++ b/bfd/config.bfd
-@@ -913,12 +913,12 @@ case "${targ}" in
-     targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
-     ;;
-   mips64*el-*-linux*)
--    targ_defvec=mips_elf32_ntrad_le_vec
--    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec"
-+    targ_defvec=mips_elf64_trad_le_vec
-+    targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_be_vec"
-     ;;
-   mips64*-*-linux*)
--    targ_defvec=mips_elf32_ntrad_be_vec
--    targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec"
-+    targ_defvec=mips_elf64_trad_be_vec
-+    targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec"
-     ;;
-   mips*el-*-linux*)
-     targ_defvec=mips_elf32_trad_le_vec
---- a/ld/configure.tgt
-+++ b/ld/configure.tgt
-@@ -464,11 +464,11 @@ mips*el-*-vxworks*)	targ_emul=elf32elmip
- mips*-*-vxworks*)	targ_emul=elf32ebmipvxworks
- 			targ_extra_emuls="elf32elmipvxworks" ;;
- mips*-*-windiss)	targ_emul=elf32mipswindiss ;;
--mips64*el-*-linux-*)	targ_emul=elf32ltsmipn32
--			targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
-+mips64*el-*-linux-*)	targ_emul=elf64ltsmip
-+			targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip"
- 			targ_extra_libpath=$targ_extra_emuls ;;
--mips64*-*-linux-*)	targ_emul=elf32btsmipn32
--			targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
-+mips64*-*-linux-*)	targ_emul=elf64btsmip
-+			targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip"
- 			targ_extra_libpath=$targ_extra_emuls ;;
- mips*el-*-linux-*)	targ_emul=elf32ltsmip
- 			targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
-- 
2.20.1




More information about the openwrt-devel mailing list