diff options
author | Ned Ludd <solar@gentoo.org> | 2005-05-17 15:05:59 +0000 |
---|---|---|
committer | Ned Ludd <solar@gentoo.org> | 2005-05-17 15:05:59 +0000 |
commit | eb8a26338bfb3d56402904f1d8adabcc268b3c18 (patch) | |
tree | 22a76ae532275a0c28ca9285fc33cad3a07edde3 /dev-libs | |
parent | Stable on sparc (diff) | |
download | gentoo-2-eb8a26338bfb3d56402904f1d8adabcc268b3c18.tar.gz gentoo-2-eb8a26338bfb3d56402904f1d8adabcc268b3c18.tar.bz2 gentoo-2-eb8a26338bfb3d56402904f1d8adabcc268b3c18.zip |
- version bump to 0.108 and added a new patch from Jakub Jelinek to fix misc crashes and the heap overflow on some invalid ELF files
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/elfutils/ChangeLog | 9 | ||||
-rw-r--r-- | dev-libs/elfutils/Manifest | 31 | ||||
-rw-r--r-- | dev-libs/elfutils/elfutils-0.108.ebuild | 57 | ||||
-rw-r--r-- | dev-libs/elfutils/files/digest-elfutils-0.108 | 2 | ||||
-rw-r--r-- | dev-libs/elfutils/files/elfutils-0.108-portability.patch | 518 |
5 files changed, 597 insertions, 20 deletions
diff --git a/dev-libs/elfutils/ChangeLog b/dev-libs/elfutils/ChangeLog index 691262060d55..dff878008762 100644 --- a/dev-libs/elfutils/ChangeLog +++ b/dev-libs/elfutils/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-libs/elfutils # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/elfutils/ChangeLog,v 1.53 2005/05/15 14:14:21 kloeri Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/elfutils/ChangeLog,v 1.54 2005/05/17 15:05:59 solar Exp $ + +*elfutils-0.108 (17 May 2005) + + 17 May 2005; <solar@gentoo.org> +files/elfutils-0.108-portability.patch, + +elfutils-0.108.ebuild: + - version bump to 0.108 and added a new patch from Jakub Jelinek to fix misc + crashes and the heap overflow on some invalid ELF files 15 May 2005; Bryan Østergaard <kloeri@gentoo.org> elfutils-0.94-r2.ebuild: diff --git a/dev-libs/elfutils/Manifest b/dev-libs/elfutils/Manifest index e689074f8df9..1f7746012b35 100644 --- a/dev-libs/elfutils/Manifest +++ b/dev-libs/elfutils/Manifest @@ -1,27 +1,20 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -MD5 f6c258a1f23bea03830d6626fd1b6e7a ChangeLog 6460 +MD5 17eff246a734b8a44781417a12ec4ea9 elfutils-0.94-r1.ebuild 1842 MD5 7b94d8a842a02bed78d77c0315f95068 elfutils-0.101-r1.ebuild 1588 -MD5 822a1e6582def7c62c7ae773ca491143 elfutils-0.97.ebuild 1420 MD5 8556ce83ed38bc6be54b78d52a13b49b elfutils-0.97-r1.ebuild 1477 -MD5 17eff246a734b8a44781417a12ec4ea9 elfutils-0.94-r1.ebuild 1842 -MD5 79ca1a79ab3d97d51267f2b9e579c99d elfutils-0.94-r2.ebuild 1906 MD5 1c5255251ca86c894b299c606c3bad3c elfutils-0.101.ebuild 1531 -MD5 696196044decee0b8d782d08b3e907aa files/digest-elfutils-0.97-r1 65 -MD5 40321e776b95020f2e51e5f481b3486e files/elfutils-0.101-portability.patch 6052 +MD5 822a1e6582def7c62c7ae773ca491143 elfutils-0.97.ebuild 1420 +MD5 8b161b3984768e10c025f2696ed5976e elfutils-0.108.ebuild 1690 +MD5 79ca1a79ab3d97d51267f2b9e579c99d elfutils-0.94-r2.ebuild 1906 +MD5 8d4faf3c57ed2f296651b18ebdee0865 ChangeLog 6730 MD5 25da57fec6a38ed0c69ec6682b595398 files/elfutils-0.94-alpha-mips-atime.diff 699 -MD5 68f794575cd890d5131853a4ca7ee9f3 files/digest-elfutils-0.101-r1 66 +MD5 1e6460efdb609828aa57b5874813972a files/elfutils-0.101-bswap.patch 849 +MD5 40321e776b95020f2e51e5f481b3486e files/elfutils-0.101-portability.patch 6052 MD5 98e005817217428fef7c200faec78382 files/digest-elfutils-0.94-r1 65 MD5 98e005817217428fef7c200faec78382 files/digest-elfutils-0.94-r2 65 -MD5 68f794575cd890d5131853a4ca7ee9f3 files/digest-elfutils-0.101 66 +MD5 696196044decee0b8d782d08b3e907aa files/digest-elfutils-0.97-r1 65 MD5 696196044decee0b8d782d08b3e907aa files/digest-elfutils-0.97 65 -MD5 1e6460efdb609828aa57b5874813972a files/elfutils-0.101-bswap.patch 849 +MD5 41c5834ecf3d28e43b7fbe3b927e582a files/elfutils-0.108-portability.patch 18453 +MD5 68f794575cd890d5131853a4ca7ee9f3 files/digest-elfutils-0.101-r1 66 +MD5 68f794575cd890d5131853a4ca7ee9f3 files/digest-elfutils-0.101 66 +MD5 12294cbe7395c8366308d2a424d1d7ae files/digest-elfutils-0.108 143 MD5 51c01230a938c5b39a545e0611170b0f files/elfutils-sections-heap-overflow.diff 574 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.1 (GNU/Linux) - -iD8DBQFCh1lPKf2g/qXtneoRAmeVAJ9el7ZJhU5nDLxnRKaiAMFq4uj8IQCdHBSb -fmjXPyu3RTCceJkkL8V/yCY= -=xrqh ------END PGP SIGNATURE----- diff --git a/dev-libs/elfutils/elfutils-0.108.ebuild b/dev-libs/elfutils/elfutils-0.108.ebuild new file mode 100644 index 000000000000..fcdc67e7df06 --- /dev/null +++ b/dev-libs/elfutils/elfutils-0.108.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/elfutils/elfutils-0.108.ebuild,v 1.1 2005/05/17 15:05:59 solar Exp $ + +inherit eutils + +DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)" +HOMEPAGE="http://people.redhat.com/drepper/" +SRC_URI="mirror://gentoo/${P}.tar.gz mirror://gentoo/${P}.robustify.patch.bz2" + +LICENSE="OpenSoftware" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="nls uclibc" + +# This pkg does not actually seem to compile currently in a uClibc +# environment (xrealloc errs), but we need to ensure that glibc never +# gets pulled in as a dep since this package does not respect virtual/libc +DEPEND="!uclibc? ( >=sys-libs/glibc-2.3.2 ) + sys-devel/gettext + >=sys-devel/binutils-2.14.90.0.6 + >=sys-devel/gcc-3.2.1-r6 + !dev-libs/libelf" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${PN}-0.101-bswap.patch + epatch "${FILESDIR}"/${P}-portability.patch + + #the next secyurity patch should not be needed in 0.109 + epatch ${WORKDIR}/elfutils-0.108.robustify.patch + + # Needed by ${P}-portability.patch + autoreconf || die + + find . -name Makefile.in -print0 | xargs -0 sed -i -e 's:-W\(error\|extra\)::g' +} + +src_compile() { + econf \ + --program-prefix="eu-" \ + --enable-shared \ + $(use_enable nls) \ + || die "./configure failed" + emake || die +} + +src_test() { + env LD_LIBRARY_PATH="${S}/libelf:${S}/libebl:${S}/libdw:${S}/libasm" \ + make check || die "test failed" +} + +src_install() { + make DESTDIR="${D}" install || die + dodoc AUTHORS ChangeLog NEWS NOTES README THANKS TODO +} diff --git a/dev-libs/elfutils/files/digest-elfutils-0.108 b/dev-libs/elfutils/files/digest-elfutils-0.108 new file mode 100644 index 000000000000..59f8fc8b9185 --- /dev/null +++ b/dev-libs/elfutils/files/digest-elfutils-0.108 @@ -0,0 +1,2 @@ +MD5 fd318a634c8f67c7ac8a975f16965cc3 elfutils-0.108.tar.gz 938036 +MD5 c619914318460f1dc9434407b982f64a elfutils-0.108.robustify.patch.bz2 5637 diff --git a/dev-libs/elfutils/files/elfutils-0.108-portability.patch b/dev-libs/elfutils/files/elfutils-0.108-portability.patch new file mode 100644 index 000000000000..c4b85fa38526 --- /dev/null +++ b/dev-libs/elfutils/files/elfutils-0.108-portability.patch @@ -0,0 +1,518 @@ +--- elfutils/ChangeLog ++++ elfutils/ChangeLog +@@ -1,3 +1,16 @@ ++2005-02-07 Roland McGrath <roland@frob.com> ++ ++ * configure.ac (WEXTRA): Check for -Wextra and set this substitution. ++ ++2003-08-12 Roland McGrath <roland@redhat.com> ++ ++ * 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-02-22 Ulrich Drepper <drepper@redhat.com> + + * Makefile.am (all_SUBDIRS): Don't add doc subdir for now. +--- elfutils/Makefile.in ++++ elfutils/Makefile.in +@@ -127,6 +127,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +--- elfutils/config/Makefile.in ++++ elfutils/config/Makefile.in +@@ -105,6 +105,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +--- elfutils/configure ++++ elfutils/configure +@@ -277,7 +277,7 @@ PACKAGE_STRING='Red Hat elfutils 0.108' + PACKAGE_BUGREPORT='http://bugzilla.redhat.com/bugzilla/' + + ac_unique_file="libelf/libelf.h" +-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB YACC LEX LEXLIB LEX_OUTPUT_ROOT LOCALEDIR DATADIRNAME NATIVE_LD_TRUE NATIVE_LD_FALSE base_cpu MUDFLAP_TRUE MUDFLAP_FALSE USE_NLS MKINSTALLDIRS MSGFMT GMSGFMT XGETTEXT MSGMERGE LIBOBJS LTLIBOBJS' ++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB YACC LEX LEXLIB LEX_OUTPUT_ROOT WEXTRA LOCALEDIR DATADIRNAME NATIVE_LD_TRUE NATIVE_LD_FALSE base_cpu MUDFLAP_TRUE MUDFLAP_FALSE USE_NLS MKINSTALLDIRS MSGFMT GMSGFMT XGETTEXT MSGMERGE LIBOBJS LTLIBOBJS' + ac_subst_files='' + + # Initialize some variables set by options. +@@ -3373,6 +3373,58 @@ echo "$as_me: error: gcc with C99 suppor + fi + + ++echo "$as_me:$LINENO: checking for -Wextra option to $CC" >&5 ++echo $ECHO_N "checking for -Wextra option to $CC... $ECHO_C" >&6 ++if test "${ac_cv_cc_wextra+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ old_CFLAGS="$CFLAGS" ++CFLAGS="$CFLAGS -Wextra" ++cat >conftest.$ac_ext <<_ACEOF ++void foo (void) { } ++_ACEOF ++rm -f conftest.$ac_objext ++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && ++ { ac_try='test -z "$ac_c_werror_flag" ++ || test ! -s conftest.err' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; } && ++ { ac_try='test -s conftest.$ac_objext' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; }; then ++ ac_cv_cc_wextra=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ac_cv_cc_wextra=no ++fi ++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ++CFLAGS="$old_CFLAGS" ++fi ++echo "$as_me:$LINENO: result: $ac_cv_cc_wextra" >&5 ++echo "${ECHO_T}$ac_cv_cc_wextra" >&6 ++ ++if test "x$ac_cv_cc_wextra" = yes; then ++ WEXTRA=-Wextra ++else ++ WEXTRA=-W ++fi ++ ++ + LOCALEDIR=$datadir + + cat >>confdefs.h <<_ACEOF +@@ -4818,6 +4870,7 @@ s,@YACC@,$YACC,;t t + s,@LEX@,$LEX,;t t + s,@LEXLIB@,$LEXLIB,;t t + s,@LEX_OUTPUT_ROOT@,$LEX_OUTPUT_ROOT,;t t ++s,@WEXTRA@,$WEXTRA,;t t + s,@LOCALEDIR@,$LOCALEDIR,;t t + s,@DATADIRNAME@,$DATADIRNAME,;t t + s,@NATIVE_LD_TRUE@,$NATIVE_LD_TRUE,;t t +--- elfutils/configure.ac ++++ elfutils/configure.ac +@@ -64,6 +64,15 @@ CFLAGS="$old_CFLAGS"]) + AS_IF([test "x$ac_cv_c99" != xyes], + AC_MSG_ERROR([gcc with C99 support required])) + ++AC_CACHE_CHECK([for -Wextra option to $CC], ac_cv_cc_wextra, [dnl ++old_CFLAGS="$CFLAGS" ++CFLAGS="$CFLAGS -Wextra" ++AC_COMPILE_IFELSE([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" = yes], [WEXTRA=-Wextra], [WEXTRA=-W]) ++ + LOCALEDIR=$datadir + AC_SUBST(LOCALEDIR) + AC_DEFINE_UNQUOTED(LOCALEDIR, "$LOCALEDIR") +--- elfutils/lib/ChangeLog ++++ elfutils/lib/ChangeLog +@@ -4,6 +4,11 @@ + * Makefile.am (libeu_a_SOURCES): Add it. + * system.h: Declare crc32_file. + ++2005-02-07 Roland McGrath <roland@redhat.com> ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it in place of -Wextra. ++ + 2005-04-30 Ulrich Drepper <drepper@redhat.com> + + * Makefile.am: Use -ffunction-sections for xmalloc.c. +--- elfutils/lib/Makefile.am ++++ elfutils/lib/Makefile.am +@@ -16,12 +16,13 @@ + ## Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + ## + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H ++WEXTRA = @WEXTRA@ + if MUDFLAP + AM_CFLAGS = -fmudflap + else + AM_CFLAGS = + endif +-AM_CFLAGS += -fpic -Wall -Wshadow -Werror -Wunused -Wextra $($(*F)_CFLAGS) ++AM_CFLAGS += -fpic -Wall -Wshadow -Werror -Wunused $(WEXTRA) $($(*F)_CFLAGS) + INCLUDES = -I$(srcdir)/../libelf -I.. + + noinst_LIBRARIES = libeu.a +--- elfutils/lib/Makefile.in ++++ elfutils/lib/Makefile.in +@@ -127,6 +127,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +@@ -169,9 +170,9 @@ sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ + @MUDFLAP_FALSE@AM_CFLAGS = -fpic -Wall -Wshadow -Werror -Wunused \ +-@MUDFLAP_FALSE@ -Wextra $($(*F)_CFLAGS) ++@MUDFLAP_FALSE@ $(WEXTRA) $($(*F)_CFLAGS) + @MUDFLAP_TRUE@AM_CFLAGS = -fmudflap -fpic -Wall -Wshadow -Werror \ +-@MUDFLAP_TRUE@ -Wunused -Wextra $($(*F)_CFLAGS) ++@MUDFLAP_TRUE@ -Wunused $(WEXTRA) $($(*F)_CFLAGS) + INCLUDES = -I$(srcdir)/../libelf -I.. + noinst_LIBRARIES = libeu.a + libeu_a_SOURCES = xstrdup.c xstrndup.c xmalloc.c next_prime.c \ +--- elfutils/libasm/Makefile.am ++++ elfutils/libasm/Makefile.am +@@ -13,12 +13,13 @@ + ## 3001 King Ranch Road, Ukiah, CA 95482. + ## + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H ++WEXTRA = @WEXTRA@ + if MUDFLAP + AM_CFLAGS = -fmudflap + else + AM_CFLAGS = + endif +-AM_CFLAGS += -Wall -Wshadow -Werror -Wunused -Wextra -Wformat=2 ++AM_CFLAGS += -Wall -Wshadow -Werror -Wunused $(WEXTRA) -Wformat=2 + INCLUDES = -I. -I$(srcdir) -I.. -I$(top_srcdir)/libelf -I$(top_srcdir)/libebl \ + -I$(top_srcdir)/lib + GCC_INCLUDE = -I$(shell $(CC) -print-file-name=include) +--- elfutils/libasm/Makefile.in ++++ elfutils/libasm/Makefile.in +@@ -159,6 +159,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +@@ -200,10 +201,10 @@ sbindir = @sbindir@ + sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ +-@MUDFLAP_FALSE@AM_CFLAGS = -Wall -Wshadow -Werror -Wunused -Wextra \ ++@MUDFLAP_FALSE@AM_CFLAGS = -Wall -Wshadow -Werror -Wunused $(WEXTRA) \ + @MUDFLAP_FALSE@ -Wformat=2 + @MUDFLAP_TRUE@AM_CFLAGS = -fmudflap -Wall -Wshadow -Werror -Wunused \ +-@MUDFLAP_TRUE@ -Wextra -Wformat=2 ++@MUDFLAP_TRUE@ $(WEXTRA) -Wformat=2 + INCLUDES = -I. -I$(srcdir) -I.. -I$(top_srcdir)/libelf -I$(top_srcdir)/libebl \ + -I$(top_srcdir)/lib + +--- elfutils/libcpu/ChangeLog ++++ elfutils/libcpu/ChangeLog +@@ -1,3 +1,8 @@ ++2005-04-04 Roland McGrath <roland@redhat.com> ++ ++ * Makefile.am (WEXTRA): New variable, substituted by configure. ++ (AM_CFLAGS): Use it instead of -Wextra. ++ + 2005-02-15 Ulrich Drepper <drepper@redhat.com> + + * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. +--- elfutils/libcpu/Makefile.am ++++ elfutils/libcpu/Makefile.am +@@ -13,7 +13,8 @@ + ## 3001 King Ranch Road, Ukiah, CA 95482. + ## + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H +-AM_CFLAGS = -Wall -Wshadow -Werror -Wextra -Wformat=2 -Wunused ++WEXTRA = @WEXTRA@ ++AM_CFLAGS = -Wall -Wshadow -Werror $(WEXTRA) -Wformat=2 -Wunused + INCLUDES = -I$(srcdir) + + noinst_LIBRARIES = libcpu_i386.a +--- elfutils/libcpu/Makefile.in ++++ elfutils/libcpu/Makefile.in +@@ -122,6 +122,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +@@ -163,7 +164,7 @@ sbindir = @sbindir@ + sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ +-AM_CFLAGS = -Wall -Wshadow -Werror -Wextra -Wformat=2 -Wunused ++AM_CFLAGS = -Wall -Wshadow -Werror $(WEXTRA) -Wformat=2 -Wunused + INCLUDES = -I$(srcdir) + noinst_LIBRARIES = libcpu_i386.a + libcpu_i386_a_SOURCES = i386_dis.c +--- elfutils/libdw/Makefile.am ++++ elfutils/libdw/Makefile.am +@@ -13,12 +13,13 @@ + ## 3001 King Ranch Road, Ukiah, CA 95482. + ## + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H ++WEXTRA = @WEXTRA@ + if MUDFLAP + AM_CFLAGS = -fmudflap + else + AM_CFLAGS = + endif +-AM_CFLAGS += -Wall -Werror -Wshadow -Wunused -Wformat=2 -Wextra -std=gnu99 ++AM_CFLAGS += -Wall -Werror -Wshadow -Wunused -Wformat=2 $(WEXTRA) -std=gnu99 + INCLUDES = -I. -I$(srcdir) -I$(srcdir)/../libelf -I.. -I$(srcdir)/../lib + VERSION = 1 + +--- elfutils/libdw/Makefile.in ++++ elfutils/libdw/Makefile.in +@@ -190,6 +190,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +@@ -232,9 +233,9 @@ sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ + @MUDFLAP_FALSE@AM_CFLAGS = -Wall -Werror -Wshadow -Wunused -Wformat=2 \ +-@MUDFLAP_FALSE@ -Wextra -std=gnu99 ++@MUDFLAP_FALSE@ $(WEXTRA) -std=gnu99 + @MUDFLAP_TRUE@AM_CFLAGS = -fmudflap -Wall -Werror -Wshadow -Wunused \ +-@MUDFLAP_TRUE@ -Wformat=2 -Wextra -std=gnu99 ++@MUDFLAP_TRUE@ -Wformat=2 $(WEXTRA) -std=gnu99 + INCLUDES = -I. -I$(srcdir) -I$(srcdir)/../libelf -I.. -I$(srcdir)/../lib + lib_LIBRARIES = libdw.a + @MUDFLAP_FALSE@noinst_LIBRARIES = libdw_pic.a +--- elfutils/libebl/Makefile.am ++++ elfutils/libebl/Makefile.am +@@ -13,12 +13,13 @@ + ## 3001 King Ranch Road, Ukiah, CA 95482. + ## + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DOBJDIR=\"$(shell pwd)\" ++WEXTRA = @WEXTRA@ + if MUDFLAP + AM_CFLAGS = -fmudflap + else + AM_CFLAGS = + endif +-AM_CFLAGS += -fpic -Wall -Wshadow -Werror -Wunused -Wextra -Wformat=2 \ ++AM_CFLAGS += -fpic -Wall -Wshadow -Werror -Wunused $(WEXTRA) -Wformat=2 \ + -std=gnu99 + + INCLUDES = -I$(srcdir) -I$(top_srcdir)/libelf -I$(top_srcdir)/lib -I.. +--- elfutils/libebl/Makefile.in ++++ elfutils/libebl/Makefile.in +@@ -236,6 +236,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +@@ -278,9 +279,9 @@ sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ + @MUDFLAP_FALSE@AM_CFLAGS = -fpic -Wall -Wshadow -Werror -Wunused \ +-@MUDFLAP_FALSE@ -Wextra -Wformat=2 -std=gnu99 ++@MUDFLAP_FALSE@ $(WEXTRA) -Wformat=2 -std=gnu99 + @MUDFLAP_TRUE@AM_CFLAGS = -fmudflap -fpic -Wall -Wshadow -Werror \ +-@MUDFLAP_TRUE@ -Wunused -Wextra -Wformat=2 -std=gnu99 ++@MUDFLAP_TRUE@ -Wunused $(WEXTRA) -Wformat=2 -std=gnu99 + INCLUDES = -I$(srcdir) -I$(top_srcdir)/libelf -I$(top_srcdir)/lib -I.. + lib_LIBRARIES = libebl.a + modules = i386 sh mips x86_64 ia64 alpha arm sparc ppc ppc64 +--- elfutils/libelf/Makefile.am ++++ elfutils/libelf/Makefile.am +@@ -16,12 +16,13 @@ + ## Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + ## + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H ++WEXTRA = @WEXTRA@ + if MUDFLAP + AM_CFLAGS = -fpic -fmudflap + else + AM_CFLAGS = + endif +-AM_CFLAGS += -Wall -Wshadow -Werror -Wunused -Wextra -Wformat=2 -std=gnu99 \ ++AM_CFLAGS += -Wall -Wshadow -Werror -Wunused $(WEXTRA) -Wformat=2 -std=gnu99 \ + $($(*F)_CFLAGS) + INCLUDES = -I$(srcdir) -I$(top_srcdir)/lib -I.. + GCC_INCLUDE = -I$(shell $(CC) -print-file-name=include) +--- elfutils/libelf/Makefile.in ++++ elfutils/libelf/Makefile.in +@@ -199,6 +199,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = 1 ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +@@ -240,10 +241,10 @@ sbindir = @sbindir@ + sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ +-@MUDFLAP_FALSE@AM_CFLAGS = -Wall -Wshadow -Werror -Wunused -Wextra \ ++@MUDFLAP_FALSE@AM_CFLAGS = -Wall -Wshadow -Werror -Wunused $(WEXTRA) \ + @MUDFLAP_FALSE@ -Wformat=2 -std=gnu99 $($(*F)_CFLAGS) + @MUDFLAP_TRUE@AM_CFLAGS = -fpic -fmudflap -Wall -Wshadow -Werror \ +-@MUDFLAP_TRUE@ -Wunused -Wextra -Wformat=2 -std=gnu99 \ ++@MUDFLAP_TRUE@ -Wunused $(WEXTRA) -Wformat=2 -std=gnu99 \ + @MUDFLAP_TRUE@ $($(*F)_CFLAGS) + INCLUDES = -I$(srcdir) -I$(top_srcdir)/lib -I.. + GCC_INCLUDE = -I$(shell $(CC) -print-file-name=include) +--- elfutils/m4/Makefile.in ++++ elfutils/m4/Makefile.in +@@ -103,6 +103,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ +--- elfutils/src/Makefile.am ++++ elfutils/src/Makefile.am +@@ -14,14 +14,15 @@ + ## + DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H $(YYDEBUG) \ + -DSRCDIR=\"$(shell cd $(srcdir);pwd)\" -DOBJDIR=\"$(shell pwd)\" ++WEXTRA = @WEXTRA@ + if MUDFLAP +-AM_CFLAGS = -Wall -Wshadow -Wunused -Wextra -std=gnu99 -fmudflap \ ++AM_CFLAGS = -Wall -Wshadow -Wunused $(WEXTRA) -std=gnu99 -fmudflap \ + $(native_ld_cflags) $(if $($(*F)_no_Wunused),,-Wunused) \ + $(if $($(*F)_no_Wformat),,-Wformat=2) + else + AM_CFLAGS = -Wall -Wshadow -std=gnu99 $(native_ld_cflags) \ + $(if $($(*F)_no_Werror),,-Werror) \ +- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ ++ $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \ + $(if $($(*F)_no_Wformat),,-Wformat=2) + endif + if MUDFLAP +--- elfutils/src/Makefile.in ++++ elfutils/src/Makefile.in +@@ -194,6 +194,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ -d + ac_ct_CC = @ac_ct_CC@ +@@ -237,10 +238,10 @@ sysconfdir = @sysconfdir@ + target_alias = @target_alias@ + @MUDFLAP_FALSE@AM_CFLAGS = -Wall -Wshadow -std=gnu99 $(native_ld_cflags) \ + @MUDFLAP_FALSE@ $(if $($(*F)_no_Werror),,-Werror) \ +-@MUDFLAP_FALSE@ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ ++@MUDFLAP_FALSE@ $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \ + @MUDFLAP_FALSE@ $(if $($(*F)_no_Wformat),,-Wformat=2) + +-@MUDFLAP_TRUE@AM_CFLAGS = -Wall -Wshadow -Wunused -Wextra -std=gnu99 -fmudflap \ ++@MUDFLAP_TRUE@AM_CFLAGS = -Wall -Wshadow -Wunused $(WEXTRA) -std=gnu99 -fmudflap \ + @MUDFLAP_TRUE@ $(native_ld_cflags) $(if $($(*F)_no_Wunused),,-Wunused) \ + @MUDFLAP_TRUE@ $(if $($(*F)_no_Wformat),,-Wformat=2) + +--- elfutils/src/findtextrel.c ++++ elfutils/src/findtextrel.c +@@ -476,7 +476,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) + { +--- elfutils/src/strip.c ++++ elfutils/src/strip.c +@@ -40,6 +40,12 @@ + #include <libebl.h> + #include <system.h> + ++#ifdef HAVE_FUTIMES ++# define FUTIMES(fd, fname, tvp) futimes (fd, tvp) ++#else ++# define FUTIMES(fd, fname, tvp) utimes (fname, tvp) ++#endif ++ + + /* Name and version of program. */ + static void print_version (FILE *stream, struct argp_state *state); +@@ -269,8 +275,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. */ +@@ -1677,7 +1693,7 @@ handle_elf (int fd, Elf *elf, const char + /* If requested, preserve the timestamp. */ + if (tvp != NULL) + { +- if (futimes (fd, tvp) != 0) ++ if (FUTIMES (fd, output_fname, tvp) != 0) + { + error (0, errno, gettext ("\ + cannot set access and modification date of '%s'"), +@@ -1734,7 +1750,7 @@ handle_ar (int fd, Elf *elf, const char + + if (tvp != NULL) + { +- if (unlikely (futimes (fd, tvp) != 0)) ++ if (unlikely (FUTIMES (fd, fname, tvp) != 0)) + { + error (0, errno, gettext ("\ + cannot set access and modification date of '%s'"), fname); +--- elfutils/tests/Makefile.in ++++ elfutils/tests/Makefile.in +@@ -266,6 +266,7 @@ SHELL = @SHELL@ + STRIP = @STRIP@ + USE_NLS = @USE_NLS@ + VERSION = @VERSION@ ++WEXTRA = @WEXTRA@ + XGETTEXT = @XGETTEXT@ + YACC = @YACC@ + ac_ct_CC = @ac_ct_CC@ |