[packages/binutils] - added elf-strtab-assert (fixes assert in elf-strtab.c:247) - release 2

qboosh qboosh at pld-linux.org
Sun Nov 25 09:52:15 CET 2012


commit cf5eba0376f577c74c2a3f31eff7e4f3613ad065
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Nov 25 09:52:30 2012 +0100

    - added elf-strtab-assert (fixes assert in elf-strtab.c:247)
    - release 2

 binutils-elf-strtab-assert.patch | 53 ++++++++++++++++++++++++++++++++++++++++
 binutils.spec                    |  4 ++-
 2 files changed, 56 insertions(+), 1 deletion(-)
---
diff --git a/binutils.spec b/binutils.spec
index d96c196..23abb9f 100644
--- a/binutils.spec
+++ b/binutils.spec
@@ -23,7 +23,7 @@ Summary(tr.UTF-8):	GNU geliştirme araçları
 Summary(uk.UTF-8):	Набір інструментів GNU для побудови виконуваних програм
 Name:		binutils
 Version:	2.23.51.0.5
-Release:	1
+Release:	2
 Epoch:		3
 License:	GPL v3+
 Group:		Development/Tools
@@ -41,6 +41,7 @@ Patch7:		%{name}-libtool-m.patch
 Patch8:		%{name}-build-id.patch
 Patch9:		%{name}-tooldir.patch
 Patch10:	%{name}-sanity-check.patch
+Patch11:	%{name}-elf-strtab-assert.patch
 URL:		http://sources.redhat.com/binutils/
 BuildRequires:	autoconf >= 2.64
 BuildRequires:	automake >= 1:1.11
@@ -168,6 +169,7 @@ niektórych pakietów.
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
+%patch11 -p1
 
 # file contains hacks for ac 2.59 only
 %{__rm} config/override.m4
diff --git a/binutils-elf-strtab-assert.patch b/binutils-elf-strtab-assert.patch
new file mode 100644
index 0000000..fb5d3d8
--- /dev/null
+++ b/binutils-elf-strtab-assert.patch
@@ -0,0 +1,53 @@
+===================================================================
+RCS file: /cvs/src/src/bfd/elflink.c,v
+retrieving revision 1.456
+retrieving revision 1.457
+diff -u -r1.456 -r1.457
+--- src/bfd/elflink.c	2012/10/30 12:44:53	1.456
++++ src/bfd/elflink.c	2012/11/20 22:17:26	1.457
+@@ -4394,8 +4394,6 @@
+ 		    {
+ 		      h->def_dynamic = 0;
+ 		      h->ref_dynamic = 1;
+-		      /* PR 12549: Note if the dynamic reference is weak.  */
+-		      h->ref_dynamic_nonweak = (bind != STB_WEAK);
+ 		    }
+ 		}
+ 
+@@ -4413,9 +4411,6 @@
+ 		{
+ 		  h->ref_dynamic = 1;
+ 		  hi->ref_dynamic = 1;
+-		  /* PR 12549: Note if the dynamic reference is weak.  */
+-		  hi->ref_dynamic_nonweak =
+-		    h->ref_dynamic_nonweak = (bind != STB_WEAK);
+ 		}
+ 	      else
+ 		{
+@@ -4503,8 +4498,8 @@
+ 	  if (!add_needed
+ 	      && definition
+ 	      && ((dynsym
+-		   && h->ref_regular_nonweak)
+-		  || (h->ref_dynamic_nonweak
++		   && h->ref_regular)
++		  || (h->ref_dynamic
+ 		      && (elf_dyn_lib_class (abfd) & DYN_AS_NEEDED) != 0
+ 		      && !on_needed_list (elf_dt_name (abfd), htab->needed))))
+ 	    {
+===================================================================
+RCS file: /cvs/src/src/bfd/elf-bfd.h,v
+retrieving revision 1.349
+retrieving revision 1.350
+diff -u -r1.349 -r1.350
+--- src/bfd/elf-bfd.h	2012/10/30 12:44:53	1.349
++++ src/bfd/elf-bfd.h	2012/11/20 22:17:26	1.350
+@@ -168,8 +168,6 @@
+   /* Symbol has a non-weak reference from a non-shared object (other than
+      the object in which it is defined).  */
+   unsigned int ref_regular_nonweak : 1;
+-  /* Symbol has a non-weak reference from a shared object.  */
+-  unsigned int ref_dynamic_nonweak : 1;  
+   /* Dynamic symbol has been adjustd.  */
+   unsigned int dynamic_adjusted : 1;
+   /* Symbol needs a copy reloc.  */
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/binutils.git/commitdiff/cf5eba0376f577c74c2a3f31eff7e4f3613ad065



More information about the pld-cvs-commit mailing list