diff --git a/package/libs/elfutils/Makefile b/package/libs/elfutils/Makefile index 5303e9e110..b1e52ba5cf 100644 --- a/package/libs/elfutils/Makefile +++ b/package/libs/elfutils/Makefile @@ -7,12 +7,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=elfutils -PKG_VERSION:=0.163 +PKG_VERSION:=0.164 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://fedorahosted.org/releases/e/l/$(PKG_NAME)/$(PKG_VERSION) -PKG_MD5SUM:=77ce87f259987d2e54e4d87b86cbee41 +PKG_MD5SUM:=2e4536c1c48034f188a80789a59114d8 PKG_MAINTAINER:=Luiz Angelo Daros de Luca PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING COPYING-GPLV2 COPYING-LGPLV3 diff --git a/package/libs/elfutils/patches/001-elfutils-portability.patch b/package/libs/elfutils/patches/001-elfutils-portability.patch deleted file mode 100644 index 46954aadc4..0000000000 --- a/package/libs/elfutils/patches/001-elfutils-portability.patch +++ /dev/null @@ -1,2059 +0,0 @@ -diffelfutils/backends/ChangeLog git-portable/backends/ChangeLog ---- 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 -+ -+ * Makefile.am (libebl_%.so): Use $(LD_AS_NEEDED). -+ - 2008-10-04 Ulrich Drepper - - * 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 -+ -+ * 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 - - * 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 . - * ppc64_reloc.def: Likewise. - ---- a/backends/Makefile.am -+++ b/backends/Makefile.am -@@ -119,7 +119,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a - $(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) ---- a/backends/Makefile.in -+++ b/backends/Makefile.in -@@ -90,7 +90,8 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING - subdir = backends - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -300,6 +301,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -331,6 +333,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -398,14 +401,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \ -+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $($(*F)_CFLAGS) $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda $(foreach m,$(modules), libebl_$(m).map \ - libebl_$(m).so $(am_libebl_$(m)_pic_a_OBJECTS)) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" -@@ -912,7 +915,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a - $(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) ---- a/ChangeLog -+++ b/ChangeLog -@@ -258,6 +258,8 @@ - - 2012-01-24 Mark Wielaard - -+ * configure.ac: Wrap AC_COMPILE_IFELSE sources in AC_LANG_SOURCE. -+ - * COPYING: Fix address. Updated version from gnulib. - - 2012-01-23 Mark Wielaard -@@ -276,6 +278,9 @@ - - 2011-10-08 Mike Frysinger - -+ * 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 -@@ -297,6 +302,10 @@ - - * configure.ac (LOCALEDIR, DATADIRNAME): Removed. - -+2009-11-22 Roland McGrath -+ -+ * configure.ac: Use sed and expr instead of modern bash extensions. -+ - 2009-09-21 Ulrich Drepper - - * configure.ac: Update for more modern autoconf. -@@ -305,6 +314,10 @@ - - * configure.ac (zip_LIBS): Check for liblzma too. - -+2009-08-17 Roland McGrath -+ -+ * configure.ac: Check for -fgnu89-inline; add it to WEXTRA if it works. -+ - 2009-04-19 Roland McGrath - - * configure.ac (eu_version): Round down here, not in version.h macros. -@@ -316,6 +329,8 @@ - - 2009-01-23 Roland McGrath - -+ * 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 -@@ -396,6 +411,10 @@ - * configure.ac: Add dummy automake conditional to get dependencies - for non-generic linker right. See src/Makefile.am. - -+2005-11-22 Roland McGrath -+ -+ * configure.ac: Check for --as-needed linker option. -+ - 2005-11-18 Roland McGrath - - * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable. -@@ -443,6 +462,17 @@ - * Makefile.am (all_SUBDIRS): Add libdwfl. - * configure.ac: Write libdwfl/Makefile. - -+2005-05-31 Roland McGrath -+ -+ * 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 - - * configure.ac [AH_BOTTOM] (INTDECL, _INTDECL): New macros. ---- a/config/ChangeLog -+++ b/config/ChangeLog -@@ -110,6 +110,10 @@ - - * known-dwarf.awk: Use gawk. - -+2011-10-08 Mike Frysinger -+ -+ * eu.am [BUILD_WERROR]: Conditionalize -Werror use on this. -+ - 2010-07-02 Ulrich Drepper - - * elfutils.spec.in: Add more BuildRequires. ---- 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 . - ## - -+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 ---- a/config/Makefile.in -+++ b/config/Makefile.in -@@ -160,6 +160,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -191,6 +192,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ ---- a/config.h.in -+++ b/config.h.in -@@ -6,6 +6,12 @@ - /* Should ar and ranlib use -D behavior by default? */ - #undef DEFAULT_AR_DETERMINISTIC - -+/* Have __builtin_popcount. */ -+#undef HAVE_BUILTIN_POPCOUNT -+ -+/* Define to 1 if you have the `futimens' function. */ -+#undef HAVE_FUTIMENS -+ - /* Define to 1 if you have the header file. */ - #undef HAVE_INTTYPES_H - -@@ -105,4 +111,7 @@ - /* Define for large files, on AIX-style hosts. */ - #undef _LARGE_FILES - -+/* Stubbed out if missing compiler support. */ -+#undef __thread -+ - #include ---- a/configure -+++ b/configure -@@ -672,6 +672,8 @@ ZLIB_TRUE - LIBEBL_SUBDIR - TESTS_RPATH_FALSE - TESTS_RPATH_TRUE -+BUILD_WERROR_FALSE -+BUILD_WERROR_TRUE - BUILD_STATIC_FALSE - BUILD_STATIC_TRUE - USE_VALGRIND_FALSE -@@ -687,6 +689,8 @@ NEVER_TRUE - base_cpu - NATIVE_LD_FALSE - NATIVE_LD_TRUE -+LD_AS_NEEDED -+WEXTRA - NM - READELF - ac_ct_AR -@@ -807,6 +811,7 @@ enable_gprof - enable_gcov - enable_sanitize_undefined - enable_valgrind -+enable_werror - enable_tests_rpath - enable_libebl_subdir - with_zlib -@@ -1467,6 +1472,7 @@ Optional Features: - --enable-sanitize-undefined - Use gcc undefined behaviour sanitizer - --enable-valgrind run all tests under valgrind -+ --disable-werror do not build with -Werror - --enable-tests-rpath build $ORIGIN-using rpath into tests - --enable-libebl-subdir=DIR - install libebl_CPU modules in $(libdir)/DIR -@@ -1665,6 +1671,73 @@ fi - - } # ac_fn_c_try_link - -+# ac_fn_c_check_func LINENO FUNC VAR -+# ---------------------------------- -+# Tests whether FUNC exists, setting the cache variable VAR accordingly -+ac_fn_c_check_func () -+{ -+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -+$as_echo_n "checking for $2... " >&6; } -+if eval \${$3+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+/* Define $2 to an innocuous variant, in case declares $2. -+ For example, HP-UX 11i declares gettimeofday. */ -+#define $2 innocuous_$2 -+ -+/* System header to define __stub macros and hopefully few prototypes, -+ which can conflict with char $2 (); below. -+ Prefer to if __STDC__ is defined, since -+ exists even on freestanding compilers. */ -+ -+#ifdef __STDC__ -+# include -+#else -+# include -+#endif -+ -+#undef $2 -+ -+/* Override any GCC internal prototype to avoid an error. -+ Use char because int might match the return type of a GCC -+ builtin and then its argument prototype would still apply. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+char $2 (); -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined __stub_$2 || defined __stub___$2 -+choke me -+#endif -+ -+int -+main () -+{ -+return $2 (); -+ ; -+ return 0; -+} -+_ACEOF -+if ac_fn_c_try_link "$LINENO"; then : -+ eval "$3=yes" -+else -+ eval "$3=no" -+fi -+rm -f core conftest.err conftest.$ac_objext \ -+ conftest$ac_exeext conftest.$ac_ext -+fi -+eval ac_res=\$$3 -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -+$as_echo "$ac_res" >&6; } -+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -+ -+} # ac_fn_c_check_func -+ - # ac_fn_c_try_run LINENO - # ---------------------- - # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes -@@ -4825,6 +4898,18 @@ else - fi - - -+for ac_func in futimens -+do : -+ ac_fn_c_check_func "$LINENO" "futimens" "ac_cv_func_futimens" -+if test "x$ac_cv_func_futimens" = xyes; then : -+ cat >>confdefs.h <<_ACEOF -+#define HAVE_FUTIMENS 1 -+_ACEOF -+ -+fi -+done -+ -+ - # We use -std=gnu99 but have explicit checks for some language constructs - # and GNU extensions since some compilers claim GNU99 support, but don't - # really support all language extensions. In particular we need -@@ -4873,6 +4958,130 @@ if test "x$ac_cv_c99" != xyes; then : - as_fn_error $? "gcc with GNU99 support required" "$LINENO" 5 - fi - -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Wextra option to $CC" >&5 -+$as_echo_n "checking for -Wextra option to $CC... " >&6; } -+if ${ac_cv_cc_wextra+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ old_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -Wextra" -+cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+void foo (void) { } -+_ACEOF -+if ac_fn_c_try_compile "$LINENO"; then : -+ ac_cv_cc_wextra=yes -+else -+ ac_cv_cc_wextra=no -+fi -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+CFLAGS="$old_CFLAGS" -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_wextra" >&5 -+$as_echo "$ac_cv_cc_wextra" >&6; } -+ -+if test "x$ac_cv_cc_wextra" = xyes; then : -+ WEXTRA=-Wextra -+else -+ WEXTRA=-W -+fi -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fgnu89-inline option to $CC" >&5 -+$as_echo_n "checking for -fgnu89-inline option to $CC... " >&6; } -+if ${ac_cv_cc_gnu89_inline+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ old_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -fgnu89-inline -Werror" -+cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+ -+void foo (void) -+{ -+ inline void bar (void) {} -+ bar (); -+} -+extern inline void baz (void) {} -+ -+_ACEOF -+if ac_fn_c_try_compile "$LINENO"; then : -+ ac_cv_cc_gnu89_inline=yes -+else -+ ac_cv_cc_gnu89_inline=no -+fi -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+CFLAGS="$old_CFLAGS" -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_gnu89_inline" >&5 -+$as_echo "$ac_cv_cc_gnu89_inline" >&6; } -+if test "x$ac_cv_cc_gnu89_inline" = xyes; then : -+ WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline" -+fi -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --as-needed linker option" >&5 -+$as_echo_n "checking for --as-needed linker option... " >&6; } -+if ${ac_cv_as_needed+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; } -+then -+ ac_cv_as_needed=yes -+else -+ ac_cv_as_needed=no -+fi -+rm -f conftest* -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_as_needed" >&5 -+$as_echo "$ac_cv_as_needed" >&6; } -+if test "x$ac_cv_as_needed" = xyes; then : -+ LD_AS_NEEDED=-Wl,--as-needed -+else -+ LD_AS_NEEDED= -+fi -+ -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_popcount" >&5 -+$as_echo_n "checking for __builtin_popcount... " >&6; } -+if ${ac_cv_popcount+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+exit (__builtin_popcount (127)); -+ ; -+ return 0; -+} -+_ACEOF -+if ac_fn_c_try_link "$LINENO"; then : -+ ac_cv_popcount=yes -+else -+ ac_cv_popcount=no -+fi -+rm -f core conftest.err conftest.$ac_objext \ -+ conftest$ac_exeext conftest.$ac_ext -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_popcount" >&5 -+$as_echo "$ac_cv_popcount" >&6; } -+if test "x$ac_cv_popcount" = xyes; then : -+ -+$as_echo "#define HAVE_BUILTIN_POPCOUNT 1" >>confdefs.h -+ -+fi -+ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __thread support" >&5 - $as_echo_n "checking for __thread support... " >&6; } - if ${ac_cv_tls+:} false; then : -@@ -4910,7 +5119,13 @@ fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_tls" >&5 - $as_echo "$ac_cv_tls" >&6; } - if test "x$ac_cv_tls" != xyes; then : -- as_fn_error $? "__thread support required" "$LINENO" 5 -+ if test "$use_locks" = yes; then : -+ as_fn_error $? "--enable-thread-safety requires __thread support" "$LINENO" 5 -+else -+ -+$as_echo "#define __thread /* empty: no multi-thread support */" >>confdefs.h -+ -+fi - fi - - # Check whether --enable-largefile was given. -@@ -5318,6 +5533,22 @@ else - fi - - -+# Check whether --enable-werror was given. -+if test "${enable_werror+set}" = set; then : -+ enableval=$enable_werror; enable_werror=$enableval -+else -+ enable_werror=yes -+fi -+ -+ if test "$enable_werror" = yes; then -+ BUILD_WERROR_TRUE= -+ BUILD_WERROR_FALSE='#' -+else -+ BUILD_WERROR_TRUE='#' -+ BUILD_WERROR_FALSE= -+fi -+ -+ - # Check whether --enable-tests-rpath was given. - if test "${enable_tests_rpath+set}" = set; then : - enableval=$enable_tests_rpath; tests_use_rpath=$enableval -@@ -6199,7 +6430,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` - - MODVERSION="Build for ${LIBEBL_SUBDIR} ${eu_version} ${ac_cv_build}" - -@@ -7088,6 +7319,10 @@ if test -z "${BUILD_STATIC_TRUE}" && tes - as_fn_error $? "conditional \"BUILD_STATIC\" was never defined. - Usually this means the macro was only invoked conditionally." "$LINENO" 5 - fi -+if test -z "${BUILD_WERROR_TRUE}" && test -z "${BUILD_WERROR_FALSE}"; then -+ as_fn_error $? "conditional \"BUILD_WERROR\" was never defined. -+Usually this means the macro was only invoked conditionally." "$LINENO" 5 -+fi - if test -z "${TESTS_RPATH_TRUE}" && test -z "${TESTS_RPATH_FALSE}"; then - as_fn_error $? "conditional \"TESTS_RPATH\" was never defined. - Usually this means the macro was only invoked conditionally." "$LINENO" 5 ---- a/configure.ac -+++ b/configure.ac -@@ -73,6 +73,8 @@ m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) - AC_CHECK_TOOL([READELF], [readelf]) - AC_CHECK_TOOL([NM], [nm]) - -+AC_CHECK_FUNCS([futimens]) -+ - # We use -std=gnu99 but have explicit checks for some language constructs - # and GNU extensions since some compilers claim GNU99 support, but don't - # really support all language extensions. In particular we need -@@ -106,6 +108,54 @@ 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 <&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 +172,10 @@ static __thread int a; int foo (int 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 +277,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_ - 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 +446,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}" ---- a/lib/ChangeLog -+++ b/lib/ChangeLog -@@ -73,6 +73,9 @@ - - 2009-01-23 Roland McGrath - -+ * eu-config.h [! HAVE_BUILTIN_POPCOUNT] -+ (__builtin_popcount): New inline function. -+ - * eu-config.h: Add multiple inclusion protection. - - 2009-01-17 Ulrich Drepper -@@ -129,6 +132,11 @@ - * Makefile.am (libeu_a_SOURCES): Add it. - * system.h: Declare crc32_file. - -+2005-02-07 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-04-30 Ulrich Drepper - - * Makefile.am: Use -ffunction-sections for xmalloc.c. ---- a/lib/eu-config.h -+++ b/lib/eu-config.h -@@ -163,6 +163,17 @@ asm (".section predict_data, \"aw\"; .pr - /* This macro is used by the tests conditionalize for standalone building. */ - #define ELFUTILS_HEADER(name) - -+#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) \ ---- a/lib/Makefile.in -+++ b/lib/Makefile.in -@@ -89,7 +89,8 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING - subdir = lib - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -212,6 +213,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -243,6 +245,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -309,13 +312,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+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) -fpic -+ $($(*F)_CFLAGS) $(am__append_1) -fpic - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda - textrel_msg = echo "WARNING: TEXTREL found in '$@'" - @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg) ---- 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 -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-02-15 Ulrich Drepper - - * Makefile.am (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. ---- a/libasm/Makefile.in -+++ b/libasm/Makefile.in -@@ -90,9 +90,10 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING - noinst_PROGRAMS = $(am__EXEEXT_1) --@USE_LOCKS_TRUE@am__append_2 = -lpthread -+@USE_LOCKS_TRUE@am__append_3 = -lpthread - subdir = libasm - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -263,6 +264,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -294,6 +296,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -361,14 +364,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \ -+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $($(*F)_CFLAGS) $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda $(am_libasm_pic_a_OBJECTS) \ - libasm.so.$(VERSION) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" -@@ -395,7 +398,7 @@ libasm_a_SOURCES = asm_begin.c asm_abort - - libasm_pic_a_SOURCES = - am_libasm_pic_a_OBJECTS = $(libasm_a_SOURCES:.c=.os) --libasm_so_LDLIBS = $(am__append_2) -+libasm_so_LDLIBS = $(am__append_3) - libasm_so_SOURCES = - noinst_HEADERS = libasmP.h symbolhash.h - EXTRA_DIST = libasm.map ---- a/libcpu/ChangeLog -+++ b/libcpu/ChangeLog -@@ -51,6 +51,9 @@ - - 2009-01-23 Roland McGrath - -+ * 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 -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it instead of -Wextra. -+ - 2005-02-15 Ulrich Drepper - - * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. ---- a/libcpu/i386_disasm.c -+++ b/libcpu/i386_disasm.c -@@ -822,6 +822,7 @@ i386_disasm (const uint8_t **startp, con - - default: - assert (! "INVALID not handled"); -+ abort (); - } - } - else ---- a/libcpu/Makefile.in -+++ b/libcpu/Makefile.in -@@ -90,7 +90,8 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING - @MAINTAINER_MODE_TRUE@noinst_PROGRAMS = i386_gendis$(EXEEXT) - subdir = libcpu - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -@@ -238,6 +239,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = lex.$( -+ -+ * dwarf_begin_elf.c: Add fallback for be64toh if not defined. -+ - 2011-07-14 Mark Wielaard - - * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info. -@@ -1263,6 +1267,10 @@ - - * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too. - -+2009-08-17 Roland McGrath -+ -+ * libdw.h: Disable extern inlines for GCC 4.2. -+ - 2009-08-10 Roland McGrath - - * dwarf_getscopevar.c: Use dwarf_diename. -@@ -2031,6 +2039,11 @@ - - 2005-05-31 Roland McGrath - -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ -+2005-05-31 Roland McGrath -+ - * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to - formref offset. - ---- a/libdw/dwarf_begin_elf.c -+++ b/libdw/dwarf_begin_elf.c -@@ -47,6 +47,14 @@ - #if USE_ZLIB - # include - # define crc32 loser_crc32 -+# ifndef be64toh -+# include -+# if __BYTE_ORDER == __LITTLE_ENDIAN -+# define be64toh(x) bswap_64 (x) -+# else -+# define be64toh(x) (x) -+# endif -+# endif - # include - # undef crc32 - #endif ---- a/libdw/libdw.h -+++ b/libdw/libdw.h -@@ -1004,7 +1004,7 @@ extern Dwarf_OOM dwarf_new_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) ---- a/libdw/Makefile.in -+++ b/libdw/Makefile.in -@@ -90,8 +90,9 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING --@BUILD_STATIC_TRUE@am__append_2 = -fpic -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING -+@BUILD_STATIC_TRUE@am__append_3 = -fpic - noinst_PROGRAMS = $(am__EXEEXT_1) - subdir = libdw - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -@@ -312,6 +313,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -343,6 +345,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -409,13 +412,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+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) $(am__append_2) -+ $($(*F)_CFLAGS) $(am__append_1) $(am__append_3) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda - textrel_msg = echo "WARNING: TEXTREL found in '$@'" - @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg) ---- a/libdwelf/Makefile.in -+++ b/libdwelf/Makefile.in -@@ -89,7 +89,8 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING - subdir = libdwelf - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -242,6 +243,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -273,6 +275,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -340,14 +343,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \ -+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $($(*F)_CFLAGS) $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda $(am_libdwelf_pic_a_OBJECTS) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" - @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg) ---- a/libdwfl/ChangeLog -+++ b/libdwfl/ChangeLog -@@ -713,6 +713,21 @@ - (dwfl_module_addrsym) (i_to_symfile): New function. - (dwfl_module_addrsym) (search_table): Use it. - -+2013-11-09 Jan Kratochvil -+ -+ Older OS compatibility bits. -+ * linux-core-attach.c (be64toh, le64toh, be32toh, le32toh): Provide -+ fallbacks if not defined by system. -+ -+2013-11-09 Jan Kratochvil -+ -+ 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 - Mark Wielaard - -@@ -2478,6 +2493,11 @@ - - 2005-07-21 Roland McGrath - -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ -+2005-07-21 Roland McGrath -+ - * Makefile.am (noinst_HEADERS): Add loc2c.c. - - * test2.c (main): Check sscanf result to quiet warning. ---- a/libdwfl/linux-core-attach.c -+++ b/libdwfl/linux-core-attach.c -@@ -29,6 +29,35 @@ - #include "libdwflP.h" - #include - #include "system.h" -+#include -+#include -+#if __BYTE_ORDER == __LITTLE_ENDIAN -+# ifndef be64toh -+# define be64toh(x) bswap_64 (x) -+# endif -+# ifndef le64toh -+# define le64toh(x) (x) -+# endif -+# ifndef be32toh -+# define be32toh(x) bswap_32 (x) -+# endif -+# ifndef le32toh -+# define le32toh(x) (x) -+# endif -+#else -+# ifndef be64toh -+# define be64toh(x) (x) -+# endif -+# ifndef le64toh -+# define le64toh(x) bswap_64 (x) -+# endif -+# ifndef be32toh -+# define be32toh(x) (x) -+# endif -+# ifndef le32toh -+# define le32toh(x) bswap_32 (x) -+# endif -+#endif - - #include "../libdw/memory-access.h" - ---- a/libdwfl/linux-pid-attach.c -+++ b/libdwfl/linux-pid-attach.c -@@ -255,6 +255,11 @@ void - internal_function - __libdwfl_ptrace_detach (pid_t tid, bool tid_was_stopped) - { -+ // Older kernels (tested kernel-2.6.18-348.12.1.el5.x86_64) need special -+ // handling of the detachment to keep the process State: T (stopped). -+ if (tid_was_stopped) -+ syscall (__NR_tkill, tid, SIGSTOP); -+ - /* This handling is needed only on older Linux kernels such as - 2.6.32-358.23.2.el6.ppc64. Later kernels such as - 3.11.7-200.fc19.x86_64 remember the T (stopped) state -@@ -262,6 +267,15 @@ __libdwfl_ptrace_detach (pid_t tid, bool - PTRACE_DETACH. */ - ptrace (PTRACE_DETACH, tid, NULL, - (void *) (intptr_t) (tid_was_stopped ? SIGSTOP : 0)); -+ -+ if (tid_was_stopped) -+ { -+ // Wait till the SIGSTOP settles down. -+ int i; -+ for (i = 0; i < 100000; i++) -+ if (linux_proc_pid_is_stopped (tid)) -+ break; -+ } - } - - static void ---- a/libdwfl/Makefile.in -+++ b/libdwfl/Makefile.in -@@ -89,10 +89,11 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING --@ZLIB_TRUE@am__append_2 = gzip.c --@BZLIB_TRUE@am__append_3 = bzip2.c --@LZMA_TRUE@am__append_4 = lzma.c -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING -+@ZLIB_TRUE@am__append_3 = gzip.c -+@BZLIB_TRUE@am__append_4 = bzip2.c -+@LZMA_TRUE@am__append_5 = lzma.c - subdir = libdwfl - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -301,6 +302,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -332,6 +334,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -399,14 +402,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \ -+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $($(*F)_CFLAGS) $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda $(am_libdwfl_pic_a_OBJECTS) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" - @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg) -@@ -435,8 +438,8 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en - dwfl_module_register_names.c dwfl_segment_report_module.c \ - link_map.c core-file.c open.c image-header.c dwfl_frame.c \ - frame_unwind.c dwfl_frame_pc.c linux-pid-attach.c \ -- linux-core-attach.c dwfl_frame_regs.c $(am__append_2) \ -- $(am__append_3) $(am__append_4) -+ linux-core-attach.c dwfl_frame_regs.c $(am__append_3) \ -+ $(am__append_4) $(am__append_5) - libdwfl = $(libdw) - libdw = ../libdw/libdw.so - libelf = ../libelf/libelf.so ---- a/libebl/ChangeLog -+++ b/libebl/ChangeLog -@@ -785,6 +785,11 @@ - * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency - tracking works right. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-21 Ulrich Drepper - - * libebl_x86_64.map: Add x86_64_core_note. ---- a/libebl/Makefile.in -+++ b/libebl/Makefile.in -@@ -89,7 +89,8 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING - subdir = libebl - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -264,6 +265,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -295,6 +297,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -362,13 +365,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+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) -fpic -+ $($(*F)_CFLAGS) $(am__append_1) -fpic - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda $(am_libebl_pic_a_OBJECTS) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" - @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg) ---- a/libelf/ChangeLog -+++ b/libelf/ChangeLog -@@ -412,6 +412,11 @@ - - * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check. - -+2011-03-10 Roland McGrath -+ -+ * gnuhash_xlate.h (elf_cvt_gnuhash): Avoid post-increment in bswap_32 -+ argument, since some implementations are buggy macros. -+ - 2011-02-26 Mark Wielaard - - * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini. -@@ -1089,6 +1094,11 @@ - - * elf.h: Update from glibc. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-08 Roland McGrath - - * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now. ---- a/libelf/common.h -+++ b/libelf/common.h -@@ -139,7 +139,7 @@ libelf_release_all (Elf *elf) - (Var) = (sizeof (Var) == 1 \ - ? (unsigned char) (Var) \ - : (sizeof (Var) == 2 \ -- ? bswap_16 (Var) \ -+ ? (unsigned short int) bswap_16 (Var) \ - : (sizeof (Var) == 4 \ - ? bswap_32 (Var) \ - : bswap_64 (Var)))) -@@ -148,7 +148,7 @@ libelf_release_all (Elf *elf) - (Dst) = (sizeof (Var) == 1 \ - ? (unsigned char) (Var) \ - : (sizeof (Var) == 2 \ -- ? bswap_16 (Var) \ -+ ? (unsigned short int) bswap_16 (Var) \ - : (sizeof (Var) == 4 \ - ? bswap_32 (Var) \ - : bswap_64 (Var)))) ---- a/libelf/gnuhash_xlate.h -+++ b/libelf/gnuhash_xlate.h -@@ -1,5 +1,5 @@ - /* Conversion functions for versioning information. -- Copyright (C) 2006, 2007 Red Hat, Inc. -+ Copyright (C) 2006-2011 Red Hat, Inc. - This file is part of elfutils. - Written by Ulrich Drepper , 2006. - -@@ -68,7 +68,9 @@ elf_cvt_gnuhash (void *dest, const void - dest32 = (Elf32_Word *) &dest64[bitmask_words]; - while (len >= 4) - { -- *dest32++ = bswap_32 (*src32++); -+ *dest32 = bswap_32 (*src32); -+ ++dest32; -+ ++src32; - len -= 4; - } - } ---- a/libelf/Makefile.in -+++ b/libelf/Makefile.in -@@ -90,10 +90,11 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING --@BUILD_STATIC_TRUE@am__append_2 = -fpic -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING -+@BUILD_STATIC_TRUE@am__append_3 = -fpic - noinst_PROGRAMS = $(am__EXEEXT_1) --@USE_LOCKS_TRUE@am__append_3 = -lpthread -+@USE_LOCKS_TRUE@am__append_4 = -lpthread - subdir = libelf - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -305,6 +306,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -336,6 +338,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -401,13 +404,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+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) $(am__append_2) -+ $($(*F)_CFLAGS) $(am__append_1) $(am__append_3) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda $(am_libelf_pic_a_OBJECTS) \ - libelf.so.$(VERSION) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" -@@ -470,7 +474,7 @@ libelf_a_SOURCES = elf_version.c elf_has - - libelf_pic_a_SOURCES = - am_libelf_pic_a_OBJECTS = $(libelf_a_SOURCES:.c=.os) --libelf_so_LDLIBS = $(am__append_3) -+libelf_so_LDLIBS = $(am__append_4) - libelf_so_SOURCES = - noinst_HEADERS = elf.h abstract.h common.h exttypes.h gelf_xlate.h libelfP.h \ - version_xlate.h gnuhash_xlate.h note_xlate.h dl-hash.h ---- a/m4/Makefile.in -+++ b/m4/Makefile.in -@@ -159,6 +159,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -190,6 +191,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ ---- a/Makefile.in -+++ b/Makefile.in -@@ -277,6 +277,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -308,6 +309,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ ---- a/src/addr2line.c -+++ b/src/addr2line.c -@@ -622,10 +622,10 @@ handle_address (const char *string, Dwfl - bool parsed = false; - int i, j; - char *name = NULL; -- if (sscanf (string, "(%m[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 -+ if (sscanf (string, "(%a[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 - && string[i] == '\0') - parsed = adjust_to_section (name, &addr, dwfl); -- switch (sscanf (string, "%m[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) -+ switch (sscanf (string, "%a[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) - { - default: - break; ---- a/src/ar.c -+++ b/src/ar.c -@@ -685,7 +685,14 @@ do_oper_extract (int oper, const char *a - tv[1].tv_sec = arhdr->ar_date; - tv[1].tv_nsec = 0; - -+#ifdef HAVE_FUTIMENS - if (unlikely (futimens (xfd, tv) != 0)) -+#else -+ struct timeval times[2]; -+ TIMESPEC_TO_TIMEVAL (×[0], &tv[0]); -+ TIMESPEC_TO_TIMEVAL (×[1], &tv[1]); -+ if (unlikely (futimes (xfd, times) != 0)) -+#endif - { - error (0, errno, - gettext ("cannot change modification time of %s"), ---- a/src/ChangeLog -+++ b/src/ChangeLog -@@ -1626,8 +1626,16 @@ - * readelf.c (attr_callback): Use print_block only when we don't use - print_ops. - -+2009-08-17 Roland McGrath -+ -+ * ld.h: Disable extern inlines for GCC 4.2. -+ - 2009-08-14 Roland McGrath - -+ * strings.c (read_block): Conditionalize posix_fadvise use -+ on [POSIX_FADV_SEQUENTIAL]. -+ From Petr Salinger . -+ - * ar.c (do_oper_extract): Use pathconf instead of statfs. - - 2009-08-01 Ulrich Drepper -@@ -1791,6 +1799,8 @@ - * readelf.c (print_debug_frame_section): Use t instead of j formats - for ptrdiff_t OFFSET. - -+ * addr2line.c (handle_address): Use %a instead of %m for compatibility. -+ - 2009-01-21 Ulrich Drepper - - * elflint.c (check_program_header): Fix typo in .eh_frame_hdr section -@@ -1974,6 +1984,11 @@ - that matches its PT_LOAD's p_flags &~ PF_W. On sparc, PF_X really - is valid in RELRO. - -+2008-03-01 Roland McGrath -+ -+ * readelf.c (dump_archive_index): Tweak portability hack -+ to match [__GNUC__ < 4] too. -+ - 2008-02-29 Roland McGrath - - * readelf.c (print_attributes): Add a cast. -@@ -2225,6 +2240,8 @@ - - * readelf.c (hex_dump): Fix rounding error in whitespace calculation. - -+ * Makefile.am (readelf_no_Werror): New variable. -+ - 2007-10-15 Roland McGrath - - * make-debug-archive.in: New file. -@@ -2664,6 +2681,10 @@ - * elflint.c (valid_e_machine): Add EM_ALPHA. - Reported by Christian Aichinger . - -+ * strings.c (map_file): Define POSIX_MADV_SEQUENTIAL to -+ MADV_SEQUENTIAL if undefined. Don't call posix_madvise -+ if neither is defined. -+ - 2006-08-08 Ulrich Drepper - - * elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB. -@@ -2740,6 +2761,10 @@ - * Makefile.am: Add hacks to create dependency files for non-generic - linker. - -+2006-04-05 Roland McGrath -+ -+ * strings.c (MAP_POPULATE): Define to 0 if undefined. -+ - 2006-06-12 Ulrich Drepper - - * ldgeneric.c (ld_generic_generate_sections): Don't create .interp -@@ -3088,6 +3113,11 @@ - * readelf.c (print_debug_loc_section): Fix indentation for larger - address size. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-30 Roland McGrath - - * readelf.c (print_debug_line_section): Print section offset of each ---- a/src/findtextrel.c -+++ b/src/findtextrel.c -@@ -503,7 +503,11 @@ ptrcompare (const void *p1, const void * - - - static void --check_rel (size_t nsegments, struct segments segments[nsegments], -+check_rel (size_t nsegments, struct segments segments[ -+#if __GNUC__ >= 4 -+ nsegments -+#endif -+ ], - GElf_Addr addr, Elf *elf, Elf_Scn *symscn, Dwarf *dw, - const char *fname, bool more_than_one, void **knownsrcs) - { ---- a/src/ld.h -+++ b/src/ld.h -@@ -1114,6 +1114,7 @@ extern bool dynamically_linked_p (void); - - /* Checked whether the symbol is undefined and referenced from a DSO. */ - extern bool linked_from_dso_p (struct scninfo *scninfo, size_t symidx); -+#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) - #ifdef __GNUC_STDC_INLINE__ - __attribute__ ((__gnu_inline__)) - #endif -@@ -1131,5 +1132,6 @@ linked_from_dso_p (struct scninfo *scnin - - return sym->defined && sym->in_dso; - } -+#endif /* Optimizing and not GCC 4.2. */ - - #endif /* ld.h */ ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -90,6 +90,11 @@ endif - ldgeneric_no_Wunused = yes - ldgeneric_no_Wstack_usage = yes - -+# Buggy old compilers or libc headers. -+readelf_no_Werror = yes -+strings_no_Werror = yes -+addr2line_no_Wformat = yes -+ - # Bad, bad stack usage... - readelf_no_Wstack_usage = yes - nm_no_Wstack_usage = yes ---- a/src/Makefile.in -+++ b/src/Makefile.in -@@ -91,7 +91,8 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING - bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEEXT) size$(EXEEXT) \ - strip$(EXEEXT) ld$(EXEEXT) elflint$(EXEEXT) \ - findtextrel$(EXEEXT) addr2line$(EXEEXT) elfcmp$(EXEEXT) \ -@@ -100,9 +101,9 @@ bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEE - @NATIVE_LD_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1) - # We never build this library but we need to get the dependency files - # of all the linker backends that might be used in a non-generic linker. --@NEVER_TRUE@am__append_2 = libdummy.a -+@NEVER_TRUE@am__append_3 = libdummy.a - # -ldl is always needed for libebl. --@NATIVE_LD_TRUE@am__append_3 = libld_elf.a -+@NATIVE_LD_TRUE@am__append_4 = libld_elf.a - @NATIVE_LD_TRUE@am_libld_elf_i386_pic_a_OBJECTS = - subdir = src - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -@@ -172,7 +173,7 @@ am_ld_OBJECTS = ld.$(OBJEXT) ldgeneric.$ - versionhash.$(OBJEXT) - ld_OBJECTS = $(am_ld_OBJECTS) - ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__DEPENDENCIES_1) \ -- $(am__append_3) -+ $(am__append_4) - ld_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(ld_LDFLAGS) $(LDFLAGS) -o \ - $@ - am_libld_elf_i386_so_OBJECTS = -@@ -361,6 +362,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -392,6 +394,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -460,14 +463,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \ -+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $($(*F)_CFLAGS) $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda make-debug-archive none_ld.os \ - $(ld_modules:.c=.os) *.gconv - textrel_msg = echo "WARNING: TEXTREL found in '$@'" -@@ -480,8 +483,8 @@ AM_LFLAGS = -Pld -olex.yy.c - native_ld = @native_ld@ - ld_dsos = libld_elf_i386_pic.a - @NATIVE_LD_FALSE@noinst_LIBRARIES = libld_elf.a libar.a $(ld_dsos) \ --@NATIVE_LD_FALSE@ $(am__append_2) --@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_2) -+@NATIVE_LD_FALSE@ $(am__append_3) -+@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_3) - @NATIVE_LD_TRUE@native_ld_cflags = -DBASE_ELF_NAME=elf_$(base_cpu) - @NEVER_TRUE@libdummy_a_SOURCES = i386_ld.c - ld_SOURCES = ld.c ldgeneric.c ldlex.l ldscript.y symbolhash.c sectionhash.c \ -@@ -509,6 +512,11 @@ libeu = ../lib/libeu.a - ldgeneric_no_Wunused = yes - ldgeneric_no_Wstack_usage = yes - -+# Buggy old compilers or libc headers. -+readelf_no_Werror = yes -+strings_no_Werror = yes -+addr2line_no_Wformat = yes -+ - # Bad, bad stack usage... - readelf_no_Wstack_usage = yes - nm_no_Wstack_usage = yes -@@ -528,7 +536,7 @@ nm_LDADD = $(libdw) $(libebl) $(libelf) - size_LDADD = $(libelf) $(libeu) $(argp_LDADD) - strip_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl - ld_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl \ -- $(am__append_3) -+ $(am__append_4) - ld_LDFLAGS = -rdynamic - elflint_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl - findtextrel_LDADD = $(libdw) $(libelf) $(argp_LDADD) ---- a/src/readelf.c -+++ b/src/readelf.c -@@ -4366,10 +4366,12 @@ listptr_base (struct listptr *p) - return base; - } - -+static const char *listptr_name; -+ - static int --compare_listptr (const void *a, const void *b, void *arg) -+compare_listptr (const void *a, const void *b) - { -- const char *name = arg; -+ const char *const name = listptr_name; - struct listptr *p1 = (void *) a; - struct listptr *p2 = (void *) b; - -@@ -4465,8 +4467,11 @@ static void - sort_listptr (struct listptr_table *table, const char *name) - { - if (table->n > 0) -- qsort_r (table->table, table->n, sizeof table->table[0], -- &compare_listptr, (void *) name); -+ { -+ listptr_name = name; -+ qsort (table->table, table->n, sizeof table->table[0], -+ &compare_listptr); -+ } - } - - static bool -@@ -9563,7 +9568,7 @@ dump_archive_index (Elf *elf, const char - if (unlikely (elf_rand (elf, as_off) == 0) - || unlikely ((subelf = elf_begin (-1, ELF_C_READ_MMAP, elf)) - == NULL)) --#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) -+#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) || __GNUC__ < 4 - while (1) - #endif - error (EXIT_FAILURE, 0, ---- a/src/strings.c -+++ b/src/strings.c -@@ -43,6 +43,10 @@ - - #include - -+#ifndef MAP_POPULATE -+# define MAP_POPULATE 0 -+#endif -+ - - /* Prototypes of local functions. */ - static int read_fd (int fd, const char *fname, off64_t fdlen); -@@ -489,8 +493,13 @@ map_file (int fd, off64_t start_off, off - fd, start_off); - if (mem != MAP_FAILED) - { -+#if !defined POSIX_MADV_SEQUENTIAL && defined MADV_SEQUENTIAL -+# define POSIX_MADV_SEQUENTIAL MADV_SEQUENTIAL -+#endif -+#ifdef POSIX_MADV_SEQUENTIAL - /* We will go through the mapping sequentially. */ - (void) posix_madvise (mem, map_size, POSIX_MADV_SEQUENTIAL); -+#endif - break; - } - if (errno != EINVAL && errno != ENOMEM) -@@ -581,9 +590,11 @@ read_block (int fd, const char *fname, o - elfmap_off = from & ~(ps - 1); - elfmap_base = elfmap = map_file (fd, elfmap_off, fdlen, &elfmap_size); - -+#ifdef POSIX_FADV_SEQUENTIAL - if (unlikely (elfmap == MAP_FAILED)) - /* Let the kernel know we are going to read everything in sequence. */ - (void) posix_fadvise (fd, 0, 0, POSIX_FADV_SEQUENTIAL); -+#endif - } - - if (unlikely (elfmap == MAP_FAILED)) ---- a/src/strip.c -+++ b/src/strip.c -@@ -2191,7 +2191,14 @@ while computing checksum for debug infor - /* If requested, preserve the timestamp. */ - if (tvp != NULL) - { -+#ifdef HAVE_FUTIMENS - if (futimens (fd, tvp) != 0) -+#else -+ struct timeval times[2]; -+ TIMESPEC_TO_TIMEVAL (×[0], &tvp[0]); -+ TIMESPEC_TO_TIMEVAL (×[1], &tvp[1]); -+ if (futimes (fd, times) != 0) -+#endif - { - error (0, errno, gettext ("\ - cannot set access and modification date of '%s'"), -@@ -2263,7 +2270,14 @@ handle_ar (int fd, Elf *elf, const char - - if (tvp != NULL) - { -+#ifdef HAVE_FUTIMENS - if (unlikely (futimens (fd, tvp) != 0)) -+#else -+ struct timeval times[2]; -+ TIMESPEC_TO_TIMEVAL (×[0], &tvp[0]); -+ TIMESPEC_TO_TIMEVAL (×[1], &tvp[1]); -+ if (unlikely (futimes (fd, times) != 0)) -+#endif - { - error (0, errno, gettext ("\ - cannot set access and modification date of '%s'"), fname); ---- a/tests/backtrace.c -+++ b/tests/backtrace.c -@@ -36,6 +36,7 @@ - #include - #include - #include -+#include - #include ELFUTILS_HEADER(dwfl) - - #ifndef __linux__ ---- a/tests/ChangeLog -+++ b/tests/ChangeLog -@@ -614,6 +614,13 @@ - - 2013-12-02 Jan Kratochvil - -+ Handle T-stopped detach for old kernels. -+ * backtrace.c: Include sys/syscall.h. -+ (linux_proc_pid_is_stopped): New function. -+ (ptrace_detach_stopped): Handle old kernels. -+ -+2013-12-02 Jan Kratochvil -+ - * Makefile.am (check_PROGRAMS): Add backtrace, backtrace-child, - backtrace-data and backtrace-dwarf. - (BUILT_SOURCES, clean-local, backtrace-child-biarch): New. -@@ -1478,6 +1485,8 @@ - - 2008-01-21 Roland McGrath - -+ * line2addr.c (main): Revert last change. -+ - * testfile45.S.bz2: Add tests for cltq, cqto. - * testfile45.expect.bz2: Adjust. - -@@ -2186,6 +2195,11 @@ - * Makefile.am (TESTS): Add run-elflint-test.sh. - (EXTRA_DIST): Add run-elflint-test.sh and testfile18.bz2. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-24 Ulrich Drepper - - * get-files.c (main): Use correct format specifier. ---- a/tests/line2addr.c -+++ b/tests/line2addr.c -@@ -124,7 +124,7 @@ main (int argc, char *argv[]) - { - struct args a = { .arg = argv[cnt] }; - -- switch (sscanf (a.arg, "%m[^:]:%d", &a.file, &a.line)) -+ switch (sscanf (a.arg, "%a[^:]:%d", &a.file, &a.line)) - { - default: - case 0: ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -382,6 +382,7 @@ get_lines_LDADD = $(libdw) $(libelf) - get_files_LDADD = $(libdw) $(libelf) - get_aranges_LDADD = $(libdw) $(libelf) - allfcts_LDADD = $(libdw) $(libelf) -+line2addr_no_Wformat = yes - line2addr_LDADD = $(libdw) $(argp_LDADD) - addrscopes_LDADD = $(libdw) $(argp_LDADD) - funcscopes_LDADD = $(libdw) $(argp_LDADD) ---- a/tests/Makefile.in -+++ b/tests/Makefile.in -@@ -87,14 +87,15 @@ PRE_UNINSTALL = : - POST_UNINSTALL = : - build_triplet = @build@ - host_triplet = @host@ --@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING --@STANDALONE_FALSE@am__append_2 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING -+@STANDALONE_FALSE@am__append_3 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ - @STANDALONE_FALSE@ -I$(top_srcdir)/libdwfl -I$(top_srcdir)/libdwelf \ - @STANDALONE_FALSE@ -I$(top_srcdir)/libebl -I$(top_srcdir)/libelf \ - @STANDALONE_FALSE@ -I$(top_srcdir)/lib -I.. - --@STANDALONE_FALSE@am__append_3 = -Wl,-rpath-link,../libasm:../libdw:../libelf --@TESTS_RPATH_TRUE@am__append_4 = -Wl,-rpath,$(BUILD_RPATH) -+@STANDALONE_FALSE@am__append_4 = -Wl,-rpath-link,../libasm:../libdw:../libelf -+@TESTS_RPATH_TRUE@am__append_5 = -Wl,-rpath,$(BUILD_RPATH) - check_PROGRAMS = arextract$(EXEEXT) arsymtest$(EXEEXT) \ - newfile$(EXEEXT) saridx$(EXEEXT) scnnames$(EXEEXT) \ - sectiondump$(EXEEXT) showptable$(EXEEXT) update1$(EXEEXT) \ -@@ -123,7 +124,7 @@ check_PROGRAMS = arextract$(EXEEXT) arsy - aggregate_size$(EXEEXT) vdsosyms$(EXEEXT) getsrc_die$(EXEEXT) \ - strptr$(EXEEXT) newdata$(EXEEXT) elfstrtab$(EXEEXT) \ - $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_4) --@BIARCH_TRUE@am__append_5 = backtrace-child-biarch -+@BIARCH_TRUE@am__append_6 = backtrace-child-biarch - TESTS = run-arextract.sh run-arsymtest.sh newfile$(EXEEXT) \ - test-nlist$(EXEEXT) update1$(EXEEXT) update2$(EXEEXT) \ - update3$(EXEEXT) update4$(EXEEXT) run-show-die-info.sh \ -@@ -173,14 +174,14 @@ TESTS = run-arextract.sh run-arsymtest.s - run-allfcts-multi.sh run-deleted.sh run-linkmap-cut.sh \ - run-aggregate-size.sh vdsosyms$(EXEEXT) run-readelf-A.sh \ - run-getsrc-die.sh run-strptr.sh newdata$(EXEEXT) \ -- elfstrtab$(EXEEXT) $(am__EXEEXT_2) $(am__append_8) \ -- $(am__append_9) $(am__EXEEXT_4) --@STANDALONE_FALSE@am__append_6 = msg_tst md5-sha1-test -+ elfstrtab$(EXEEXT) $(am__EXEEXT_2) $(am__append_9) \ -+ $(am__append_10) $(am__EXEEXT_4) - @STANDALONE_FALSE@am__append_7 = msg_tst md5-sha1-test --@LZMA_TRUE@am__append_8 = run-readelf-s.sh run-dwflsyms.sh --@ZLIB_TRUE@am__append_9 = run-readelf-zdebug.sh --@HAVE_LIBASM_TRUE@am__append_10 = $(asm_TESTS) -+@STANDALONE_FALSE@am__append_8 = msg_tst md5-sha1-test -+@LZMA_TRUE@am__append_9 = run-readelf-s.sh run-dwflsyms.sh -+@ZLIB_TRUE@am__append_10 = run-readelf-zdebug.sh - @HAVE_LIBASM_TRUE@am__append_11 = $(asm_TESTS) -+@HAVE_LIBASM_TRUE@am__append_12 = $(asm_TESTS) - subdir = tests - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -830,6 +831,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -861,6 +863,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -921,26 +924,26 @@ top_build_prefix = @top_build_prefix@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ --AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_2) -+AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_3) - @ADD_STACK_USAGE_WARNING_FALSE@STACK_USAGE_WARNING = - - # Warn about stack usage of more than 256K = 262144 bytes. - @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144 --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \ -+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ -+ $($(*F)_CFLAGS) $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) --DEFS.os = -DPIC -DSHARED $(am__append_1) -+DEFS.os = -DPIC -DSHARED $(am__append_2) - CLEANFILES = *.gcno *.gcda - textrel_msg = echo "WARNING: TEXTREL found in '$@'" - @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg) - @FATAL_TEXTREL_TRUE@textrel_found = $(textrel_msg); exit 1 - textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then $(textrel_found); fi - BUILD_RPATH = \$$ORIGIN/../libasm:\$$ORIGIN/../libdw:\$$ORIGIN/../backends:\$$ORIGIN/../libelf --AM_LDFLAGS = $(am__append_3) $(am__append_4) -+AM_LDFLAGS = $(am__append_4) $(am__append_5) - @TESTS_RPATH_FALSE@tests_rpath = no - @TESTS_RPATH_TRUE@tests_rpath = yes - asm_TESTS = asm-tst1 asm-tst2 asm-tst3 asm-tst4 asm-tst5 \ -@@ -1167,6 +1170,7 @@ get_lines_LDADD = $(libdw) $(libelf) - get_files_LDADD = $(libdw) $(libelf) - get_aranges_LDADD = $(libdw) $(libelf) - allfcts_LDADD = $(libdw) $(libelf) -+line2addr_no_Wformat = yes - line2addr_LDADD = $(libdw) $(argp_LDADD) - addrscopes_LDADD = $(libdw) $(argp_LDADD) - funcscopes_LDADD = $(libdw) $(argp_LDADD) diff --git a/package/libs/elfutils/patches/004-maybe-uninitialized.patch b/package/libs/elfutils/patches/004-maybe-uninitialized.patch index 059ea277b0..d0ce85cc86 100644 --- a/package/libs/elfutils/patches/004-maybe-uninitialized.patch +++ b/package/libs/elfutils/patches/004-maybe-uninitialized.patch @@ -1,6 +1,6 @@ --- a/libelf/elf_getarsym.c +++ b/libelf/elf_getarsym.c -@@ -169,7 +169,7 @@ elf_getarsym (elf, ptr) +@@ -167,7 +167,7 @@ elf_getarsym (Elf *elf, size_t *ptr) /* We have an archive. The first word in there is the number of entries in the table. */ diff --git a/package/libs/elfutils/patches/004-memcpy_def.patch b/package/libs/elfutils/patches/004-memcpy_def.patch index 62e4d0ca93..0b030bed5d 100644 --- a/package/libs/elfutils/patches/004-memcpy_def.patch +++ b/package/libs/elfutils/patches/004-memcpy_def.patch @@ -1,6 +1,6 @@ --- a/libelf/libelf.h +++ b/libelf/libelf.h -@@ -34,6 +34,11 @@ +@@ -35,6 +35,11 @@ /* Get the ELF types. */ #include diff --git a/package/libs/elfutils/patches/005-build_only_libs.patch b/package/libs/elfutils/patches/005-build_only_libs.patch index 0122948936..0077369844 100644 --- a/package/libs/elfutils/patches/005-build_only_libs.patch +++ b/package/libs/elfutils/patches/005-build_only_libs.patch @@ -1,6 +1,6 @@ --- a/Makefile.in +++ b/Makefile.in -@@ -374,8 +374,7 @@ ACLOCAL_AMFLAGS = -I m4 +@@ -372,8 +372,7 @@ ACLOCAL_AMFLAGS = -I m4 pkginclude_HEADERS = version.h # Add doc back when we have some real content. diff --git a/package/libs/elfutils/patches/006-libdw_LIBS.patch b/package/libs/elfutils/patches/006-libdw_LIBS.patch index 9ea19e5702..bcea1005c5 100644 --- a/package/libs/elfutils/patches/006-libdw_LIBS.patch +++ b/package/libs/elfutils/patches/006-libdw_LIBS.patch @@ -1,11 +1,11 @@ --- a/libdw/Makefile.in +++ b/libdw/Makefile.in -@@ -991,7 +991,7 @@ libdw.so$(EXEEXT): $(srcdir)/libdw.map l +@@ -994,7 +994,7 @@ libdw.so$(EXEEXT): $(srcdir)/libdw.map l -Wl,--enable-new-dtags,-rpath,$(pkglibdir) \ -Wl,--version-script,$<,--no-undefined \ -Wl,--whole-archive $(filter-out $<,$^) -Wl,--no-whole-archive\ - -ldl $(argp_LDADD) $(zip_LIBS) + -ldl $(argp_LDADD) $(zip_LIBS) $(LIBS) @$(textrel_check) - ln -fs $@ $@.$(VERSION) + $(AM_V_at)ln -fs $@ $@.$(VERSION) diff --git a/package/libs/elfutils/patches/100-musl-compat.patch b/package/libs/elfutils/patches/100-musl-compat.patch index a16f25addb..7427e9a762 100644 --- a/package/libs/elfutils/patches/100-musl-compat.patch +++ b/package/libs/elfutils/patches/100-musl-compat.patch @@ -311,7 +311,7 @@ +#include #include #include - #include + #ifdef __linux__ --- a/tests/backtrace-data.c +++ b/tests/backtrace-data.c @@ -27,7 +27,7 @@ @@ -322,7 +322,7 @@ +#include #include #include - #include + #if defined(__x86_64__) && defined(__linux__) --- a/tests/buildid.c +++ b/tests/buildid.c @@ -23,7 +23,7 @@ @@ -457,8 +457,8 @@ #include --- a/tests/ecp.c +++ b/tests/ecp.c -@@ -16,7 +16,7 @@ - along with this program. If not, see . */ +@@ -20,7 +20,7 @@ + #endif #include -#include @@ -534,8 +534,8 @@ #include "sha1.h" --- a/tests/rdwrmmap.c +++ b/tests/rdwrmmap.c -@@ -15,7 +15,7 @@ - along with this program. If not, see . */ +@@ -19,7 +19,7 @@ + #endif #include -#include @@ -583,9 +583,9 @@ #define _LIBELF_H 1 +#include + #include #include - /* Get the ELF types. */ --- a/libasm/asm_end.c +++ b/libasm/asm_end.c @@ -32,7 +32,7 @@ @@ -705,15 +705,15 @@ for (subs = nodep->next; subs != NULL; subs = subs->next) --- a/libdwfl/dwfl_error.c +++ b/libdwfl/dwfl_error.c -@@ -141,6 +141,7 @@ const char * - dwfl_errmsg (error) - int error; +@@ -140,6 +140,7 @@ __libdwfl_seterrno (Dwfl_Error error) + const char * + dwfl_errmsg (int error) { + static __thread char s[64] = ""; if (error == 0 || error == -1) { int last_error = global_error; -@@ -155,7 +156,8 @@ dwfl_errmsg (error) +@@ -154,7 +155,8 @@ dwfl_errmsg (int error) switch (error &~ 0xffff) { case OTHER_ERROR (ERRNO): @@ -755,7 +755,7 @@ typedef struct Dwfl Dwfl; --- a/libdwfl/find-debuginfo.c +++ b/libdwfl/find-debuginfo.c -@@ -361,7 +361,7 @@ dwfl_standard_find_debuginfo (Dwfl_Modul +@@ -372,7 +372,7 @@ dwfl_standard_find_debuginfo (Dwfl_Modul /* If FILE_NAME is a symlink, the debug file might be associated with the symlink target name instead. */ @@ -777,8 +777,8 @@ *file_name = name; --- a/libelf/elf_getarsym.c +++ b/libelf/elf_getarsym.c -@@ -301,7 +301,7 @@ elf_getarsym (elf, ptr) - arsym[cnt].as_off = file_data->u32[cnt]; +@@ -297,7 +297,7 @@ elf_getarsym (Elf *elf, size_t *ptr) + arsym[cnt].as_off = (*u32)[cnt]; arsym[cnt].as_hash = _dl_elf_hash (str_data); - str_data = rawmemchr (str_data, '\0') + 1; diff --git a/package/libs/elfutils/patches/101-no-fts.patch b/package/libs/elfutils/patches/101-no-fts.patch index 927f2b69cf..b1b23089fd 100644 --- a/package/libs/elfutils/patches/101-no-fts.patch +++ b/package/libs/elfutils/patches/101-no-fts.patch @@ -72,7 +72,7 @@ struct parse_opt *opt = state->hook; --- a/libdwfl/Makefile.in +++ b/libdwfl/Makefile.in -@@ -123,7 +123,7 @@ am__libdwfl_a_SOURCES_DIST = dwfl_begin. +@@ -121,7 +121,7 @@ am__libdwfl_a_SOURCES_DIST = dwfl_begin. dwfl_getmodules.c dwfl_getdwarf.c dwfl_module_getdwarf.c \ dwfl_module_getelf.c dwfl_validate_address.c argp-std.c \ find-debuginfo.c dwfl_build_id_find_elf.c \ @@ -81,7 +81,7 @@ linux-proc-maps.c dwfl_addrmodule.c dwfl_addrdwarf.c cu.c \ dwfl_module_nextcu.c dwfl_nextcu.c dwfl_cumodule.c \ dwfl_module_addrdie.c dwfl_addrdie.c lines.c dwfl_lineinfo.c \ -@@ -152,7 +152,7 @@ am_libdwfl_a_OBJECTS = dwfl_begin.$(OBJE +@@ -150,7 +150,7 @@ am_libdwfl_a_OBJECTS = dwfl_begin.$(OBJE dwfl_validate_address.$(OBJEXT) argp-std.$(OBJEXT) \ find-debuginfo.$(OBJEXT) dwfl_build_id_find_elf.$(OBJEXT) \ dwfl_build_id_find_debuginfo.$(OBJEXT) \ @@ -90,7 +90,7 @@ dwfl_addrmodule.$(OBJEXT) dwfl_addrdwarf.$(OBJEXT) \ cu.$(OBJEXT) dwfl_module_nextcu.$(OBJEXT) \ dwfl_nextcu.$(OBJEXT) dwfl_cumodule.$(OBJEXT) \ -@@ -424,7 +424,7 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en +@@ -425,7 +425,7 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en dwfl_getmodules.c dwfl_getdwarf.c dwfl_module_getdwarf.c \ dwfl_module_getelf.c dwfl_validate_address.c argp-std.c \ find-debuginfo.c dwfl_build_id_find_elf.c \ @@ -99,7 +99,7 @@ linux-proc-maps.c dwfl_addrmodule.c dwfl_addrdwarf.c cu.c \ dwfl_module_nextcu.c dwfl_nextcu.c dwfl_cumodule.c \ dwfl_module_addrdie.c dwfl_addrdie.c lines.c dwfl_lineinfo.c \ -@@ -561,7 +561,6 @@ distclean-compile: +@@ -562,7 +562,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lines.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/link_map.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linux-core-attach.Po@am__quote@