--- /dev/null
+commit cd83a0f5f7496853f21ae956ffcc3759adee1c1f
+Author: H.J. Lu <hjl.tools@gmail.com>
+Date: Wed Jun 1 19:42:00 2011 +0000
+
+ Properly warn relocation in readonly section in a shared object.
+
+ 2011-06-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Properly warn
+ relocation in readonly section in a shared object.
+ * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
+
+diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
+index ee1511f..eea2263 100644
+--- a/bfd/elf32-i386.c
++++ b/bfd/elf32-i386.c
+@@ -2488,13 +2488,13 @@ elf_i386_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
+ {
+ srel = elf_section_data (p->sec)->sreloc;
+ srel->size += p->count * sizeof (Elf32_External_Rel);
+- if ((p->sec->output_section->flags & SEC_READONLY) != 0)
++ if ((p->sec->output_section->flags & SEC_READONLY) != 0
++ && (info->flags & DF_TEXTREL) == 0)
+ {
+ info->flags |= DF_TEXTREL;
+ if (info->warn_shared_textrel && info->shared)
+ info->callbacks->einfo (_("%P: %B: warning: relocation in readonly section `%A'.\n"),
+ p->sec->owner, p->sec);
+- break;
+ }
+ }
+ }
+diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
+index 5cbaff8..9d6d4a4 100644
+--- a/bfd/elf64-x86-64.c
++++ b/bfd/elf64-x86-64.c
+@@ -2399,13 +2399,13 @@ elf_x86_64_size_dynamic_sections (bfd *output_bfd,
+ {
+ srel = elf_section_data (p->sec)->sreloc;
+ srel->size += p->count * bed->s->sizeof_rela;
+- if ((p->sec->output_section->flags & SEC_READONLY) != 0)
++ if ((p->sec->output_section->flags & SEC_READONLY) != 0
++ && (info->flags & DF_TEXTREL) == 0)
+ {
+ info->flags |= DF_TEXTREL;
+ if (info->warn_shared_textrel && info->shared)
+ info->callbacks->einfo (_("%P: %B: warning: relocation in readonly section `%A'.\n"),
+ p->sec->owner, p->sec);
+- break;
+ }
+ }
+ }
Summary(uk.UTF-8): Набір інструментів GNU для побудови виконуваних програм
Name: binutils
Version: 2.21.51.0.9
-Release: 3
+Release: 4
Epoch: 3
License: GPL v3+
Group: Development/Tools
Patch8: %{name}-build-id.patch
Patch9: %{name}-tooldir.patch
Patch10: %{name}-pr12163.patch
+Patch11: %{name}-warn_ro_relocs.patch
URL: http://sources.redhat.com/binutils/
BuildRequires: autoconf >= 2.64
BuildRequires: automake >= 1:1.11
%patch8 -p0
%patch9 -p1
%patch10 -p1
+%patch11 -p1
# file contains hacks for ac 2.59 only
%{__rm} config/override.m4