diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac index 23106006..fbf41e64 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] ) |