From: Paul Eggert Date: Mon, 24 Dec 2012 01:10:38 +0000 (-0800) Subject: maint: don't enable warnings by default unless GCC 4.6 or later X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Ftar;a=commitdiff_plain;h=53358983ebbdb88c20d1a0121398534ec03aa485 maint: don't enable warnings by default unless GCC 4.6 or later * configure.ac (gl_GCC_VERSION_IFELSE): New macro, from coreutils. (gl_gcc_warnings): By default, disable warnings for GCC versions before 4.6. This works around a failure when building from git on Ubuntu 10, reported privately by Nathan Stratton Treadway. --- diff --git a/configure.ac b/configure.ac index 2310600..fbf41e6 100644 --- a/configure.ac +++ b/configure.ac @@ -112,6 +112,24 @@ gl_INIT # paxutils modules tar_PAXUTILS +# gl_GCC_VERSION_IFELSE([major], [minor], [run-if-found], [run-if-not-found]) +# ------------------------------------------------ +# If $CPP is gcc-MAJOR.MINOR or newer, then run RUN-IF-FOUND. +# Otherwise, run RUN-IF-NOT-FOUND. +AC_DEFUN([gl_GCC_VERSION_IFELSE], + [AC_PREPROC_IFELSE( + [AC_LANG_PROGRAM( + [[ +#if ($1) < __GNUC__ || (($1) == __GNUC__ && ($2) <= __GNUC_MINOR__) +/* ok */ +#else +# error "your version of gcc is older than $1.$2" +#endif + ]]), + ], [$3], [$4]) + ] +) + AC_ARG_ENABLE([gcc-warnings], [AS_HELP_STRING([--enable-gcc-warnings], [turn on many GCC warnings (for developers; best with GNU make)])], @@ -120,10 +138,9 @@ AC_ARG_ENABLE([gcc-warnings], *) AC_MSG_ERROR([bad value $enableval for gcc-warnings option]) ;; esac gl_gcc_warnings=$enableval], - [if test -d "$srcdir"/.git; then - gl_gcc_warnings=yes - else - gl_gcc_warnings=no + [gl_gcc_warnings=no + if test -d "$srcdir"/.git; then + gl_GCC_VERSION_IFELSE([4], [6], [gl_gcc_warnings=yes]) fi] )