From 58f3f9a5f5705ba3370312a13e863cc54df79264 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Fri, 2 Mar 2012 13:53:32 -0600 Subject: build: more flexible build-time warnings and errors options --- m4/compiler_warnings.m4 | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'm4') diff --git a/m4/compiler_warnings.m4 b/m4/compiler_warnings.m4 index 6cea2f74..95ad3fbe 100644 --- a/m4/compiler_warnings.m4 +++ b/m4/compiler_warnings.m4 @@ -1,16 +1,16 @@ AC_DEFUN([NM_COMPILER_WARNINGS], [AC_ARG_ENABLE(more-warnings, - AS_HELP_STRING([--enable-more-warnings], [Maximum compiler warnings]), - set_more_warnings="$enableval",set_more_warnings=yes) -AC_MSG_CHECKING(for more warnings, including -Werror) + AS_HELP_STRING([--enable-more-warnings], [Possible values: no/yes/error]), + set_more_warnings="$enableval",set_more_warnings=error) +AC_MSG_CHECKING(for more warnings) if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then AC_MSG_RESULT(yes) - CFLAGS="-Wall -Werror -std=gnu89 $CFLAGS" + CFLAGS="-Wall -std=gnu89 $CFLAGS" for option in -Wshadow -Wmissing-declarations -Wmissing-prototypes \ -Wdeclaration-after-statement -Wstrict-prototypes \ -Wfloat-equal -Wno-unused-parameter -Wno-sign-compare \ - -fno-strict-aliasing; do + -fno-strict-aliasing -Wno-unused-but-set-variable; do SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $option" AC_MSG_CHECKING([whether gcc understands $option]) @@ -25,6 +25,9 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then unset SAVE_CFLAGS done unset option + if test "x$set_more_warnings" = xerror; then + CFLAGS="$CFLAGS -Werror" + fi else AC_MSG_RESULT(no) fi -- cgit v1.2.1