X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=config%2Famanda%2Fflags.m4;h=1f67530b5fd6fb28ce0c58bb9ae6ef41b31427e3;hb=2627875b7d18858bc1f9f7652811e4d8c15a23eb;hp=ba20da9dc534c47e6d3193b4568cb57875e26760;hpb=fb2bd066c2f8b34addafe48d62550e3033a59431;p=debian%2Famanda diff --git a/config/amanda/flags.m4 b/config/amanda/flags.m4 index ba20da9..1f67530 100644 --- a/config/amanda/flags.m4 +++ b/config/amanda/flags.m4 @@ -92,16 +92,17 @@ AC_DEFUN([AMANDA_INIT_FLAGS], done ]) + # Disable strict-aliasing optimizations + AMANDA_DISABLE_GCC_FEATURE(strict-aliasing) + # Warn for just about everything - AMANDA_TEST_GCC_WARNING_FLAG(-Wall, [ - AMANDA_ADD_WARNING_CFLAG(-Wall) - ]) + AMANDA_ENABLE_GCC_WARNING(all) # And add any extra warnings too - AMANDA_TEST_GCC_WARNING_FLAG(-Wextra, [ + AMANDA_TEST_GCC_FLAG(-Wextra, [ AMANDA_ADD_WARNING_CFLAG(-Wextra) ], [ - AMANDA_TEST_GCC_WARNING_FLAG(-W, [ + AMANDA_TEST_GCC_FLAG(-W, [ AMANDA_ADD_WARNING_CFLAG(-W) ]) ]) @@ -197,6 +198,25 @@ AC_DEFUN([AMANDA_ADD_LIBS], [LIBS="$1 $LIBS"] ) +# SYNOPSIS +# +# AMANDA_DISABLE_GCC_FEATURE(feature) +# +# OVERVIEW +# +# Disable feature 'feature' by adding flag -Wno-'feature' to +# AMANDA_FEATURE_CFLAGS. +# +AC_DEFUN([AMANDA_DISABLE_GCC_FEATURE], +[ + # test for -W'feature', then add the 'no-' version. + AMANDA_TEST_GCC_FLAG(-f$1, + [ + AMANDA_ADD_CFLAGS(-fno-$1) + AMANDA_ADD_CPPFLAGS(-fno-$1) + ]) +]) + # SYNOPSIS # # AMANDA_ADD_WARNING_CFLAG(flag) @@ -220,7 +240,7 @@ AC_DEFUN([AMANDA_ADD_WARNING_CFLAG], # AC_DEFUN([AMANDA_ENABLE_GCC_WARNING], [ - AMANDA_TEST_GCC_WARNING_FLAG(-W$1, + AMANDA_TEST_GCC_FLAG(-W$1, [ AMANDA_ADD_WARNING_CFLAG(-W$1) ]) @@ -238,7 +258,7 @@ AC_DEFUN([AMANDA_ENABLE_GCC_WARNING], AC_DEFUN([AMANDA_DISABLE_GCC_WARNING], [ # test for -W'warning', then add the 'no-' version. - AMANDA_TEST_GCC_WARNING_FLAG(-W$1, + AMANDA_TEST_GCC_FLAG(-W$1, [ AMANDA_ADD_WARNING_CFLAG(-Wno-$1) ]) @@ -246,7 +266,7 @@ AC_DEFUN([AMANDA_DISABLE_GCC_WARNING], # SYNOPSIS # -# AMANDA_TEST_GCC_WARNING_FLAG(flag, action-if-found, action-if-not-found) +# AMANDA_TEST_GCC_FLAG(flag, action-if-found, action-if-not-found) # # OVERVIEW # @@ -255,14 +275,16 @@ AC_DEFUN([AMANDA_DISABLE_GCC_WARNING], # # Intended for internal use in this file. # -AC_DEFUN([AMANDA_TEST_GCC_WARNING_FLAG], +AC_DEFUN([AMANDA_TEST_GCC_FLAG], [ AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_PROG_EGREP]) AC_MSG_CHECKING(for gcc flag $1) if test "x$GCC" = "xyes"; then changequote(,)dnl - $CC -v --help 2>&1 | $EGREP -- '[^[:alnum:]]$1[^[:alnum:]-]' 2>&1 > /dev/null + (gcc --help={target,optimizers,warnings,undocumented,params,c} 2>&1 || + $CC -v --help 2>&1) | + $EGREP -- '[^[:alnum:]]$1[^[:alnum:]-]' 2>&1 > /dev/null changequote([,])dnl if test $? -eq 0; then found_warning=yes