From 254bb48cb4dc32d0fcc61c59292b900df7a1cc81c90501cdf813c5c0f8ca5cd6 Mon Sep 17 00:00:00 2001 From: Tony Jones Date: Sat, 12 Sep 2015 18:41:06 +0000 Subject: [PATCH 1/2] Accepting request 330583 from home:jones_tony:branches:Base:System OBS-URL: https://build.opensuse.org/request/show/330583 OBS-URL: https://build.opensuse.org/package/show/Base:System/elfutils?expand=0&rev=70 --- elfutils-0.148-dont-crash.diff | 19 - elfutils-0.161.tar.bz2 | 3 - elfutils-0.163.tar.bz2 | 3 + ...-dir-traversal-vuln-in-ar-extraction.patch | 54 - ....patch => elfutils-portability-0.163.patch | 985 +++++++++++------- elfutils.changes | 23 + elfutils.spec | 7 +- 7 files changed, 610 insertions(+), 484 deletions(-) delete mode 100644 elfutils-0.148-dont-crash.diff delete mode 100644 elfutils-0.161.tar.bz2 create mode 100644 elfutils-0.163.tar.bz2 delete mode 100644 elfutils-fix-dir-traversal-vuln-in-ar-extraction.patch rename elfutils-portability-0.161.patch => elfutils-portability-0.163.patch (67%) diff --git a/elfutils-0.148-dont-crash.diff b/elfutils-0.148-dont-crash.diff deleted file mode 100644 index 4408153..0000000 --- a/elfutils-0.148-dont-crash.diff +++ /dev/null @@ -1,19 +0,0 @@ -From: Stephan Kulow - -Avoid crash if the header is 0 - ---- - libdw/dwarf_getcfi_elf.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/libdw/dwarf_getcfi_elf.c -+++ b/libdw/dwarf_getcfi_elf.c -@@ -76,7 +76,7 @@ parse_eh_frame_hdr (const uint8_t *hdr, - { - const uint8_t *h = hdr; - -- if (*h++ != 1) /* version */ -+ if (!h || *h++ != 1) /* version */ - return (void *) -1l; - - uint8_t eh_frame_ptr_encoding = *h++; diff --git a/elfutils-0.161.tar.bz2 b/elfutils-0.161.tar.bz2 deleted file mode 100644 index af04acd..0000000 --- a/elfutils-0.161.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:570c91a1783fa5386aaa2dfdd08dda1de777c2b63bf3b9c1437d635ffdd7a070 -size 5524766 diff --git a/elfutils-0.163.tar.bz2 b/elfutils-0.163.tar.bz2 new file mode 100644 index 0000000..f981002 --- /dev/null +++ b/elfutils-0.163.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c774f1eef329309f3b05e730bdac50013155d437518a2ec0e24871d312f2e23 +size 6029307 diff --git a/elfutils-fix-dir-traversal-vuln-in-ar-extraction.patch b/elfutils-fix-dir-traversal-vuln-in-ar-extraction.patch deleted file mode 100644 index dc60c40..0000000 --- a/elfutils-fix-dir-traversal-vuln-in-ar-extraction.patch +++ /dev/null @@ -1,54 +0,0 @@ -From: Alexander Cherepanov -Subject: libelf: Fix dir traversal vuln in ar extraction -Date: Sun Dec 28 19:57:19 2014 +0300 -Git-commit: 147018e729e7c22eeabf15b82d26e4bf68a0d18e -References: bnc#911662, CVE-2014-9447 -Signed-off-by: Tony Jones - - libelf: Fix dir traversal vuln in ar extraction. - - read_long_names terminates names at the first '/' found but then skips - one character without checking (it's supposed to be '\n'). Hence the - next name could start with any character including '/'. This leads to - a directory traversal vulnerability at the time the contents of the - archive is extracted. - - The danger is mitigated by the fact that only one '/' is possible in a - resulting filename and only in the leading position. Hence only files - in the root directory can be written via this vuln and only when ar is - executed as root. - - The fix for the vuln is to not skip any characters while looking - for '/'. - - Signed-off-by: Alexander Cherepanov - -diff --git a/libelf/ChangeLog b/libelf/ChangeLog -index 3b88d03..447c354 100644 ---- a/libelf/ChangeLog -+++ b/libelf/ChangeLog -@@ -1,3 +1,8 @@ -+2014-12-28 Alexander Cherepanov -+ -+ * elf_begin.c (read_long_names): Don't miss '/' right after -+ another '/'. Fixes a dir traversal vuln in ar extraction. -+ - 2014-12-18 Ulrich Drepper - - * Makefile.am: Suppress output of textrel_check command. -diff --git a/libelf/elf_begin.c b/libelf/elf_begin.c -index 30abe0b..cd3756c 100644 ---- a/libelf/elf_begin.c -+++ b/libelf/elf_begin.c -@@ -749,10 +749,7 @@ read_long_names (Elf *elf) - } - - /* NUL-terminate the string. */ -- *runp = '\0'; -- -- /* Skip the NUL byte and the \012. */ -- runp += 2; -+ *runp++ = '\0'; - - /* A sanity check. Somebody might have generated invalid - archive. */ diff --git a/elfutils-portability-0.161.patch b/elfutils-portability-0.163.patch similarity index 67% rename from elfutils-portability-0.161.patch rename to elfutils-portability-0.163.patch index 816a5f7..0039f50 100644 --- a/elfutils-portability-0.161.patch +++ b/elfutils-portability-0.163.patch @@ -1,64 +1,7 @@ -From: unknown -Subject: elfutils portability -Upstream: no -References: https://fedorahosted.org/releases/e/l/elfutils/0.161/elfutils-portability.patch -Signed-off-by: Tony Jones - -Various portability fixes not deemed acceptable for inclusion into git repo. - ---- - ChangeLog | 30 ++++++++ - Makefile.in | 2 - backends/ChangeLog | 12 +++ - backends/Makefile.am | 2 - backends/Makefile.in | 12 +-- - config.h.in | 6 + - config/ChangeLog | 4 + - config/Makefile.in | 2 - config/eu.am | 12 ++- - configure | 160 +++++++++++++++++++++++++++++++++++++++++++- - configure.ac | 60 +++++++++++++++- - lib/ChangeLog | 8 ++ - lib/Makefile.in | 10 +- - lib/eu-config.h | 11 +++ - libasm/ChangeLog | 5 + - libasm/Makefile.in | 14 ++- - libcpu/ChangeLog | 8 ++ - libcpu/Makefile.in | 10 +- - libcpu/i386_disasm.c | 1 - libdw/ChangeLog | 13 +++ - libdw/Makefile.in | 12 +-- - libdw/dwarf_begin_elf.c | 8 ++ - libdw/libdw.h | 2 - libdwfl/ChangeLog | 20 +++++ - libdwfl/Makefile.in | 24 +++--- - libdwfl/linux-core-attach.c | 29 +++++++ - libdwfl/linux-pid-attach.c | 19 ++++- - libebl/ChangeLog | 5 + - libebl/Makefile.in | 10 +- - libelf/ChangeLog | 10 ++ - libelf/Makefile.in | 16 ++-- - libelf/common.h | 4 - - libelf/gnuhash_xlate.h | 6 + - m4/Makefile.in | 2 - src/ChangeLog | 30 ++++++++ - src/Makefile.am | 3 - src/Makefile.in | 25 ++++-- - src/addr2line.c | 4 - - src/findtextrel.c | 6 + - src/ld.h | 2 - src/readelf.c | 15 ++-- - src/strings.c | 11 +++ - src/strip.c | 20 ++++- - tests/ChangeLog | 14 +++ - tests/Makefile.in | 34 ++++----- - tests/backtrace.c | 1 - tests/line2addr.c | 2 - 47 files changed, 616 insertions(+), 100 deletions(-) - +diffelfutils/backends/ChangeLog git-portable/backends/ChangeLog --- elfutils/backends/ChangeLog +++ elfutils/backends/ChangeLog -@@ -433,6 +433,10 @@ +@@ -498,6 +498,10 @@ * ppc_attrs.c (ppc_check_object_attribute): Handle tag GNU_Power_ABI_Struct_Return. @@ -69,7 +12,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2008-10-04 Ulrich Drepper * i386_reloc.def: Fix entries for TLS_GOTDESC, TLS_DESC_CALL, and -@@ -760,6 +764,11 @@ +@@ -825,6 +829,11 @@ * sparc_init.c: Likewise. * x86_64_init.c: Likewise. @@ -81,7 +24,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-11-19 Roland McGrath * ppc64_reloc.def: REL30 -> ADDR30. -@@ -782,6 +791,9 @@ +@@ -847,6 +856,9 @@ * Makefile.am (uninstall): Don't try to remove $(pkgincludedir). (CLEANFILES): Add libebl_$(m).so. @@ -91,6 +34,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * ppc_reloc.def: Update bits per Alan Modra . * ppc64_reloc.def: Likewise. +diffelfutils/backends/Makefile.am git-portable/backends/Makefile.am --- elfutils/backends/Makefile.am +++ elfutils/backends/Makefile.am @@ -119,7 +119,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a @@ -102,17 +46,20 @@ Various portability fixes not deemed acceptable for inclusion into git repo. @$(textrel_check) libebl_i386.so: $(cpu_i386) +diffelfutils/backends/Makefile.in git-portable/backends/Makefile.in --- elfutils/backends/Makefile.in +++ elfutils/backends/Makefile.in -@@ -83,6 +83,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) ChangeLog +@@ -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 \ -@@ -285,6 +286,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -300,6 +301,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -120,7 +67,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -316,6 +318,7 @@ SHELL = @SHELL@ +@@ -331,6 +333,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ @@ -128,24 +75,29 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -378,11 +381,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ - -I$(top_srcdir)/libelf -I$(top_srcdir)/libdw +@@ -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) $($(*F)_CFLAGS) \ -+ $(am__append_1) ++ $($(*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)) -@@ -888,7 +891,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a + 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) \ @@ -154,9 +106,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. @$(textrel_check) libebl_i386.so: $(cpu_i386) +diffelfutils/ChangeLog git-portable/ChangeLog --- elfutils/ChangeLog +++ elfutils/ChangeLog -@@ -187,6 +187,8 @@ +@@ -258,6 +258,8 @@ 2012-01-24 Mark Wielaard @@ -165,7 +118,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * COPYING: Fix address. Updated version from gnulib. 2012-01-23 Mark Wielaard -@@ -205,6 +207,9 @@ +@@ -276,6 +278,9 @@ 2011-10-08 Mike Frysinger @@ -175,7 +128,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * configure.ac: Fix use of AC_ARG_ENABLE to handle $enableval correctly. 2011-10-02 Ulrich Drepper -@@ -226,6 +231,10 @@ +@@ -297,6 +302,10 @@ * configure.ac (LOCALEDIR, DATADIRNAME): Removed. @@ -186,7 +139,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2009-09-21 Ulrich Drepper * configure.ac: Update for more modern autoconf. -@@ -234,6 +243,10 @@ +@@ -305,6 +314,10 @@ * configure.ac (zip_LIBS): Check for liblzma too. @@ -197,7 +150,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2009-04-19 Roland McGrath * configure.ac (eu_version): Round down here, not in version.h macros. -@@ -245,6 +258,8 @@ +@@ -316,6 +329,8 @@ 2009-01-23 Roland McGrath @@ -206,7 +159,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * configure.ac (zlib check): Check for gzdirect, need zlib >= 1.2.2.3. * configure.ac (__thread check): Use AC_LINK_IFELSE, in case of -@@ -325,6 +340,10 @@ +@@ -396,6 +411,10 @@ * configure.ac: Add dummy automake conditional to get dependencies for non-generic linker right. See src/Makefile.am. @@ -217,7 +170,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-11-18 Roland McGrath * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable. -@@ -372,6 +391,17 @@ +@@ -443,6 +462,17 @@ * Makefile.am (all_SUBDIRS): Add libdwfl. * configure.ac: Write libdwfl/Makefile. @@ -235,9 +188,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-05-19 Roland McGrath * configure.ac [AH_BOTTOM] (INTDECL, _INTDECL): New macros. +diffelfutils/config/ChangeLog git-portable/config/ChangeLog --- elfutils/config/ChangeLog +++ elfutils/config/ChangeLog -@@ -71,6 +71,10 @@ +@@ -110,6 +110,10 @@ * known-dwarf.awk: Use gawk. @@ -248,6 +202,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2010-07-02 Ulrich Drepper * elfutils.spec.in: Add more BuildRequires. +diffelfutils/config/eu.am git-portable/config/eu.am --- elfutils/config/eu.am +++ elfutils/config/eu.am @@ -1,6 +1,6 @@ @@ -258,7 +213,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. ## ## This file is part of elfutils. ## -@@ -29,13 +29,21 @@ +@@ -29,6 +29,9 @@ ## not, see . ## @@ -267,12 +222,18 @@ Various portability fixes not deemed acceptable for inclusion into git repo. + 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 @@ -281,10 +242,11 @@ Various portability fixes not deemed acceptable for inclusion into git repo. + COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - %.os: %.c %.o + DEFS.os = -DPIC -DSHARED +diffelfutils/config/Makefile.in git-portable/config/Makefile.in --- elfutils/config/Makefile.in +++ elfutils/config/Makefile.in -@@ -147,6 +147,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -160,6 +160,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -292,7 +254,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -178,6 +179,7 @@ SHELL = @SHELL@ +@@ -191,6 +192,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ @@ -300,19 +262,23 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +diffelfutils/config.h.in git-portable/config.h.in --- elfutils/config.h.in +++ elfutils/config.h.in -@@ -3,6 +3,9 @@ +@@ -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 -@@ -102,4 +105,7 @@ +@@ -105,4 +111,7 @@ /* Define for large files, on AIX-style hosts. */ #undef _LARGE_FILES @@ -320,9 +286,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. +#undef __thread + #include +diffelfutils/configure git-portable/configure --- elfutils/configure +++ elfutils/configure -@@ -663,6 +663,8 @@ ZLIB_TRUE +@@ -672,6 +672,8 @@ ZLIB_TRUE LIBEBL_SUBDIR TESTS_RPATH_FALSE TESTS_RPATH_TRUE @@ -331,7 +298,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. BUILD_STATIC_FALSE BUILD_STATIC_TRUE USE_VALGRIND_FALSE -@@ -678,6 +680,8 @@ NEVER_TRUE +@@ -687,6 +689,8 @@ NEVER_TRUE base_cpu NATIVE_LD_FALSE NATIVE_LD_TRUE @@ -340,24 +307,117 @@ Various portability fixes not deemed acceptable for inclusion into git repo. NM READELF ac_ct_AR -@@ -798,6 +802,7 @@ enable_debugpred - enable_gprof +@@ -807,6 +811,7 @@ enable_gprof enable_gcov + enable_sanitize_undefined enable_valgrind +enable_werror enable_tests_rpath enable_libebl_subdir with_zlib -@@ -1455,6 +1460,7 @@ Optional Features: - --enable-gprof build binaries with gprof support - --enable-gcov build binaries with gcov support +@@ -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 -@@ -4843,6 +4849,130 @@ if test "x$ac_cv_c99" != xyes; then : - as_fn_error $? "gcc with C99 support required" "$LINENO" 5 +@@ -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 @@ -487,7 +547,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. { $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 : -@@ -4879,7 +5009,13 @@ fi +@@ -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 : @@ -502,7 +562,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. fi # Check whether --enable-largefile was given. -@@ -5246,6 +5382,22 @@ else +@@ -5318,6 +5533,22 @@ else fi @@ -525,16 +585,16 @@ Various portability fixes not deemed acceptable for inclusion into git repo. # Check whether --enable-tests-rpath was given. if test "${enable_tests_rpath+set}" = set; then : enableval=$enable_tests_rpath; tests_use_rpath=$enableval -@@ -5983,7 +6135,7 @@ case "$eu_version" in +@@ -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` - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' -@@ -6729,6 +6881,10 @@ if test -z "${BUILD_STATIC_TRUE}" && tes + 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 @@ -545,11 +605,21 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 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 +diffelfutils/configure.ac git-portable/configure.ac --- elfutils/configure.ac +++ elfutils/configure.ac -@@ -89,6 +89,54 @@ CFLAGS="$old_CFLAGS"]) +@@ -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 C99 support required])) + AC_MSG_ERROR([gcc with GNU99 support required])) +AC_CACHE_CHECK([for -Wextra option to $CC], ac_cv_cc_wextra, [dnl +old_CFLAGS="$CFLAGS" @@ -602,7 +672,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 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. -@@ -104,7 +152,10 @@ static __thread int a; int foo (int b) { +@@ -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], @@ -614,7 +684,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 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 -@@ -183,6 +234,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_ +@@ -224,6 +277,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_ AM_CONDITIONAL(BUILD_STATIC, [dnl test "$use_gprof" = yes -o "$use_gcov" = yes]) @@ -626,18 +696,19 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 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]) -@@ -302,7 +358,7 @@ case "$eu_version" in +@@ -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` - AC_CHECK_SIZEOF(long) - + dnl Unique ID for this build. + MODVERSION="Build for ${LIBEBL_SUBDIR} ${eu_version} ${ac_cv_build}" +diffelfutils/lib/ChangeLog git-portable/lib/ChangeLog --- elfutils/lib/ChangeLog +++ elfutils/lib/ChangeLog -@@ -65,6 +65,9 @@ +@@ -73,6 +73,9 @@ 2009-01-23 Roland McGrath @@ -647,7 +718,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * eu-config.h: Add multiple inclusion protection. 2009-01-17 Ulrich Drepper -@@ -121,6 +124,11 @@ +@@ -129,6 +132,11 @@ * Makefile.am (libeu_a_SOURCES): Add it. * system.h: Declare crc32_file. @@ -659,9 +730,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-04-30 Ulrich Drepper * Makefile.am: Use -ffunction-sections for xmalloc.c. +diffelfutils/lib/eu-config.h git-portable/lib/eu-config.h --- elfutils/lib/eu-config.h +++ elfutils/lib/eu-config.h -@@ -162,6 +162,17 @@ asm (".section predict_data, \"aw\"; .pr +@@ -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) @@ -677,19 +749,22 @@ Various portability fixes not deemed acceptable for inclusion into git repo. +#endif /* HAVE_BUILTIN_POPCOUNT */ + - #ifdef SHARED + #ifdef SYMBOL_VERSIONING # define OLD_VERSION(name, version) \ +diffelfutils/lib/Makefile.in git-portable/lib/Makefile.in --- elfutils/lib/Makefile.in +++ elfutils/lib/Makefile.in -@@ -82,6 +82,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) ChangeLog +@@ -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 \ -@@ -197,6 +198,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -212,6 +213,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -697,7 +772,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -228,6 +230,7 @@ SHELL = @SHELL@ +@@ -243,6 +245,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ @@ -705,20 +780,26 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -289,9 +292,11 @@ top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf +@@ -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) $($(*F)_CFLAGS) -fpic +- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) -fpic ++ $($(*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) +diffelfutils/libasm/ChangeLog git-portable/libasm/ChangeLog --- elfutils/libasm/ChangeLog +++ elfutils/libasm/ChangeLog @@ -87,6 +87,11 @@ @@ -733,20 +814,23 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-02-15 Ulrich Drepper * Makefile.am (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. +diffelfutils/libasm/Makefile.in git-portable/libasm/Makefile.in --- elfutils/libasm/Makefile.in +++ elfutils/libasm/Makefile.in -@@ -83,8 +83,9 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog +@@ -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_1 = -lpthread -+@USE_LOCKS_TRUE@am__append_2 = -lpthread +-@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 \ -@@ -248,6 +249,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -263,6 +264,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -754,7 +838,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -279,6 +281,7 @@ SHELL = @SHELL@ +@@ -294,6 +296,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = 1 @@ -762,32 +846,38 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -341,11 +344,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(top_srcdir)/libelf -I$(top_srcdir)/libebl \ - -I$(top_srcdir)/libdw +@@ -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) $($(*F)_CFLAGS) \ -+ $(am__append_1) ++ $($(*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) -@@ -373,7 +376,7 @@ libasm_a_SOURCES = asm_begin.c asm_abort + 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_1) -+libasm_so_LDLIBS = $(am__append_2) +-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 +diffelfutils/libcpu/ChangeLog git-portable/libcpu/ChangeLog --- elfutils/libcpu/ChangeLog +++ elfutils/libcpu/ChangeLog @@ -51,6 +51,9 @@ @@ -812,6 +902,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-02-15 Ulrich Drepper * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. +diffelfutils/libcpu/i386_disasm.c git-portable/libcpu/i386_disasm.c --- elfutils/libcpu/i386_disasm.c +++ elfutils/libcpu/i386_disasm.c @@ -822,6 +822,7 @@ i386_disasm (const uint8_t **startp, con @@ -822,17 +913,20 @@ Various portability fixes not deemed acceptable for inclusion into git repo. } } else +diffelfutils/libcpu/Makefile.in git-portable/libcpu/Makefile.in --- elfutils/libcpu/Makefile.in +++ elfutils/libcpu/Makefile.in -@@ -84,6 +84,7 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am i386_lex.c i386_parse.c \ - $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ - $(am__noinst_HEADERS_DIST) ChangeLog +@@ -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 -@@ -223,6 +224,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -238,6 +239,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -840,7 +934,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = lex.$( * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info. -@@ -1076,6 +1080,10 @@ +@@ -1263,6 +1267,10 @@ * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too. @@ -887,7 +986,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2009-08-10 Roland McGrath * dwarf_getscopevar.c: Use dwarf_diename. -@@ -1844,6 +1852,11 @@ +@@ -2031,6 +2039,11 @@ 2005-05-31 Roland McGrath @@ -899,6 +998,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to formref offset. +diffelfutils/libdw/dwarf_begin_elf.c git-portable/libdw/dwarf_begin_elf.c --- elfutils/libdw/dwarf_begin_elf.c +++ elfutils/libdw/dwarf_begin_elf.c @@ -47,6 +47,14 @@ @@ -916,9 +1016,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. # include # undef crc32 #endif +diffelfutils/libdw/libdw.h git-portable/libdw/libdw.h --- elfutils/libdw/libdw.h +++ elfutils/libdw/libdw.h -@@ -1003,7 +1003,7 @@ extern Dwarf_OOM dwarf_new_oom_handler ( +@@ -1004,7 +1004,7 @@ extern Dwarf_OOM dwarf_new_oom_handler ( /* Inline optimizations. */ @@ -927,19 +1028,22 @@ Various portability fixes not deemed acceptable for inclusion into git repo. /* Return attribute code of given attribute. */ __libdw_extern_inline unsigned int dwarf_whatattr (Dwarf_Attribute *attr) +diffelfutils/libdw/Makefile.in git-portable/libdw/Makefile.in --- elfutils/libdw/Makefile.in +++ elfutils/libdw/Makefile.in -@@ -84,7 +84,8 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ - ChangeLog --@BUILD_STATIC_TRUE@am__append_1 = -fpic +@@ -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) -+@BUILD_STATIC_TRUE@am__append_2 = -fpic ++@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 -@@ -298,6 +299,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -312,6 +313,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -947,7 +1051,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -329,6 +331,7 @@ SHELL = @SHELL@ +@@ -343,6 +345,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = 1 @@ -955,32 +1059,39 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -390,10 +393,11 @@ top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf +@@ -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) $($(*F)_CFLAGS) \ -- $(am__append_1) +- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) $(am__append_2) ++ $($(*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) +diffelfutils/libdwelf/Makefile.in git-portable/libdwelf/Makefile.in --- elfutils/libdwelf/Makefile.in +++ elfutils/libdwelf/Makefile.in -@@ -82,6 +82,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog +@@ -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 \ -@@ -227,6 +228,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -242,6 +243,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -988,7 +1099,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -258,6 +260,7 @@ SHELL = @SHELL@ +@@ -273,6 +275,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = 1 @@ -996,26 +1107,32 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -320,11 +323,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf -I$(srcdir)/../libdw \ - -I$(srcdir)/../libdwfl -I$(srcdir)/../libebl +@@ -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) $($(*F)_CFLAGS) \ -+ $(am__append_1) ++ $($(*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) +diffelfutils/libdwfl/ChangeLog git-portable/libdwfl/ChangeLog --- elfutils/libdwfl/ChangeLog +++ elfutils/libdwfl/ChangeLog -@@ -571,6 +571,21 @@ +@@ -713,6 +713,21 @@ (dwfl_module_addrsym) (i_to_symfile): New function. (dwfl_module_addrsym) (search_table): Use it. @@ -1037,7 +1154,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2013-11-07 Jan Kratochvil Mark Wielaard -@@ -2336,6 +2351,11 @@ +@@ -2478,6 +2493,11 @@ 2005-07-21 Roland McGrath @@ -1049,6 +1166,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * Makefile.am (noinst_HEADERS): Add loc2c.c. * test2.c (main): Check sscanf result to quiet warning. +diffelfutils/libdwfl/linux-core-attach.c git-portable/libdwfl/linux-core-attach.c --- elfutils/libdwfl/linux-core-attach.c +++ elfutils/libdwfl/linux-core-attach.c @@ -29,6 +29,35 @@ @@ -1087,6 +1205,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. #include "../libdw/memory-access.h" +diffelfutils/libdwfl/linux-pid-attach.c git-portable/libdwfl/linux-pid-attach.c --- elfutils/libdwfl/linux-pid-attach.c +++ elfutils/libdwfl/linux-pid-attach.c @@ -255,6 +255,11 @@ void @@ -1117,23 +1236,26 @@ Various portability fixes not deemed acceptable for inclusion into git repo. } static void +diffelfutils/libdwfl/Makefile.in git-portable/libdwfl/Makefile.in --- elfutils/libdwfl/Makefile.in +++ elfutils/libdwfl/Makefile.in -@@ -82,9 +82,10 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog --@ZLIB_TRUE@am__append_1 = gzip.c --@BZLIB_TRUE@am__append_2 = bzip2.c --@LZMA_TRUE@am__append_3 = lzma.c +@@ -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) -+@ZLIB_TRUE@am__append_2 = gzip.c -+@BZLIB_TRUE@am__append_3 = bzip2.c -+@LZMA_TRUE@am__append_4 = lzma.c ++@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 \ -@@ -286,6 +287,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -301,6 +302,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -1141,7 +1263,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -317,6 +319,7 @@ SHELL = @SHELL@ +@@ -332,6 +334,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = 1 @@ -1149,37 +1271,43 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -379,11 +382,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. -I$(srcdir) \ - -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ - -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf +@@ -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) $($(*F)_CFLAGS) \ -+ $(am__append_1) ++ $($(*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 '$@'" -@@ -413,8 +416,8 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en + @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_1) \ -- $(am__append_2) $(am__append_3) -+ 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_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 +diffelfutils/libebl/ChangeLog git-portable/libebl/ChangeLog --- elfutils/libebl/ChangeLog +++ elfutils/libebl/ChangeLog -@@ -765,6 +765,11 @@ +@@ -785,6 +785,11 @@ * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency tracking works right. @@ -1191,17 +1319,20 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-05-21 Ulrich Drepper * libebl_x86_64.map: Add x86_64_core_note. +diffelfutils/libebl/Makefile.in git-portable/libebl/Makefile.in --- elfutils/libebl/Makefile.in +++ elfutils/libebl/Makefile.in -@@ -82,6 +82,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog +@@ -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 \ -@@ -249,6 +250,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -264,6 +265,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -1209,7 +1340,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -280,6 +282,7 @@ SHELL = @SHELL@ +@@ -295,6 +297,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = 1 @@ -1217,23 +1348,29 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -342,9 +345,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf -I$(srcdir)/../libdw \ - -I$(srcdir)/../libasm +@@ -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) $($(*F)_CFLAGS) -fpic +- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) -fpic ++ $($(*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) +diffelfutils/libelf/ChangeLog git-portable/libelf/ChangeLog --- elfutils/libelf/ChangeLog +++ elfutils/libelf/ChangeLog -@@ -244,6 +244,11 @@ +@@ -412,6 +412,11 @@ * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check. @@ -1245,7 +1382,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2011-02-26 Mark Wielaard * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini. -@@ -921,6 +926,11 @@ +@@ -1089,6 +1094,11 @@ * elf.h: Update from glibc. @@ -1257,6 +1394,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-05-08 Roland McGrath * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now. +diffelfutils/libelf/common.h git-portable/libelf/common.h --- elfutils/libelf/common.h +++ elfutils/libelf/common.h @@ -139,7 +139,7 @@ libelf_release_all (Elf *elf) @@ -1277,6 +1415,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. : (sizeof (Var) == 4 \ ? bswap_32 (Var) \ : bswap_64 (Var)))) +diffelfutils/libelf/gnuhash_xlate.h git-portable/libelf/gnuhash_xlate.h --- elfutils/libelf/gnuhash_xlate.h +++ elfutils/libelf/gnuhash_xlate.h @@ -1,5 +1,5 @@ @@ -1297,22 +1436,25 @@ Various portability fixes not deemed acceptable for inclusion into git repo. len -= 4; } } +diffelfutils/libelf/Makefile.in git-portable/libelf/Makefile.in --- elfutils/libelf/Makefile.in +++ elfutils/libelf/Makefile.in -@@ -84,9 +84,10 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ - ChangeLog --@BUILD_STATIC_TRUE@am__append_1 = -fpic +@@ -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) -+@BUILD_STATIC_TRUE@am__append_2 = -fpic ++@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_2 = -lpthread -+@USE_LOCKS_TRUE@am__append_3 = -lpthread +-@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 \ -@@ -291,6 +292,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -305,6 +306,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -1320,7 +1462,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -322,6 +324,7 @@ SHELL = @SHELL@ +@@ -336,6 +338,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = 1 @@ -1328,33 +1470,38 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -382,10 +385,11 @@ top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. +@@ -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) $($(*F)_CFLAGS) \ -- $(am__append_1) +- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \ + $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) $(am__append_2) ++ $($(*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) -@@ -449,7 +453,7 @@ libelf_a_SOURCES = elf_version.c elf_has + 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_2) -+libelf_so_LDLIBS = $(am__append_3) +-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 +diffelfutils/m4/Makefile.in git-portable/m4/Makefile.in --- elfutils/m4/Makefile.in +++ elfutils/m4/Makefile.in -@@ -145,6 +145,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -159,6 +159,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -1362,7 +1509,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -176,6 +177,7 @@ SHELL = @SHELL@ +@@ -190,6 +191,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ @@ -1370,9 +1517,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +diffelfutils/Makefile.in git-portable/Makefile.in --- elfutils/Makefile.in +++ elfutils/Makefile.in -@@ -263,6 +263,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -277,6 +277,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -1380,7 +1528,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -294,6 +295,7 @@ SHELL = @SHELL@ +@@ -308,6 +309,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ @@ -1388,9 +1536,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +diffelfutils/src/addr2line.c git-portable/src/addr2line.c --- elfutils/src/addr2line.c +++ elfutils/src/addr2line.c -@@ -540,10 +540,10 @@ handle_address (const char *string, Dwfl +@@ -622,10 +622,10 @@ handle_address (const char *string, Dwfl bool parsed = false; int i, j; char *name = NULL; @@ -1403,9 +1552,28 @@ Various portability fixes not deemed acceptable for inclusion into git repo. { default: break; +diffelfutils/src/ar.c git-portable/src/ar.c +--- elfutils/src/ar.c ++++ elfutils/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"), +diffelfutils/src/ChangeLog git-portable/src/ChangeLog --- elfutils/src/ChangeLog +++ elfutils/src/ChangeLog -@@ -1371,8 +1371,16 @@ +@@ -1626,8 +1626,16 @@ * readelf.c (attr_callback): Use print_block only when we don't use print_ops. @@ -1422,7 +1590,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * ar.c (do_oper_extract): Use pathconf instead of statfs. 2009-08-01 Ulrich Drepper -@@ -1536,6 +1544,8 @@ +@@ -1791,6 +1799,8 @@ * readelf.c (print_debug_frame_section): Use t instead of j formats for ptrdiff_t OFFSET. @@ -1431,7 +1599,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2009-01-21 Ulrich Drepper * elflint.c (check_program_header): Fix typo in .eh_frame_hdr section -@@ -1719,6 +1729,11 @@ +@@ -1974,6 +1984,11 @@ that matches its PT_LOAD's p_flags &~ PF_W. On sparc, PF_X really is valid in RELRO. @@ -1443,7 +1611,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2008-02-29 Roland McGrath * readelf.c (print_attributes): Add a cast. -@@ -1970,6 +1985,8 @@ +@@ -2225,6 +2240,8 @@ * readelf.c (hex_dump): Fix rounding error in whitespace calculation. @@ -1452,7 +1620,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2007-10-15 Roland McGrath * make-debug-archive.in: New file. -@@ -2409,6 +2426,10 @@ +@@ -2664,6 +2681,10 @@ * elflint.c (valid_e_machine): Add EM_ALPHA. Reported by Christian Aichinger . @@ -1463,7 +1631,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2006-08-08 Ulrich Drepper * elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB. -@@ -2485,6 +2506,10 @@ +@@ -2740,6 +2761,10 @@ * Makefile.am: Add hacks to create dependency files for non-generic linker. @@ -1474,7 +1642,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2006-06-12 Ulrich Drepper * ldgeneric.c (ld_generic_generate_sections): Don't create .interp -@@ -2833,6 +2858,11 @@ +@@ -3088,6 +3113,11 @@ * readelf.c (print_debug_loc_section): Fix indentation for larger address size. @@ -1486,9 +1654,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-05-30 Roland McGrath * readelf.c (print_debug_line_section): Print section offset of each +diffelfutils/src/findtextrel.c git-portable/src/findtextrel.c --- elfutils/src/findtextrel.c +++ elfutils/src/findtextrel.c -@@ -502,7 +502,11 @@ ptrcompare (const void *p1, const void * +@@ -503,7 +503,11 @@ ptrcompare (const void *p1, const void * static void @@ -1501,6 +1670,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. GElf_Addr addr, Elf *elf, Elf_Scn *symscn, Dwarf *dw, const char *fname, bool more_than_one, void **knownsrcs) { +diffelfutils/src/ld.h git-portable/src/ld.h --- elfutils/src/ld.h +++ elfutils/src/ld.h @@ -1114,6 +1114,7 @@ extern bool dynamically_linked_p (void); @@ -1518,52 +1688,56 @@ Various portability fixes not deemed acceptable for inclusion into git repo. +#endif /* Optimizing and not GCC 4.2. */ #endif /* ld.h */ +diffelfutils/src/Makefile.am git-portable/src/Makefile.am --- elfutils/src/Makefile.am +++ elfutils/src/Makefile.am -@@ -89,6 +89,11 @@ endif - # XXX While the file is not finished, don't warn about this +@@ -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 + - readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl - nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl \ - $(demanglelib) + # Bad, bad stack usage... + readelf_no_Wstack_usage = yes + nm_no_Wstack_usage = yes +diffelfutils/src/Makefile.in git-portable/src/Makefile.in --- elfutils/src/Makefile.in +++ elfutils/src/Makefile.in -@@ -85,6 +85,7 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am ldlex.c ldscript.c \ - $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ - $(noinst_HEADERS) ChangeLog +@@ -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) \ -@@ -93,9 +94,9 @@ bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEE +@@ -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_1 = libdummy.a -+@NEVER_TRUE@am__append_2 = libdummy.a +-@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_2 = libld_elf.a -+@NATIVE_LD_TRUE@am__append_3 = libld_elf.a +-@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 -@@ -159,7 +160,7 @@ am_ld_OBJECTS = ld.$(OBJEXT) ldgeneric.$ - ldscript.$(OBJEXT) symbolhash.$(OBJEXT) sectionhash.$(OBJEXT) \ +@@ -172,7 +173,7 @@ am_ld_OBJECTS = ld.$(OBJEXT) ldgeneric.$ versionhash.$(OBJEXT) ld_OBJECTS = $(am_ld_OBJECTS) --ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__append_2) -+ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__append_3) + 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 = -@@ -340,6 +341,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -361,6 +362,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -1571,7 +1745,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -371,6 +373,7 @@ SHELL = @SHELL@ +@@ -392,6 +394,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ @@ -1579,57 +1753,64 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -434,11 +437,11 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ - -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf \ - -I$(srcdir)/../libdwfl -I$(srcdir)/../libasm +@@ -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) $($(*F)_CFLAGS) \ -+ $(am__append_1) ++ $($(*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 -@@ -452,8 +455,8 @@ AM_LFLAGS = -Pld -olex.yy.c + 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_1) --@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_1) -+@NATIVE_LD_FALSE@ $(am__append_2) -+@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_2) +-@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 \ -@@ -479,13 +482,18 @@ libeu = ../lib/libeu.a - - # XXX While the file is not finished, don't warn about this +@@ -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 - readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl - nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl \ - $(demanglelib) - - size_LDADD = $(libelf) $(libeu) - strip_LDADD = $(libebl) $(libelf) $(libeu) -ldl --ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(am__append_2) -+ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(am__append_3) ++ + # 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) -ldl - findtextrel_LDADD = $(libdw) $(libelf) + elflint_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl + findtextrel_LDADD = $(libdw) $(libelf) $(argp_LDADD) +diffelfutils/src/readelf.c git-portable/src/readelf.c --- elfutils/src/readelf.c +++ elfutils/src/readelf.c -@@ -4368,10 +4368,12 @@ listptr_base (struct listptr *p) +@@ -4366,10 +4366,12 @@ listptr_base (struct listptr *p) return base; } @@ -1644,7 +1825,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. struct listptr *p1 = (void *) a; struct listptr *p2 = (void *) b; -@@ -4467,8 +4469,11 @@ static void +@@ -4465,8 +4467,11 @@ static void sort_listptr (struct listptr_table *table, const char *name) { if (table->n > 0) @@ -1658,7 +1839,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. } static bool -@@ -9539,7 +9544,7 @@ dump_archive_index (Elf *elf, const char +@@ -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)) @@ -1667,6 +1848,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. while (1) #endif error (EXIT_FAILURE, 0, +diffelfutils/src/strings.c git-portable/src/strings.c --- elfutils/src/strings.c +++ elfutils/src/strings.c @@ -43,6 +43,10 @@ @@ -1706,58 +1888,40 @@ Various portability fixes not deemed acceptable for inclusion into git repo. } if (unlikely (elfmap == MAP_FAILED)) +diffelfutils/src/strip.c git-portable/src/strip.c --- elfutils/src/strip.c +++ elfutils/src/strip.c -@@ -45,6 +45,12 @@ - #include - #include - -+#ifdef HAVE_FUTIMES -+# define FUTIMES(fd, fname, tvp) futimes (fd, tvp) -+#else -+# define FUTIMES(fd, fname, tvp) utimes (fname, tvp) -+#endif -+ - typedef uint8_t GElf_Byte; - - /* Name and version of program. */ -@@ -318,8 +324,18 @@ process_file (const char *fname) - - /* If we have to preserve the timestamp, we need it in the - format utimes() understands. */ -+#ifdef HAVE_STRUCT_STAT_ST_ATIM - TIMESPEC_TO_TIMEVAL (&tv[0], &pre_st.st_atim); -+#else -+ tv[0].tv_sec = pre_st.st_atime; -+ tv[0].tv_usec = 0; -+#endif -+#ifdef HAVE_STRUCT_STAT_ST_MTIM - TIMESPEC_TO_TIMEVAL (&tv[1], &pre_st.st_mtim); -+#else -+ tv[1].tv_sec = pre_st.st_atime; -+ tv[1].tv_usec = 0; -+#endif - } - - /* Open the file. */ -@@ -2091,7 +2107,7 @@ while computing checksum for debug infor +@@ -2191,7 +2191,14 @@ while computing checksum for debug infor /* If requested, preserve the timestamp. */ if (tvp != NULL) { -- if (futimes (fd, tvp) != 0) -+ if (FUTIMES (fd, output_fname, tvp) != 0) ++#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'"), -@@ -2148,7 +2164,7 @@ handle_ar (int fd, Elf *elf, const char +@@ -2263,7 +2270,14 @@ handle_ar (int fd, Elf *elf, const char if (tvp != NULL) { -- if (unlikely (futimes (fd, tvp) != 0)) -+ if (unlikely (FUTIMES (fd, fname, tvp) != 0)) ++#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); +diffelfutils/tests/backtrace.c git-portable/tests/backtrace.c --- elfutils/tests/backtrace.c +++ elfutils/tests/backtrace.c @@ -36,6 +36,7 @@ @@ -1768,9 +1932,10 @@ Various portability fixes not deemed acceptable for inclusion into git repo. #include ELFUTILS_HEADER(dwfl) #ifndef __linux__ +diffelfutils/tests/ChangeLog git-portable/tests/ChangeLog --- elfutils/tests/ChangeLog +++ elfutils/tests/ChangeLog -@@ -421,6 +421,13 @@ +@@ -614,6 +614,13 @@ 2013-12-02 Jan Kratochvil @@ -1784,7 +1949,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * Makefile.am (check_PROGRAMS): Add backtrace, backtrace-child, backtrace-data and backtrace-dwarf. (BUILT_SOURCES, clean-local, backtrace-child-biarch): New. -@@ -1285,6 +1292,8 @@ +@@ -1478,6 +1485,8 @@ 2008-01-21 Roland McGrath @@ -1793,7 +1958,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. * testfile45.S.bz2: Add tests for cltq, cqto. * testfile45.expect.bz2: Adjust. -@@ -1993,6 +2002,11 @@ +@@ -2186,6 +2195,11 @@ * Makefile.am (TESTS): Add run-elflint-test.sh. (EXTRA_DIST): Add run-elflint-test.sh and testfile18.bz2. @@ -1805,6 +1970,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. 2005-05-24 Ulrich Drepper * get-files.c (main): Use correct format specifier. +diffelfutils/tests/line2addr.c git-portable/tests/line2addr.c --- elfutils/tests/line2addr.c +++ elfutils/tests/line2addr.c @@ -124,7 +124,7 @@ main (int argc, char *argv[]) @@ -1816,66 +1982,71 @@ Various portability fixes not deemed acceptable for inclusion into git repo. { default: case 0: +diffelfutils/tests/Makefile.am git-portable/tests/Makefile.am --- elfutils/tests/Makefile.am +++ elfutils/tests/Makefile.am -@@ -365,6 +365,7 @@ get_lines_LDADD = $(libdw) $(libelf) +@@ -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) - addrscopes_LDADD = $(libdw) - funcscopes_LDADD = $(libdw) + line2addr_LDADD = $(libdw) $(argp_LDADD) + addrscopes_LDADD = $(libdw) $(argp_LDADD) + funcscopes_LDADD = $(libdw) $(argp_LDADD) +diffelfutils/tests/Makefile.in git-portable/tests/Makefile.in --- elfutils/tests/Makefile.in +++ elfutils/tests/Makefile.in -@@ -80,13 +80,14 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(top_srcdir)/config/test-driver ChangeLog --@STANDALONE_FALSE@am__append_1 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ +@@ -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) -+@STANDALONE_FALSE@am__append_2 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ ++@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_2 = -Wl,-rpath-link,../libasm:../libdw:../libelf --@TESTS_RPATH_TRUE@am__append_3 = -Wl,-rpath,$(BUILD_RPATH) -+@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_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) \ -@@ -113,7 +114,7 @@ check_PROGRAMS = arextract$(EXEEXT) arsy - deleted$(EXEEXT) deleted-lib.so$(EXEEXT) \ - aggregate_size$(EXEEXT) vdsosyms$(EXEEXT) $(am__EXEEXT_1) \ - $(am__EXEEXT_2) $(am__EXEEXT_4) --@BIARCH_TRUE@am__append_4 = backtrace-child-biarch -+@BIARCH_TRUE@am__append_5 = backtrace-child-biarch +@@ -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 \ -@@ -159,14 +160,14 @@ TESTS = run-arextract.sh run-arsymtest.s - run-stack-i-test.sh run-readelf-dwz-multi.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 \ -- $(am__EXEEXT_2) $(am__append_7) $(am__append_8) \ -+ $(am__EXEEXT_2) $(am__append_8) $(am__append_9) \ - $(am__EXEEXT_4) --@STANDALONE_FALSE@am__append_5 = msg_tst md5-sha1-test - @STANDALONE_FALSE@am__append_6 = msg_tst md5-sha1-test --@LZMA_TRUE@am__append_7 = run-readelf-s.sh run-dwflsyms.sh --@ZLIB_TRUE@am__append_8 = run-readelf-zdebug.sh --@HAVE_LIBASM_TRUE@am__append_9 = $(asm_TESTS) -+@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) -+@HAVE_LIBASM_TRUE@am__append_11 = $(asm_TESTS) + 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 \ -@@ -787,6 +788,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +@@ -830,6 +831,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ @@ -1883,7 +2054,7 @@ Various portability fixes not deemed acceptable for inclusion into git repo. LEX = @LEX@ LEXLIB = @LEXLIB@ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -818,6 +820,7 @@ SHELL = @SHELL@ +@@ -861,6 +863,7 @@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ @@ -1891,39 +2062,47 @@ Various portability fixes not deemed acceptable for inclusion into git repo. XGETTEXT = @XGETTEXT@ XGETTEXT_015 = @XGETTEXT_015@ XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -877,12 +880,12 @@ top_build_prefix = @top_build_prefix@ +@@ -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_1) +-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_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_2) +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) $($(*F)_CFLAGS) \ -+ $(am__append_1) ++ $($(*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 '$@'" -@@ -890,7 +893,7 @@ textrel_msg = echo "WARNING: TEXTREL fou + @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_2) $(am__append_3) -+AM_LDFLAGS = $(am__append_3) $(am__append_4) +-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 \ -@@ -1106,6 +1109,7 @@ get_lines_LDADD = $(libdw) $(libelf) +@@ -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) - addrscopes_LDADD = $(libdw) - funcscopes_LDADD = $(libdw) + line2addr_LDADD = $(libdw) $(argp_LDADD) + addrscopes_LDADD = $(libdw) $(argp_LDADD) + funcscopes_LDADD = $(libdw) $(argp_LDADD) diff --git a/elfutils.changes b/elfutils.changes index e8d3868..0d2dcf0 100644 --- a/elfutils.changes +++ b/elfutils.changes @@ -1,3 +1,26 @@ +------------------------------------------------------------------- +Fri Sep 11 17:13:14 UTC 2015 - tonyj@suse.com + +- Update to version 0.163 + Drop patch elfutils-fix-dir-traversal-vuln-in-ar-extraction.patch + Drop patch elfutils-0.148-dont-crash.diff (fixed by 9ceebe69) + + Changelog: + 0.163: + - Bug fixes only, no new features. + 0.162: + -libdw: Install new header elfutils/known-dwarf.h. + dwarf.h Add preliminary DWARF5 constants DW_TAG_atomic_type, + DW_LANG_Fortran03, DW_LANG_Fortran08. dwarf_peel_type now also + handles DW_TAG_atomic_type. + - addr2line: Input addresses are now always interpreted as hexadecimal + numbers, never as octal or decimal numbers. + New option -a, --addresses to print address before each entry. + New option -C, --demangle to show demangled symbols. + New option --pretty-print to print all information on one line. + - ar: CVE-2014-9447 Directory traversal vulnerability in ar extraction. + - backends: x32 support. + ------------------------------------------------------------------- Wed Feb 11 01:28:52 UTC 2015 - tonyj@suse.com diff --git a/elfutils.spec b/elfutils.spec index 59e6351..49d9961 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -17,7 +17,7 @@ Name: elfutils -Version: 0.161 +Version: 0.163 Release: 0 Summary: Higher-level library to access ELF License: SUSE-GPL-2.0-with-OSI-exception @@ -34,8 +34,6 @@ Patch2: elfutils-revert-portability-scanf.patch Patch3: libebl-prototype-fix.diff Patch4: elfutils-uninitialized.diff Patch5: elfutils-0.137-dwarf-header-check-fix.diff -Patch6: elfutils-0.148-dont-crash.diff -Patch7: elfutils-fix-dir-traversal-vuln-in-ar-extraction.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf BuildRequires: automake @@ -148,8 +146,6 @@ to develop applications that require these. %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p1 -%patch7 -p1 %build # Change DATE/TIME macros to use last change time of elfutils.changes @@ -246,6 +242,7 @@ ls -lR $RPM_BUILD_ROOT%{_libdir}/libelf* %{_includedir}/elfutils/libdw.h %{_includedir}/elfutils/libdwelf.h %{_includedir}/elfutils/libdwfl.h +%{_includedir}/elfutils/known-dwarf.h %files lang -f %{name}.lang From a79a7670bdb7f9105edb6aff79bb968f70d08051a24695b98894c11cfa3c231a Mon Sep 17 00:00:00 2001 From: Tony Jones Date: Sun, 13 Sep 2015 03:40:55 +0000 Subject: [PATCH 2/2] Accepting request 330718 from home:jones_tony:branches:Base:System OBS-URL: https://build.opensuse.org/request/show/330718 OBS-URL: https://build.opensuse.org/package/show/Base:System/elfutils?expand=0&rev=71 --- elfutils.changes | 2 ++ 1 file changed, 2 insertions(+) diff --git a/elfutils.changes b/elfutils.changes index 0d2dcf0..5b8f54c 100644 --- a/elfutils.changes +++ b/elfutils.changes @@ -4,6 +4,8 @@ Fri Sep 11 17:13:14 UTC 2015 - tonyj@suse.com - Update to version 0.163 Drop patch elfutils-fix-dir-traversal-vuln-in-ar-extraction.patch Drop patch elfutils-0.148-dont-crash.diff (fixed by 9ceebe69) + Drop patch elfutils-portability-0.161.patch + Add patch elfutils-portability-0.163.patch Changelog: 0.163: