diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-05-18 18:59:25 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-07-03 16:08:53 +0200 |
commit | 388abc8da65c364bab5d669cc9e369942e34db69 (patch) | |
tree | 20d3a018fcbdb19845212fa29795a7e16e697ddb /m4 | |
parent | 341b5aeee27866b6728084919b6513cf4885cdf0 (diff) |
build: by default compile with most warnings enabled and -Werror
Diffstat (limited to 'm4')
-rw-r--r-- | m4/compiler-warnings.m4 | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/m4/compiler-warnings.m4 b/m4/compiler-warnings.m4 new file mode 100644 index 0000000..5cc3a38 --- /dev/null +++ b/m4/compiler-warnings.m4 @@ -0,0 +1,31 @@ +AC_DEFUN([LIBQMI_GLIB_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) +if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then + AC_MSG_RESULT(yes) + CFLAGS="-Wall -Werror -std=gnu89 $CFLAGS" + + for option in -Wmissing-declarations -Wmissing-prototypes \ + -Wdeclaration-after-statement -Wstrict-prototypes \ + -fno-strict-aliasing -Wno-deprecated-declarations \ + -Wint-to-pointer-cast; do + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $option" + AC_MSG_CHECKING([whether gcc understands $option]) + AC_TRY_COMPILE([], [], + has_option=yes, + has_option=no,) + if test $has_option = no; then + CFLAGS="$SAVE_CFLAGS" + fi + AC_MSG_RESULT($has_option) + unset has_option + unset SAVE_CFLAGS + done + unset option +else + AC_MSG_RESULT(no) +fi +]) |