summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.163/arm_func_value.patch165
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.163/arm_unwind_ret_mask.patch83
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.163/non_linux.patch35
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.163/redhat-portability.diff1021
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.163/scanf-format.patch40
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.163/uclibc-support-for-elfutils-0.161.patch106
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/0001-Ignore-differences-between-mips-machine-identifiers.patch34
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/0001-elf_getarsym-Silence-Werror-maybe-uninitialized-fals.patch (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/0001-elf_getarsym-Silence-Werror-maybe-uninitialized-fals.patch)0
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/0001-fix-a-stack-usage-warning.patch (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/0001-fix-a-stack-usage-warning.patch)0
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/0001-remove-the-unneed-checking.patch (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/0001-remove-the-unneed-checking.patch)0
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch168
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/0003-Add-mips-n64-relocation-format-hack.patch226
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/arm_backend.diff (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/arm_backend.diff)389
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/fixheadercheck.patch (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/fixheadercheck.patch)0
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/hppa_backend.diff (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/hppa_backend.diff)69
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/kfreebsd_path.patch15
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/m68k_backend.diff (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/m68k_backend.diff)61
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/mips_backend.diff (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/mips_backend.diff)71
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/mips_readelf_w.patch (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/mips_readelf_w.patch)8
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.164/testsuite-ignore-elflint.diff (renamed from meta/recipes-devtools/elfutils/elfutils-0.163/testsuite-ignore-elflint.diff)0
-rw-r--r--meta/recipes-devtools/elfutils/elfutils_0.164.bb (renamed from meta/recipes-devtools/elfutils/elfutils_0.163.bb)15
21 files changed, 735 insertions, 1771 deletions
diff --git a/meta/recipes-devtools/elfutils/elfutils-0.163/arm_func_value.patch b/meta/recipes-devtools/elfutils/elfutils-0.163/arm_func_value.patch
deleted file mode 100644
index 2fe4df68b7..0000000000
--- a/meta/recipes-devtools/elfutils/elfutils-0.163/arm_func_value.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From: Mark Wielaard <mjw@redhat.com>
-Date: Sun, 15 Jun 2014 11:30:35 +0200
-Subject: libebl: Add sym_func_value hook.
-
-The ARM EABI says that the zero bit of function symbol st_value indicates
-whether the symbol points to a THUMB or ARM function. Add a new ebl hook
-to adjust the st_value in such a case so that we get the actual value that
-the symbol points to. It isn't easily possible to reuse the existing
-resolve_sym_value for this purpose, so we end up with another hook that
-can be used from dwfl_module_getsym and elflint.
-
-Rebase arm_func_value.patch from 0.159 to 0.160
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- backends/arm_init.c | 1 +
- backends/arm_symbol.c | 8 ++++++++
- libdwfl/dwfl_module_getsym.c | 2 +-
- libebl/Makefile.am | 3 ++-
- libebl/ebl-hooks.h | 3 +++
- libebl/eblsymfuncval.c | 43 ++++++++++++++++++++++++++++++++++++++++++
- libebl/libebl.h | 11 +++++++++++
- 7 files changed, 69 insertions(+), 2 deletions(-)
-
-diff --git a/backends/arm_init.c b/backends/arm_init.c
-index 7171186..9f03630 100644
---- a/backends/arm_init.c
-+++ b/backends/arm_init.c
-@@ -78,6 +78,7 @@ arm_init (elf, machine, eh, ehlen)
- eh->return_value_location = arm_return_value_location_hard;
- HOOK (eh, abi_cfi);
- HOOK (eh, check_reloc_target_type);
-+ HOOK (eh, sym_func_value);
- HOOK (eh, symbol_type_name);
-
- /* We only unwind the core integer registers. */
-diff --git a/backends/arm_symbol.c b/backends/arm_symbol.c
-index da4a50a..ccea03b 100644
---- a/backends/arm_symbol.c
-+++ b/backends/arm_symbol.c
-@@ -130,6 +130,14 @@ arm_check_reloc_target_type (Ebl *ebl __attribute__ ((unused)), Elf64_Word sh_ty
- return sh_type == SHT_ARM_EXIDX;
- }
-
-+/* ARM EABI says that the low bit indicates whether the function
-+ symbol value is a THUMB function or not. Mask it off. */
-+GElf_Addr
-+arm_sym_func_value (Ebl *ebl __attribute__ ((unused)), GElf_Addr val)
-+{
-+ return val & ~(GElf_Addr)1;
-+}
-+
- const char *
- arm_symbol_type_name (int type,
- char *buf __attribute__ ((unused)),
-diff --git a/libdwfl/dwfl_module_getsym.c b/libdwfl/dwfl_module_getsym.c
-index 42d2b67..fb192d7 100644
---- a/libdwfl/dwfl_module_getsym.c
-+++ b/libdwfl/dwfl_module_getsym.c
-@@ -119,7 +119,7 @@ __libdwfl_getsym (Dwfl_Module *mod, int ndx, GElf_Sym *sym, GElf_Addr *addr,
- descriptors). */
-
- char *ident;
-- GElf_Addr st_value = sym->st_value & ebl_func_addr_mask (mod->ebl);
-+ GElf_Addr st_value = ebl_sym_func_value (mod->ebl, sym->st_value);
- *resolved = false;
- if (! adjust_st_value && mod->e_type != ET_REL && alloc
- && (GELF_ST_TYPE (sym->st_info) == STT_FUNC
-diff --git a/libebl/Makefile.am b/libebl/Makefile.am
-index ec4477b..889c21b 100644
---- a/libebl/Makefile.am
-+++ b/libebl/Makefile.am
-@@ -55,7 +55,8 @@ gen_SOURCES = eblopenbackend.c eblclosebackend.c eblstrtab.c \
- eblsysvhashentrysize.c eblauxvinfo.c eblcheckobjattr.c \
- ebl_check_special_section.c ebl_syscall_abi.c eblabicfi.c \
- eblstother.c eblinitreg.c ebldwarftoregno.c eblnormalizepc.c \
-- eblunwind.c eblresolvesym.c eblcheckreloctargettype.c
-+ eblunwind.c eblresolvesym.c eblcheckreloctargettype.c \
-+ eblsymfuncval.c
-
- libebl_a_SOURCES = $(gen_SOURCES)
-
-diff --git a/libebl/ebl-hooks.h b/libebl/ebl-hooks.h
-index 2e31446..9df945d 100644
---- a/libebl/ebl-hooks.h
-+++ b/libebl/ebl-hooks.h
-@@ -191,5 +191,8 @@ bool EBLHOOK(unwind) (Ebl *ebl, Dwarf_Addr pc, ebl_tid_registers_t *setfunc,
- (e.g. function descriptor resolving) */
- bool EBLHOOK(resolve_sym_value) (Ebl *ebl, GElf_Addr *addr);
-
-+/* Returns the real value of a symbol function address or offset. */
-+GElf_Addr EBLHOOK(sym_func_value) (Ebl *ebl, GElf_Addr val);
-+
- /* Destructor for ELF backend handle. */
- void EBLHOOK(destr) (struct ebl *);
-diff --git a/libebl/eblsymfuncval.c b/libebl/eblsymfuncval.c
-new file mode 100644
-index 0000000..c0b322f
---- /dev/null
-+++ b/libebl/eblsymfuncval.c
-@@ -0,0 +1,43 @@
-+/* Turn a symbol function value into a real function address or offset.
-+ Copyright (C) 2014 Red Hat, Inc.
-+ This file is part of elfutils.
-+
-+ This file is free software; you can redistribute it and/or modify
-+ it under the terms of either
-+
-+ * the GNU Lesser General Public License as published by the Free
-+ Software Foundation; either version 3 of the License, or (at
-+ your option) any later version
-+
-+ or
-+
-+ * the GNU General Public License as published by the Free
-+ Software Foundation; either version 2 of the License, or (at
-+ your option) any later version
-+
-+ or both in parallel, as here.
-+
-+ elfutils is distributed in the hope that it will be useful, but
-+ WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ General Public License for more details.
-+
-+ You should have received copies of the GNU General Public License and
-+ the GNU Lesser General Public License along with this program. If
-+ not, see <http://www.gnu.org/licenses/>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <libeblP.h>
-+#include <assert.h>
-+
-+GElf_Addr
-+ebl_sym_func_value (Ebl *ebl, GElf_Addr val)
-+{
-+ if (ebl == NULL || ebl->sym_func_value == NULL)
-+ return val;
-+
-+ return ebl->sym_func_value (ebl, val);
-+}
-diff --git a/libebl/libebl.h b/libebl/libebl.h
-index 7dbf460..96c076b 100644
---- a/libebl/libebl.h
-+++ b/libebl/libebl.h
-@@ -472,6 +472,17 @@ extern bool ebl_unwind (Ebl *ebl, Dwarf_Addr pc, ebl_tid_registers_t *setfunc,
- extern bool ebl_resolve_sym_value (Ebl *ebl, GElf_Addr *addr)
- __nonnull_attribute__ (2);
-
-+/* Returns the real value of a symbol function address or offset
-+ (e.g. when the st_value contains some flag bits that need to be
-+ masked off). This is different from ebl_resolve_sym_value which
-+ only works for actual symbol addresses (in non-ET_REL files) that
-+ might resolve to an address in a different section.
-+ ebl_sym_func_value is called to turn the given value into the a
-+ real address or offset (the original value might not be a real
-+ address). This works for both ET_REL when the value is a section
-+ offset or ET_EXEC or ET_DYN symbol values, which are addresses. */
-+extern GElf_Addr ebl_sym_func_value (Ebl *ebl, GElf_Addr val);
-+
- #ifdef __cplusplus
- }
- #endif
diff --git a/meta/recipes-devtools/elfutils/elfutils-0.163/arm_unwind_ret_mask.patch b/meta/recipes-devtools/elfutils/elfutils-0.163/arm_unwind_ret_mask.patch
deleted file mode 100644
index 8abb36bb49..0000000000
--- a/meta/recipes-devtools/elfutils/elfutils-0.163/arm_unwind_ret_mask.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From: Mark Wielaard <mjw@redhat.com>
-Date: Sun, 15 Jun 2014 12:30:02 +0200
-Subject: libebl: Add ebl_unwind_ret_mask.
-
-Another ARM oddity. A return value address in an unwind will contain an
-extra bit to indicate whether to return to a regular ARM or THUMB function.
-Add a new ebl function to return a mask to use to get the actual return
-address during an unwind ebl_unwind_ret_mask.
-
-Rebase arm_unwind_ret_mask.patch from 0.159 to 0.160
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- backends/arm_init.c | 3 +++
- libebl/eblinitreg.c | 8 ++++++++
- libebl/libebl.h | 4 ++++
- libebl/libeblP.h | 6 ++++++
- 4 files changed, 21 insertions(+)
-
-diff --git a/backends/arm_init.c b/backends/arm_init.c
-index 2266829..f8df042 100644
---- a/backends/arm_init.c
-+++ b/backends/arm_init.c
-@@ -87,5 +87,8 @@ arm_init (elf, machine, eh, ehlen)
- /* Bit zero encodes whether an function address is THUMB or ARM. */
- eh->func_addr_mask = ~(GElf_Addr)1;
-
-+ /* Bit zero encodes whether to return to a THUMB or ARM function. */
-+ eh->unwind_ret_mask = ~(GElf_Addr)1;
-+
- return MODVERSION;
- }
-diff --git a/libebl/eblinitreg.c b/libebl/eblinitreg.c
-index 5729b3c..ca681c0 100644
---- a/libebl/eblinitreg.c
-+++ b/libebl/eblinitreg.c
-@@ -56,3 +56,11 @@ ebl_func_addr_mask (Ebl *ebl)
- return ((ebl == NULL || ebl->func_addr_mask == 0)
- ? ~(GElf_Addr)0 : ebl->func_addr_mask);
- }
-+
-+GElf_Addr
-+ebl_unwind_ret_mask (Ebl *ebl)
-+{
-+ return ((ebl == NULL || ebl->unwind_ret_mask == 0)
-+ ? ~(GElf_Addr)0 : ebl->unwind_ret_mask);
-+}
-+
-diff --git a/libebl/libebl.h b/libebl/libebl.h
-index 40cf635..be70027 100644
---- a/libebl/libebl.h
-+++ b/libebl/libebl.h
-@@ -420,6 +420,10 @@ extern size_t ebl_frame_nregs (Ebl *ebl)
- tables) is needed. */
- extern GElf_Addr ebl_func_addr_mask (Ebl *ebl);
-
-+/* Mask to use for unwind return address in case the architecture adds
-+ some extra non-address bits to it. */
-+extern GElf_Addr ebl_unwind_ret_mask (Ebl *ebl);
-+
- /* Convert *REGNO as is in DWARF to a lower range suitable for
- Dwarf_Frame->REGS indexing. */
- extern bool ebl_dwarf_to_regno (Ebl *ebl, unsigned *regno)
-diff --git a/libebl/libeblP.h b/libebl/libeblP.h
-index dbd67f3..e18ace6 100644
---- a/libebl/libeblP.h
-+++ b/libebl/libeblP.h
-@@ -70,6 +70,12 @@ struct ebl
- otherwise it should be the actual mask to use. */
- GElf_Addr func_addr_mask;
-
-+ /* Mask to use to get the return address from an unwind in case the
-+ architecture adds some extra non-address bits to it. When not
-+ initialized (0) then ebl_unwind_ret_mask will return ~0, otherwise
-+ it should be the actual mask to use. */
-+ GElf_Addr unwind_ret_mask;
-+
- /* Function descriptor load address and table as used by
- ebl_resolve_sym_value if available for this arch. */
- GElf_Addr fd_addr;
---
-1.9.1
-
diff --git a/meta/recipes-devtools/elfutils/elfutils-0.163/non_linux.patch b/meta/recipes-devtools/elfutils/elfutils-0.163/non_linux.patch
deleted file mode 100644
index 35b1b389fb..0000000000
--- a/meta/recipes-devtools/elfutils/elfutils-0.163/non_linux.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Index: elfutils-0.159/libdwfl/linux-pid-attach.c
-===================================================================
---- elfutils-0.159.orig/libdwfl/linux-pid-attach.c
-+++ elfutils-0.159/libdwfl/linux-pid-attach.c
-@@ -393,6 +393,16 @@ pid_getthread (Dwfl *dwfl __attribute__
- return false;
- }
-
-+bool
-+internal_function
-+__libdwfl_ptrace_attach (pid_t tid __attribute__ ((unused)),
-+ bool *tid_was_stoppedp __attribute__ ((unused)))
-+{
-+ errno = ENOSYS;
-+ __libdwfl_seterrno (DWFL_E_ERRNO);
-+ return false;
-+}
-+
- static bool
- pid_memory_read (Dwfl *dwfl __attribute__ ((unused)),
- Dwarf_Addr addr __attribute__ ((unused)),
-@@ -419,6 +429,13 @@ pid_detach (Dwfl *dwfl __attribute__ ((u
- {
- }
-
-+void
-+internal_function
-+__libdwfl_ptrace_detach (pid_t tid __attribute__ ((unused)),
-+ bool tid_was_stopped __attribute__ ((unused)))
-+{
-+}
-+
- static void
- pid_thread_detach (Dwfl_Thread *thread __attribute__ ((unused)),
- void *thread_arg __attribute__ ((unused)))
diff --git a/meta/recipes-devtools/elfutils/elfutils-0.163/redhat-portability.diff b/meta/recipes-devtools/elfutils/elfutils-0.163/redhat-portability.diff
deleted file mode 100644
index a0ff07d397..0000000000
--- a/meta/recipes-devtools/elfutils/elfutils-0.163/redhat-portability.diff
+++ /dev/null
@@ -1,1021 +0,0 @@
-Rebase to 1.162
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- ChangeLog | 30 +++++++++++++++++++++
- backends/ChangeLog | 12 +++++++++
- backends/Makefile.am | 2 +-
- config/ChangeLog | 4 +++
- config/eu.am | 14 +++++++---
- configure.ac | 61 +++++++++++++++++++++++++++++++++++++++++--
- lib/ChangeLog | 8 ++++++
- lib/eu-config.h | 10 +++++++
- libasm/ChangeLog | 5 ++++
- libcpu/ChangeLog | 8 ++++++
- libcpu/i386_disasm.c | 1 +
- libdw/ChangeLog | 13 +++++++++
- libdw/dwarf_begin_elf.c | 8 ++++++
- libdw/libdw.h | 2 +-
- libdwfl/ChangeLog | 20 ++++++++++++++
- libdwfl/linux-core-attach.c | 29 ++++++++++++++++++++
- libdwfl/linux-pid-attach.c | 14 ++++++++++
- libebl/ChangeLog | 5 ++++
- libelf/ChangeLog | 10 +++++++
- libelf/common.h | 4 +--
- libelf/gnuhash_xlate.h | 6 +++--
- src/ChangeLog | 30 +++++++++++++++++++++
- src/Makefile.am | 5 ++++
- src/addr2line.c | 4 +--
- src/findtextrel.c | 6 ++++-
- src/ld.h | 2 ++
- src/readelf.c | 15 +++++++----
- src/strings.c | 11 ++++++++
- src/strip.c | 6 +++++
- tests/ChangeLog | 14 ++++++++++
- tests/Makefile.am | 1 +
- tests/backtrace.c | 1 +
- tests/line2addr.c | 2 +-
- 33 files changed, 343 insertions(+), 20 deletions(-)
-
-diff --git a/ChangeLog b/ChangeLog
-index d829783..89bfd24 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -253,6 +253,8 @@
-
- 2012-01-24 Mark Wielaard <mjw@redhat.com>
-
-+ * configure.ac: Wrap AC_COMPILE_IFELSE sources in AC_LANG_SOURCE.
-+
- * COPYING: Fix address. Updated version from gnulib.
-
- 2012-01-23 Mark Wielaard <mjw@redhat.com>
-@@ -271,6 +273,9 @@
-
- 2011-10-08 Mike Frysinger <vapier@gentoo.org>
-
-+ * configure.ac (--disable-werror): Handle it, controlling BUILD_WERROR
-+ automake option.
-+
- * configure.ac: Fix use of AC_ARG_ENABLE to handle $enableval correctly.
-
- 2011-10-02 Ulrich Drepper <drepper@gmail.com>
-@@ -292,6 +297,10 @@
-
- * configure.ac (LOCALEDIR, DATADIRNAME): Removed.
-
-+2009-11-22 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac: Use sed and expr instead of modern bash extensions.
-+
- 2009-09-21 Ulrich Drepper <drepper@redhat.com>
-
- * configure.ac: Update for more modern autoconf.
-@@ -300,6 +309,10 @@
-
- * configure.ac (zip_LIBS): Check for liblzma too.
-
-+2009-08-17 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac: Check for -fgnu89-inline; add it to WEXTRA if it works.
-+
- 2009-04-19 Roland McGrath <roland@redhat.com>
-
- * configure.ac (eu_version): Round down here, not in version.h macros.
-@@ -311,6 +324,8 @@
-
- 2009-01-23 Roland McGrath <roland@redhat.com>
-
-+ * configure.ac: Check for __builtin_popcount.
-+
- * configure.ac (zlib check): Check for gzdirect, need zlib >= 1.2.2.3.
-
- * configure.ac (__thread check): Use AC_LINK_IFELSE, in case of
-@@ -391,6 +406,10 @@
- * configure.ac: Add dummy automake conditional to get dependencies
- for non-generic linker right. See src/Makefile.am.
-
-+2005-11-22 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac: Check for --as-needed linker option.
-+
- 2005-11-18 Roland McGrath <roland@redhat.com>
-
- * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable.
-@@ -438,6 +457,17 @@
- * Makefile.am (all_SUBDIRS): Add libdwfl.
- * configure.ac: Write libdwfl/Makefile.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac (WEXTRA): Check for -Wextra and set this substitution.
-+
-+ * configure.ac: Check for struct stat st_?tim members.
-+ * src/strip.c (process_file): Use st_?time if st_?tim are not there.
-+
-+ * configure.ac: Check for futimes function.
-+ * src/strip.c (handle_elf) [! HAVE_FUTIMES]: Use utimes instead.
-+ (handle_ar) [! HAVE_FUTIMES]: Likewise.
-+
- 2005-05-19 Roland McGrath <roland@redhat.com>
-
- * configure.ac [AH_BOTTOM] (INTDECL, _INTDECL): New macros.
-diff --git a/backends/ChangeLog b/backends/ChangeLog
-index fe61d9c..9599623 100644
---- a/backends/ChangeLog
-+++ b/backends/ChangeLog
-@@ -498,6 +498,10 @@
- * ppc_attrs.c (ppc_check_object_attribute): Handle tag
- GNU_Power_ABI_Struct_Return.
-
-+2009-01-23 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (libebl_%.so): Use $(LD_AS_NEEDED).
-+
- 2008-10-04 Ulrich Drepper <drepper@redhat.com>
-
- * i386_reloc.def: Fix entries for TLS_GOTDESC, TLS_DESC_CALL, and
-@@ -825,6 +829,11 @@
- * sparc_init.c: Likewise.
- * x86_64_init.c: Likewise.
-
-+2005-11-22 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (LD_AS_NEEDED): New variable, substituted by configure.
-+ (libebl_%.so rule): Use it in place of -Wl,--as-needed.
-+
- 2005-11-19 Roland McGrath <roland@redhat.com>
-
- * ppc64_reloc.def: REL30 -> ADDR30.
-@@ -847,6 +856,9 @@
- * Makefile.am (uninstall): Don't try to remove $(pkgincludedir).
- (CLEANFILES): Add libebl_$(m).so.
-
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- * ppc_reloc.def: Update bits per Alan Modra <amodra@bigpond.net.au>.
- * ppc64_reloc.def: Likewise.
-
-diff --git a/backends/Makefile.am b/backends/Makefile.am
-index 21d7bd2..fe920c9 100644
---- a/backends/Makefile.am
-+++ b/backends/Makefile.am
-@@ -119,7 +119,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw)
- $(LINK) -shared -o $(@:.map=.so) \
- -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \
- -Wl,--version-script,$(@:.so=.map) \
-- -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw)
-+ -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw)
- @$(textrel_check)
-
- libebl_i386.so: $(cpu_i386)
-diff --git a/config/ChangeLog b/config/ChangeLog
-index 64b58e1..63b3e90 100644
---- a/config/ChangeLog
-+++ b/config/ChangeLog
-@@ -106,6 +106,10 @@
-
- * known-dwarf.awk: Use gawk.
-
-+2011-10-08 Mike Frysinger <vapier@gentoo.org>
-+
-+ * eu.am [BUILD_WERROR]: Conditionalize -Werror use on this.
-+
- 2010-07-02 Ulrich Drepper <drepper@redhat.com>
-
- * elfutils.spec.in: Add more BuildRequires.
-diff --git a/config/eu.am b/config/eu.am
-index 70d32de..65af085 100644
---- a/config/eu.am
-+++ b/config/eu.am
-@@ -1,6 +1,6 @@
- ## Common automake fragments for elfutils subdirectory makefiles.
- ##
--## Copyright (C) 2010, 2014 Red Hat, Inc.
-+## Copyright (C) 2010-2011, 2014 Red Hat, Inc.
- ##
- ## This file is part of elfutils.
- ##
-@@ -29,6 +29,9 @@
- ## not, see <http://www.gnu.org/licenses/>.
- ##
-
-+WEXTRA = @WEXTRA@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
-+
- DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"'
- AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I..
-
-@@ -38,12 +41,17 @@ STACK_USAGE_WARNING=-Wstack-usage=262144
- else
- STACK_USAGE_WARNING=
- endif
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow \
- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-+ $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \
-+ $(if $($(*F)_no_Wformat),-Wno-format,-Wformat=2) \
- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
- $($(*F)_CFLAGS)
-
-+if BUILD_WERROR
-+AM_CFLAGS += $(if $($(*F)_no_Werror),,-Werror)
-+endif
-+
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
-
- DEFS.os = -DPIC -DSHARED
-diff --git a/configure.ac b/configure.ac
-index bc9ff56..27a1ef3 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -106,6 +106,55 @@ CFLAGS="$old_CFLAGS"])
- AS_IF([test "x$ac_cv_c99" != xyes],
- AC_MSG_ERROR([gcc with GNU99 support required]))
-
-+AC_CACHE_CHECK([for -Wextra option to $CC], ac_cv_cc_wextra, [dnl
-+old_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -Wextra"
-+AC_COMPILE_IFELSE([AC_LANG_SOURCE([void foo (void) { }])],
-+ ac_cv_cc_wextra=yes, ac_cv_cc_wextra=no)
-+CFLAGS="$old_CFLAGS"])
-+AC_SUBST(WEXTRA)
-+AS_IF([test "x$ac_cv_cc_wextra" = xyes], [WEXTRA=-Wextra], [WEXTRA=-W])
-+
-+AC_CACHE_CHECK([for -fgnu89-inline option to $CC], ac_cv_cc_gnu89_inline, [dnl
-+old_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -fgnu89-inline -Werror"
-+AC_COMPILE_IFELSE([AC_LANG_SOURCE([
-+void foo (void)
-+{
-+ inline void bar (void) {}
-+ bar ();
-+}
-+extern inline void baz (void) {}
-+])], ac_cv_cc_gnu89_inline=yes, ac_cv_cc_gnu89_inline=no)
-+CFLAGS="$old_CFLAGS"])
-+AS_IF([test "x$ac_cv_cc_gnu89_inline" = xyes],
-+ [WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline"])
-+
-+AC_CACHE_CHECK([for --as-needed linker option],
-+ ac_cv_as_needed, [dnl
-+cat > conftest.c <<EOF
-+int main (void) { return 0; }
-+EOF
-+if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
-+ -fPIC -shared -o conftest.so conftest.c
-+ -Wl,--as-needed 1>&AS_MESSAGE_LOG_FD])
-+then
-+ ac_cv_as_needed=yes
-+else
-+ ac_cv_as_needed=no
-+fi
-+rm -f conftest*])
-+AS_IF([test "x$ac_cv_as_needed" = xyes],
-+ [LD_AS_NEEDED=-Wl,--as-needed], [LD_AS_NEEDED=])
-+AC_SUBST(LD_AS_NEEDED)
-+
-+AC_CACHE_CHECK([for __builtin_popcount], ac_cv_popcount, [dnl
-+AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[exit (__builtin_popcount (127));]])],
-+ ac_cv_popcount=yes, ac_cv_popcount=no)])
-+AS_IF([test "x$ac_cv_popcount" = xyes],
-+ [AC_DEFINE([HAVE_BUILTIN_POPCOUNT], [1], [Have __builtin_popcount.])])
-+
-+
- AC_CACHE_CHECK([for __thread support], ac_cv_tls, [dnl
- # Use the same flags that we use for our DSOs, so the test is representative.
- # Some old compiler/linker/libc combinations fail some ways and not others.
-@@ -122,7 +171,10 @@ static __thread int a; int foo (int b) { return a + b; }]],
- CFLAGS="$save_CFLAGS"
- LDFLAGS="$save_LDFLAGS"])
- AS_IF([test "x$ac_cv_tls" != xyes],
-- AC_MSG_ERROR([__thread support required]))
-+ [AS_IF([test "$use_locks" = yes],
-+ [AC_MSG_ERROR([--enable-thread-safety requires __thread support])],
-+ [AC_DEFINE([__thread], [/* empty: no multi-thread support */],
-+ [Stubbed out if missing compiler support.])])])
-
- dnl This test must come as early as possible after the compiler configuration
- dnl tests, because the choice of the file model can (in principle) affect
-@@ -224,6 +276,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_valgrind" = yes)
- AM_CONDITIONAL(BUILD_STATIC, [dnl
- test "$use_gprof" = yes -o "$use_gcov" = yes])
-
-+AC_ARG_ENABLE([werror],
-+AS_HELP_STRING([--disable-werror],[do not build with -Werror]),
-+ [enable_werror=$enableval], [enable_werror=yes])
-+AM_CONDITIONAL(BUILD_WERROR, test "$enable_werror" = yes)
-+
- AC_ARG_ENABLE([tests-rpath],
- AS_HELP_STRING([--enable-tests-rpath],[build $ORIGIN-using rpath into tests]),
- [tests_use_rpath=$enableval], [tests_use_rpath=no])
-@@ -388,7 +445,7 @@ case "$eu_version" in
- esac
-
- # Round up to the next release API (x.y) version.
--eu_version=$(( (eu_version + 999) / 1000 ))
-+eu_version=`expr \( $eu_version + 999 \) / 1000`
-
- dnl Unique ID for this build.
- MODVERSION="Build for ${LIBEBL_SUBDIR} ${eu_version} ${ac_cv_build}"
-diff --git a/lib/ChangeLog b/lib/ChangeLog
-index d04bf17..720c98d 100644
---- a/lib/ChangeLog
-+++ b/lib/ChangeLog
-@@ -73,6 +73,9 @@
-
- 2009-01-23 Roland McGrath <roland@redhat.com>
-
-+ * eu-config.h [! HAVE_BUILTIN_POPCOUNT]
-+ (__builtin_popcount): New inline function.
-+
- * eu-config.h: Add multiple inclusion protection.
-
- 2009-01-17 Ulrich Drepper <drepper@redhat.com>
-@@ -129,6 +132,11 @@
- * Makefile.am (libeu_a_SOURCES): Add it.
- * system.h: Declare crc32_file.
-
-+2005-02-07 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-04-30 Ulrich Drepper <drepper@redhat.com>
-
- * Makefile.am: Use -ffunction-sections for xmalloc.c.
-diff --git a/lib/eu-config.h b/lib/eu-config.h
-index 400cdc6..872f6bc 100644
---- a/lib/eu-config.h
-+++ b/lib/eu-config.h
-@@ -163,6 +163,16 @@ asm (".section predict_data, \"aw\"; .previous\n"
- /* This macro is used by the tests conditionalize for standalone building. */
- #define ELFUTILS_HEADER(name) <lib##name.h>
-
-+#ifndef HAVE_BUILTIN_POPCOUNT
-+# define __builtin_popcount hakmem_popcount
-+static inline unsigned int __attribute__ ((unused))
-+hakmem_popcount (unsigned int x)
-+{
-+ /* HAKMEM 169 */
-+ unsigned int n = x - ((x >> 1) & 033333333333) - ((x >> 2) & 011111111111);
-+ return ((n + (n >> 3)) & 030707070707) % 63;
-+}
-+#endif /* HAVE_BUILTIN_POPCOUNT */
-
- #ifdef SYMBOL_VERSIONING
- # define OLD_VERSION(name, version) \
-diff --git a/libasm/ChangeLog b/libasm/ChangeLog
-index 9b25af9..32b9fd0 100644
---- a/libasm/ChangeLog
-+++ b/libasm/ChangeLog
-@@ -87,6 +87,11 @@
- * asm_error.c: Add new error ASM_E_IOERROR.
- * libasmP.h: Add ASM_E_IOERROR definition.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-02-15 Ulrich Drepper <drepper@redhat.com>
-
- * Makefile.am (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
-diff --git a/libcpu/ChangeLog b/libcpu/ChangeLog
-index a20f440..5ea23b7 100644
---- a/libcpu/ChangeLog
-+++ b/libcpu/ChangeLog
-@@ -51,6 +51,9 @@
-
- 2009-01-23 Roland McGrath <roland@redhat.com>
-
-+ * i386_disasm.c (i386_disasm): Add abort after assert-constant for old
-+ compilers that don't realize it's noreturn.
-+
- * Makefile.am (i386_parse_CFLAGS): Use quotes around command
- substitution that can produce leading whitespace.
-
-@@ -380,6 +383,11 @@
- * defs/i386.doc: New file.
- * defs/x86_64: New file.
-
-+2005-04-04 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it instead of -Wextra.
-+
- 2005-02-15 Ulrich Drepper <drepper@redhat.com>
-
- * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
-diff --git a/libcpu/i386_disasm.c b/libcpu/i386_disasm.c
-index 832241f..c7a0df0 100644
---- a/libcpu/i386_disasm.c
-+++ b/libcpu/i386_disasm.c
-@@ -822,6 +822,7 @@ i386_disasm (const uint8_t **startp, const uint8_t *end, GElf_Addr addr,
-
- default:
- assert (! "INVALID not handled");
-+ abort ();
- }
- }
- else
-diff --git a/libdw/ChangeLog b/libdw/ChangeLog
-index 487e34a..06c737b 100644
---- a/libdw/ChangeLog
-+++ b/libdw/ChangeLog
-@@ -889,6 +889,10 @@
-
- * Makefile.am (known-dwarf.h): Run gawk on config/known-dwarf.awk.
-
-+2011-07-20 Mark Wielaard <mjw@redhat.com>
-+
-+ * dwarf_begin_elf.c: Add fallback for be64toh if not defined.
-+
- 2011-07-14 Mark Wielaard <mjw@redhat.com>
-
- * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info.
-@@ -1248,6 +1252,10 @@
-
- * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too.
-
-+2009-08-17 Roland McGrath <roland@redhat.com>
-+
-+ * libdw.h: Disable extern inlines for GCC 4.2.
-+
- 2009-08-10 Roland McGrath <roland@redhat.com>
-
- * dwarf_getscopevar.c: Use dwarf_diename.
-@@ -2016,6 +2024,11 @@
-
- 2005-05-31 Roland McGrath <roland@redhat.com>
-
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
- * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to
- formref offset.
-
-diff --git a/libdw/dwarf_begin_elf.c b/libdw/dwarf_begin_elf.c
-index 4e0d590..a6616a1 100644
---- a/libdw/dwarf_begin_elf.c
-+++ b/libdw/dwarf_begin_elf.c
-@@ -47,6 +47,14 @@
- #if USE_ZLIB
- # include <endian.h>
- # define crc32 loser_crc32
-+# ifndef be64toh
-+# include <byteswap.h>
-+# if __BYTE_ORDER == __LITTLE_ENDIAN
-+# define be64toh(x) bswap_64 (x)
-+# else
-+# define be64toh(x) (x)
-+# endif
-+# endif
- # include <zlib.h>
- # undef crc32
- #endif
-diff --git a/libdw/libdw.h b/libdw/libdw.h
-index 473e1a2..5a511cd 100644
---- a/libdw/libdw.h
-+++ b/libdw/libdw.h
-@@ -1004,7 +1004,7 @@ extern Dwarf_OOM dwarf_new_oom_handler (Dwarf *dbg, Dwarf_OOM handler);
-
-
- /* Inline optimizations. */
--#ifdef __OPTIMIZE__
-+#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2)
- /* Return attribute code of given attribute. */
- __libdw_extern_inline unsigned int
- dwarf_whatattr (Dwarf_Attribute *attr)
-diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog
-index a5253e2..59abfac 100644
---- a/libdwfl/ChangeLog
-+++ b/libdwfl/ChangeLog
-@@ -704,6 +704,21 @@
- (dwfl_module_addrsym) (i_to_symfile): New function.
- (dwfl_module_addrsym) (search_table): Use it.
-
-+2013-11-09 Jan Kratochvil <jan.kratochvil@redhat.com>
-+
-+ Older OS compatibility bits.
-+ * linux-core-attach.c (be64toh, le64toh, be32toh, le32toh): Provide
-+ fallbacks if not defined by system.
-+
-+2013-11-09 Jan Kratochvil <jan.kratochvil@redhat.com>
-+
-+ Handle T-stopped detach for old kernels.
-+ * linux-pid-attach.c (struct pid_arg): New field stopped.
-+ (ptrace_attach): New parameter stoppedp. Set it appropriately.
-+ (pid_set_initial_registers): Pass the new field.
-+ (pid_thread_detach): Handle the case of STOPPED for old kernels.
-+ (__libdwfl_attach_state_for_pid): Initialize STOPPED.
-+
- 2013-11-07 Jan Kratochvil <jan.kratochvil@redhat.com>
- Mark Wielaard <mjw@redhat.com>
-
-@@ -2469,6 +2484,11 @@
-
- 2005-07-21 Roland McGrath <roland@redhat.com>
-
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
-+2005-07-21 Roland McGrath <roland@redhat.com>
-+<