summaryrefslogtreecommitdiff
path: root/meta/recipes-devtools/elfutils
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/elfutils')
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.148/remove-unused.patch152
-rw-r--r--meta/recipes-devtools/elfutils/elfutils_0.148.bb3
2 files changed, 154 insertions, 1 deletions
diff --git a/meta/recipes-devtools/elfutils/elfutils-0.148/remove-unused.patch b/meta/recipes-devtools/elfutils/elfutils-0.148/remove-unused.patch
new file mode 100644
index 000000000..064331a27
--- /dev/null
+++ b/meta/recipes-devtools/elfutils/elfutils-0.148/remove-unused.patch
@@ -0,0 +1,152 @@
+Remove unused variables from the code to prevent -Werror causing a build
+failure on hosts with GCC 4.6.
+
+These changes are all upstream so should not be required once we've updated
+to elfutils 0.152 or later. Therefore this patch consolidates several
+changes from elfutils upstream by Roland McGrath into a single file so that
+it's easier to remove later once we upgrade.
+Links to upstream gitweb of the consolidated commits follow:
+- http://git.fedorahosted.org/git?p=elfutils.git;a=commit;h=7094d00a169afb27e0323f8580e817798ae7c240
+- http://git.fedorahosted.org/git?p=elfutils.git;a=commit;h=fd992543185126eb0280c1ee0883e073020499b4
+- http://git.fedorahosted.org/git?p=elfutils.git;a=commit;h=4db89f04bb59327abd7a3b60e88f2e7e73c65c79
+- http://git.fedorahosted.org/git?p=elfutils.git;a=commit;h=8f6c1795ab9d41f03805eebd55767070ade55aac
+- http://git.fedorahosted.org/git?p=elfutils.git;a=commit;h=240784b48aa276822c5a61c9ad6a4355051ce259
+
+Joshua Lock <josh@linux.intel.com> - 06/04/11
+
+Index: elfutils-0.148/libasm/asm_newscn.c
+===================================================================
+--- elfutils-0.148.orig/libasm/asm_newscn.c
++++ elfutils-0.148/libasm/asm_newscn.c
+@@ -162,7 +162,6 @@ asm_newscn (ctx, scnname, type, flags)
+ GElf_Xword flags;
+ {
+ size_t scnname_len = strlen (scnname) + 1;
+- unsigned long int hval;
+ AsmScn_t *result;
+
+ /* If no context is given there might be an earlier error. */
+@@ -180,8 +179,6 @@ asm_newscn (ctx, scnname, type, flags)
+ return NULL;
+ }
+
+- hval = elf_hash (scnname);
+-
+ rwlock_wrlock (ctx->lock);
+
+ /* This is a new section. */
+Index: elfutils-0.148/src/elflint.c
+===================================================================
+--- elfutils-0.148.orig/src/elflint.c
++++ elfutils-0.148/src/elflint.c
+@@ -707,9 +707,10 @@ section [%2d] '%s': symbol %zu: invalid
+ {
+ if (xndxdata == NULL)
+ {
+- ERROR (gettext ("\
++ if (!no_xndx_warned)
++ ERROR (gettext ("\
+ section [%2d] '%s': symbol %zu: too large section index but no extended section index section\n"),
+- idx, section_name (ebl, idx), cnt);
++ idx, section_name (ebl, idx), cnt);
+ no_xndx_warned = true;
+ }
+ else if (xndx < SHN_LORESERVE)
+@@ -1592,10 +1593,6 @@ check_dynamic (Ebl *ebl, GElf_Ehdr *ehdr
+ [DT_STRSZ] = true,
+ [DT_SYMENT] = true
+ };
+- GElf_Addr reladdr = 0;
+- GElf_Word relsz = 0;
+- GElf_Addr pltreladdr = 0;
+- GElf_Word pltrelsz = 0;
+
+ memset (has_dt, '\0', sizeof (has_dt));
+ memset (has_val_dt, '\0', sizeof (has_val_dt));
+@@ -1694,15 +1691,6 @@ section [%2d] '%s': entry %zu: level 2 t
+ section [%2d] '%s': entry %zu: DT_PLTREL value must be DT_REL or DT_RELA\n"),
+ idx, section_name (ebl, idx), cnt);
+
+- if (dyn->d_tag == DT_REL)
+- reladdr = dyn->d_un.d_ptr;
+- if (dyn->d_tag == DT_RELSZ)
+- relsz = dyn->d_un.d_val;
+- if (dyn->d_tag == DT_JMPREL)
+- pltreladdr = dyn->d_un.d_ptr;
+- if (dyn->d_tag == DT_PLTRELSZ)
+- pltrelsz = dyn->d_un.d_val;
+-
+ /* Check that addresses for entries are in loaded segments. */
+ switch (dyn->d_tag)
+ {
+Index: elfutils-0.148/src/ldgeneric.c
+===================================================================
+--- elfutils-0.148.orig/src/ldgeneric.c
++++ elfutils-0.148/src/ldgeneric.c
+@@ -285,12 +285,10 @@ static int
+ check_for_duplicate2 (struct usedfiles *newp, struct usedfiles *list)
+ {
+ struct usedfiles *first;
+- struct usedfiles *prevp;
+
+ if (list == NULL)
+ return 0;
+
+- prevp = list;
+ list = first = list->next;
+ do
+ {
+Index: elfutils-0.148/src/ldscript.y
+===================================================================
+--- elfutils-0.148.orig/src/ldscript.y
++++ elfutils-0.148/src/ldscript.y
+@@ -802,12 +802,9 @@ add_versions (struct version *versions)
+
+ do
+ {
+- struct version *oldp;
+-
+ add_id_list (versions->versionname, versions->local_names, true);
+ add_id_list (versions->versionname, versions->global_names, false);
+
+- oldp = versions;
+ versions = versions->next;
+ }
+ while (versions != NULL);
+Index: elfutils-0.148/src/unstrip.c
+===================================================================
+--- elfutils-0.148.orig/src/unstrip.c
++++ elfutils-0.148/src/unstrip.c
+@@ -1301,7 +1301,6 @@ more sections in stripped file than debu
+ /* Match each debuginfo section with its corresponding stripped section. */
+ bool check_prelink = false;
+ Elf_Scn *unstripped_symtab = NULL;
+- size_t unstripped_strtab_ndx = SHN_UNDEF;
+ size_t alloc_avail = 0;
+ scn = NULL;
+ while ((scn = elf_nextscn (unstripped, scn)) != NULL)
+@@ -1313,7 +1312,6 @@ more sections in stripped file than debu
+ if (shdr->sh_type == SHT_SYMTAB)
+ {
+ unstripped_symtab = scn;
+- unstripped_strtab_ndx = shdr->sh_link;
+ continue;
+ }
+
+Index: elfutils-0.148/src/ldscript.c
+===================================================================
+--- elfutils-0.148.orig/src/ldscript.c
++++ elfutils-0.148/src/ldscript.c
+@@ -2728,12 +2728,9 @@ add_versions (struct version *versions)
+
+ do
+ {
+- struct version *oldp;
+-
+ add_id_list (versions->versionname, versions->local_names, true);
+ add_id_list (versions->versionname, versions->global_names, false);
+
+- oldp = versions;
+ versions = versions->next;
+ }
+ while (versions != NULL);
diff --git a/meta/recipes-devtools/elfutils/elfutils_0.148.bb b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
index b2f700ede..a55b98d1e 100644
--- a/meta/recipes-devtools/elfutils/elfutils_0.148.bb
+++ b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3\
file://EXCEPTION;md5=570adcb0c1218ab57f2249c67d0ce417"
DEPENDS = "libtool bzip2 zlib"
-PR = "r1"
+PR = "r2"
SRC_URI = "https://fedorahosted.org/releases/e/l/elfutils/elfutils-${PV}.tar.bz2"
@@ -27,6 +27,7 @@ SRC_URI += "\
file://testsuite-ignore-elflint.diff \
file://elf_additions.diff \
file://elfutils-fsize.patch \
+ file://remove-unused.patch \
"
# The buildsystem wants to generate 2 .h files from source using a binary it just built,