From b121128ecf33fe9b2859e7dc145d511734ca803c Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Sun, 30 Jun 2013 07:54:43 +0000
Subject: [PATCH] binutils: stop generating the useless _DYNAMIC_LINKING symbol
 on mips

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37094
---
 .../2.22/600-mips_no_dynamic_linking_sym.patch | 18 ++++++++++++++++++
 .../400-mips_no_dynamic_linking_sym.patch      | 18 ++++++++++++++++++
 2 files changed, 36 insertions(+)
 create mode 100644 toolchain/binutils/patches/2.22/600-mips_no_dynamic_linking_sym.patch
 create mode 100644 toolchain/binutils/patches/2.23.1/400-mips_no_dynamic_linking_sym.patch

diff --git a/toolchain/binutils/patches/2.22/600-mips_no_dynamic_linking_sym.patch b/toolchain/binutils/patches/2.22/600-mips_no_dynamic_linking_sym.patch
new file mode 100644
index 0000000000..29d7691048
--- /dev/null
+++ b/toolchain/binutils/patches/2.22/600-mips_no_dynamic_linking_sym.patch
@@ -0,0 +1,18 @@
+--- a/bfd/elfxx-mips.c
++++ b/bfd/elfxx-mips.c
+@@ -7230,6 +7230,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)))
+@@ -7242,6 +7243,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.23.1/400-mips_no_dynamic_linking_sym.patch b/toolchain/binutils/patches/2.23.1/400-mips_no_dynamic_linking_sym.patch
new file mode 100644
index 0000000000..f9a39c9d43
--- /dev/null
+++ b/toolchain/binutils/patches/2.23.1/400-mips_no_dynamic_linking_sym.patch
@@ -0,0 +1,18 @@
+--- a/bfd/elfxx-mips.c
++++ b/bfd/elfxx-mips.c
+@@ -7335,6 +7335,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)))
+@@ -7347,6 +7348,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)
+ 	{
-- 
GitLab