Import patch to fix symbol versioning bug in 2.26 sources (PR 19698)

Resolves: #1312151
This commit is contained in:
Nick Clifton 2016-02-26 13:38:28 +00:00
parent 1963b8a307
commit 0024239f34
3 changed files with 30 additions and 17 deletions

View File

@ -12,22 +12,6 @@
# Run "ld -r" to generate inputs for complex LTO tests.
run_dump_test "lto-3r"
remote_exec host "mv" "tmpdir/dump tmpdir/lto-3.o"
--- ../binutils-2.26.orig/binutils/ar.c 2016-01-25 11:16:43.491152038 +0000
+++ binutils/ar.c 2016-01-25 11:18:22.209750390 +0000
@@ -768,11 +768,11 @@ main (int argc, char **argv)
if (newer_only && deterministic > 0)
fatal (_("`u' is not meaningful with the `D' option."));
-
+#if 0
if (newer_only && deterministic < 0 && DEFAULT_AR_DETERMINISTIC)
non_fatal (_("\
`u' modifier ignored since `D' is the default (see `U')"));
-
+#endif
default_deterministic ();
if (postype != pos_default)
--- ../binutils-2.26.orig/ld/testsuite/ld-size/size.exp 2016-01-27 15:51:27.223093570 +0000
+++ ld/testsuite/ld-size/size.exp 2016-01-27 16:00:04.262015016 +0000
@@ -113,37 +113,6 @@ run_cc_link_tests [list \

22
binutils-rh1312151.patch Normal file
View File

@ -0,0 +1,22 @@
--- binutils-2.26.orig/bfd/elflink.c 2016-02-26 13:21:54.134859610 +0000
+++ binutils-2.26/bfd/elflink.c 2016-02-26 13:22:49.083168157 +0000
@@ -555,6 +555,19 @@ bfd_elf_record_link_assignment (bfd *out
if (h == NULL)
return provide;
+ if (h->versioned == unknown)
+ {
+ /* Set versioned if symbol version is unknown. */
+ char *version = strrchr (name, ELF_VER_CHR);
+ if (version)
+ {
+ if (version > name && version[-1] != ELF_VER_CHR)
+ h->versioned = versioned_hidden;
+ else
+ h->versioned = versioned;
+ }
+ }
+
switch (h->root.type)
{
case bfd_link_hash_defined:

View File

@ -20,7 +20,7 @@
Summary: A GNU collection of binary utilities
Name: %{?cross}binutils%{?_with_debug:-debug}
Version: 2.26
Release: 12%{?dist}
Release: 13%{?dist}
License: GPLv3+
Group: Development/Tools
URL: http://sources.redhat.com/binutils
@ -62,6 +62,8 @@ Patch18: binutils-2.26-fix-compile-warnings.patch
Patch19: binutils-2.26-Bsymbolic_PIE.patch
# Import H.J.Lu's Kernel LTO patch.
Patch20: binutils-2.26-lto.patch
# Import fix for PR 19698
Patch21: binutils-rh1312151.patch
Provides: bundled(libiberty)
@ -190,6 +192,7 @@ using libelf instead of BFD.
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
# We cannot run autotools as there is an exact requirement of autoconf-2.59.
@ -509,6 +512,10 @@ exit 0
%endif # %{isnative}
%changelog
* Fri Feb 26 2016 Nick Clifton <nickc@redhat.com> 2.26-13
- Import patch to fix symbol versioning bug in 2.26 sources (PR 19698)
(#1312151)
* Fri Feb 19 2016 Nick Clifton <nickc@redhat.com> 2.26-12
- Import H.J.Lu's kernel LTO patch.
(#1302071)