--- elfutils/ChangeLog +++ elfutils/ChangeLog @@ -1,3 +1,16 @@ +2005-02-07 Roland McGrath + + * configure.ac (WEXTRA): Check for -Wextra and set this substitution. + +2003-08-12 Roland McGrath + + * 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 * 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 + + * Makefile.am (WEXTRA): New variable, substituted by configure. + (AM_CFLAGS): Use it in place of -Wextra. + 2005-04-30 Ulrich Drepper * Makefile.am: Use -ffunction-sections for xmalloc.c. --- 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 + + * Makefile.am (WEXTRA): New variable, substituted by configure. + (AM_CFLAGS): Use it instead of -Wextra. + 2005-02-15 Ulrich Drepper * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. --- 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 #include +#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@