mirror of https://github.com/hak5/openwrt.git
binutils: remove old versions
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42776lede-17.01
parent
fbbce1c8d8
commit
c7bc3ad908
|
@ -11,14 +11,6 @@ choice
|
||||||
depends on avr32
|
depends on avr32
|
||||||
bool "binutils 2.20.1"
|
bool "binutils 2.20.1"
|
||||||
|
|
||||||
config BINUTILS_VERSION_2_22
|
|
||||||
depends on !avr32 || (avr32 && BROKEN)
|
|
||||||
bool "binutils 2.22"
|
|
||||||
|
|
||||||
config BINUTILS_VERSION_2_23_1
|
|
||||||
depends on !avr32 || (avr32 && BROKEN)
|
|
||||||
bool "binutils 2.23.1"
|
|
||||||
|
|
||||||
config BINUTILS_VERSION_LINARO
|
config BINUTILS_VERSION_LINARO
|
||||||
depends on !avr32 || (avr32 && BROKEN)
|
depends on !avr32 || (avr32 && BROKEN)
|
||||||
bool "Linaro binutils 2.24"
|
bool "Linaro binutils 2.24"
|
||||||
|
@ -35,9 +27,6 @@ config EXTRA_BINUTILS_CONFIG_OPTIONS
|
||||||
config BINUTILS_VERSION
|
config BINUTILS_VERSION
|
||||||
string
|
string
|
||||||
prompt "Binutils Version" if (TOOLCHAINOPTS && NULL)
|
prompt "Binutils Version" if (TOOLCHAINOPTS && NULL)
|
||||||
default "2.20.1" if BINUTILS_VERSION_2_20_1
|
default "2.20.1" if BINUTILS_VERSION_2_20_1 || avr32
|
||||||
default "2.22" if BINUTILS_VERSION_2_22
|
|
||||||
default "2.23.1" if BINUTILS_VERSION_2_23_1
|
|
||||||
default "linaro" if BINUTILS_VERSION_LINARO
|
default "linaro" if BINUTILS_VERSION_LINARO
|
||||||
default "2.20.1" if avr32
|
default "linaro"
|
||||||
default "2.22"
|
|
||||||
|
|
|
@ -24,12 +24,6 @@ else
|
||||||
ifeq ($(PKG_VERSION),2.20.1)
|
ifeq ($(PKG_VERSION),2.20.1)
|
||||||
PKG_MD5SUM:=9cdfb9d6ec0578c166d3beae5e15c4e5
|
PKG_MD5SUM:=9cdfb9d6ec0578c166d3beae5e15c4e5
|
||||||
endif
|
endif
|
||||||
ifeq ($(PKG_VERSION),2.22)
|
|
||||||
PKG_MD5SUM:=ee0f10756c84979622b992a4a61ea3f5
|
|
||||||
endif
|
|
||||||
ifeq ($(PKG_VERSION),2.23.1)
|
|
||||||
PKG_MD5SUM:=33adb18c3048d057ac58d07a3f1adb38
|
|
||||||
endif
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
HOST_BUILD_PARALLEL:=1
|
HOST_BUILD_PARALLEL:=1
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
--- a/config.sub
|
|
||||||
+++ b/config.sub
|
|
||||||
@@ -125,6 +125,7 @@ esac
|
|
||||||
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
|
|
||||||
case $maybe_os in
|
|
||||||
nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
|
|
||||||
+ linux-musl* | \
|
|
||||||
linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
|
|
||||||
knetbsd*-gnu* | netbsd*-gnu* | \
|
|
||||||
kopensolaris*-gnu* | \
|
|
|
@ -1,22 +0,0 @@
|
||||||
--- a/ld/Makefile.am
|
|
||||||
+++ b/ld/Makefile.am
|
|
||||||
@@ -37,7 +37,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
|
|
||||||
@@ -366,7 +366,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
|
|
|
@ -1,20 +0,0 @@
|
||||||
--- a/ld/emultempl/elf32.em
|
|
||||||
+++ b/ld/emultempl/elf32.em
|
|
||||||
@@ -1273,6 +1273,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;
|
|
||||||
@@ -1500,6 +1502,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)
|
|
|
@ -1,12 +0,0 @@
|
||||||
--- a/bfd/elf32-arm.c
|
|
||||||
+++ b/bfd/elf32-arm.c
|
|
||||||
@@ -12408,7 +12408,8 @@ elf32_arm_check_relocs (bfd *abfd, struc
|
|
||||||
|
|
||||||
/* If the symbol is a function that doesn't bind locally,
|
|
||||||
this relocation will need a PLT entry. */
|
|
||||||
- root_plt->refcount += 1;
|
|
||||||
+ if (root_plt->refcount != -1)
|
|
||||||
+ root_plt->refcount += 1;
|
|
||||||
|
|
||||||
if (!call_reloc_p)
|
|
||||||
arm_plt->noncall_refcount++;
|
|
|
@ -1,26 +0,0 @@
|
||||||
See http://sourceware.org/bugzilla/show_bug.cgi?id=13990 for details.
|
|
||||||
---
|
|
||||||
--- a/bfd/elf32-arm.c
|
|
||||||
+++ b/bfd/elf32-arm.c
|
|
||||||
@@ -12046,8 +12046,19 @@ elf32_arm_gc_sweep_hook (bfd *
|
|
||||||
if (may_need_local_target_p
|
|
||||||
&& elf32_arm_get_plt_info (abfd, eh, r_symndx, &root_plt, &arm_plt))
|
|
||||||
{
|
|
||||||
- BFD_ASSERT (root_plt->refcount > 0);
|
|
||||||
- root_plt->refcount -= 1;
|
|
||||||
+ /* If PLT refcount book-keeping is wrong and too low, we'll
|
|
||||||
+ see a zero value (going to -1) for the root PLT reference
|
|
||||||
+ count. */
|
|
||||||
+ if (root_plt->refcount >= 0)
|
|
||||||
+ {
|
|
||||||
+ BFD_ASSERT (root_plt->refcount != 0);
|
|
||||||
+ root_plt->refcount -= 1;
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ /* A value of -1 means the symbol has become local, forced
|
|
||||||
+ or seeing a hidden definition. Any other negative value
|
|
||||||
+ is an error. */
|
|
||||||
+ BFD_ASSERT (root_plt->refcount == -1);
|
|
||||||
|
|
||||||
if (!call_reloc_p)
|
|
||||||
arm_plt->noncall_refcount--;
|
|
|
@ -1,18 +0,0 @@
|
||||||
--- 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)
|
|
||||||
{
|
|
|
@ -1,74 +0,0 @@
|
||||||
http://bugs.gentoo.org/392645
|
|
||||||
http://sourceware.org/bugzilla/show_bug.cgi?id=13470
|
|
||||||
|
|
||||||
2011-12-03 Alan Modra <amodra@gmail.com>
|
|
||||||
|
|
||||||
PR ld/13470
|
|
||||||
* elf32-ppc.c (ppc_elf_copy_indirect_symbol): Revert substantive
|
|
||||||
change in 2011-07-01 commit. Comment.
|
|
||||||
* elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
|
|
||||||
|
|
||||||
===================================================================
|
|
||||||
RCS file: /cvs/src/src/bfd/elf32-ppc.c,v
|
|
||||||
retrieving revision 1.302.2.1
|
|
||||||
retrieving revision 1.302.2.2
|
|
||||||
--- a/bfd/elf32-ppc.c
|
|
||||||
+++ b/bfd/elf32-ppc.c
|
|
||||||
@@ -2987,10 +2987,6 @@ ppc_elf_copy_indirect_symbol (struct bfd
|
|
||||||
edir->elf.needs_plt |= eind->elf.needs_plt;
|
|
||||||
edir->elf.pointer_equality_needed |= eind->elf.pointer_equality_needed;
|
|
||||||
|
|
||||||
- /* If we were called to copy over info for a weak sym, that's all. */
|
|
||||||
- if (eind->elf.root.type != bfd_link_hash_indirect)
|
|
||||||
- return;
|
|
||||||
-
|
|
||||||
if (eind->dyn_relocs != NULL)
|
|
||||||
{
|
|
||||||
if (edir->dyn_relocs != NULL)
|
|
||||||
@@ -3022,6 +3018,16 @@ ppc_elf_copy_indirect_symbol (struct bfd
|
|
||||||
eind->dyn_relocs = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ /* If we were called to copy over info for a weak sym, that's all.
|
|
||||||
+ You might think dyn_relocs need not be copied over; After all,
|
|
||||||
+ both syms will be dynamic or both non-dynamic so we're just
|
|
||||||
+ moving reloc accounting around. However, ELIMINATE_COPY_RELOCS
|
|
||||||
+ code in ppc_elf_adjust_dynamic_symbol needs to check for
|
|
||||||
+ dyn_relocs in read-only sections, and it does so on what is the
|
|
||||||
+ DIR sym here. */
|
|
||||||
+ if (eind->elf.root.type != bfd_link_hash_indirect)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
/* Copy over the GOT refcount entries that we may have already seen to
|
|
||||||
the symbol which just became indirect. */
|
|
||||||
edir->elf.got.refcount += eind->elf.got.refcount;
|
|
||||||
--- a/bfd/elf64-ppc.c
|
|
||||||
+++ b/bfd/elf64-ppc.c
|
|
||||||
@@ -4435,10 +4435,6 @@ ppc64_elf_copy_indirect_symbol (struct b
|
|
||||||
edir->elf.ref_regular_nonweak |= eind->elf.ref_regular_nonweak;
|
|
||||||
edir->elf.needs_plt |= eind->elf.needs_plt;
|
|
||||||
|
|
||||||
- /* If we were called to copy over info for a weak sym, that's all. */
|
|
||||||
- if (eind->elf.root.type != bfd_link_hash_indirect)
|
|
||||||
- return;
|
|
||||||
-
|
|
||||||
/* Copy over any dynamic relocs we may have on the indirect sym. */
|
|
||||||
if (eind->dyn_relocs != NULL)
|
|
||||||
{
|
|
||||||
@@ -4471,6 +4467,16 @@ ppc64_elf_copy_indirect_symbol (struct b
|
|
||||||
eind->dyn_relocs = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ /* If we were called to copy over info for a weak sym, that's all.
|
|
||||||
+ You might think dyn_relocs need not be copied over; After all,
|
|
||||||
+ both syms will be dynamic or both non-dynamic so we're just
|
|
||||||
+ moving reloc accounting around. However, ELIMINATE_COPY_RELOCS
|
|
||||||
+ code in ppc64_elf_adjust_dynamic_symbol needs to check for
|
|
||||||
+ dyn_relocs in read-only sections, and it does so on what is the
|
|
||||||
+ DIR sym here. */
|
|
||||||
+ if (eind->elf.root.type != bfd_link_hash_indirect)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
/* Copy over got entries that we may have already seen to the
|
|
||||||
symbol which just became indirect. */
|
|
||||||
if (eind->elf.got.glist != NULL)
|
|
|
@ -1,10 +0,0 @@
|
||||||
--- a/config.sub
|
|
||||||
+++ b/config.sub
|
|
||||||
@@ -125,6 +125,7 @@ esac
|
|
||||||
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
|
|
||||||
case $maybe_os in
|
|
||||||
nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
|
|
||||||
+ linux-musl* | \
|
|
||||||
linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
|
|
||||||
knetbsd*-gnu* | netbsd*-gnu* | \
|
|
||||||
kopensolaris*-gnu* | \
|
|
|
@ -1,22 +0,0 @@
|
||||||
--- a/ld/Makefile.am
|
|
||||||
+++ b/ld/Makefile.am
|
|
||||||
@@ -37,7 +37,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
|
|
||||||
@@ -367,7 +367,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
|
|
|
@ -1,20 +0,0 @@
|
||||||
--- a/ld/emultempl/elf32.em
|
|
||||||
+++ b/ld/emultempl/elf32.em
|
|
||||||
@@ -1274,6 +1274,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;
|
|
||||||
@@ -1501,6 +1503,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)
|
|
|
@ -1,18 +0,0 @@
|
||||||
--- 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)
|
|
||||||
{
|
|
Loading…
Reference in New Issue