[network-manager-applet/th/clang-build-fixes: 1/8] build: refactor compiler_warnings.m4 macro



commit 0d107804a447b8ce959fe90ea72667e234531b15
Author: Thomas Haller <thaller redhat com>
Date:   Wed Oct 29 11:52:47 2014 +0100

    build: refactor compiler_warnings.m4 macro
    
    NM_COMPILER_WARNINGS still works the same, but
    rename variables to have a CFLAGS_* prefix.
    
    Also cleanup the construction of CFLAGS by appending
    to CFLAGS_MORE_WARNINGS variable instead of appending
    to CFLAGS, and resetting to SAVE_CFLAGS.
    
    Taken from NetworkManager, commit dd243ceefe998be36b5f0bea014d007ba30ec3fb.

 m4/compiler_warnings.m4 |   28 ++++++++++++----------------
 1 files changed, 12 insertions(+), 16 deletions(-)
---
diff --git a/m4/compiler_warnings.m4 b/m4/compiler_warnings.m4
index 578dc59..3fe8293 100644
--- a/m4/compiler_warnings.m4
+++ b/m4/compiler_warnings.m4
@@ -5,24 +5,22 @@ AC_DEFUN([NM_COMPILER_WARNINGS],
 AC_MSG_CHECKING(for more warnings)
 if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
        AC_MSG_RESULT(yes)
-       CFLAGS="-Wall -std=gnu89 $CFLAGS"
+       CFLAGS_SAVED="$CFLAGS"
+       CFLAGS_MORE_WARNINGS="-Wall -std=gnu89"
 
        dnl clang only warns about unknown warnings, unless
        dnl called with "-Werror=unknown-warning-option"
        dnl Test if the compiler supports that, and if it does
        dnl attach it to the CFLAGS.
-       SAVE_CFLAGS="$CFLAGS"
-       EXTRA_CFLAGS="-Werror=unknown-warning-option"
-       CFLAGS="$SAVE_CFLAGS $EXTRA_CFLAGS"
+       CFLAGS_EXTRA="-Werror=unknown-warning-option"
+       CFLAGS="$CFLAGS_MORE_WARNINGS $CFLAGS_EXTRA $CFLAGS_SAVED"
        AC_TRY_COMPILE([], [],
                has_option=yes,
                has_option=no,)
        if test $has_option = no; then
-               EXTRA_CFLAGS=
+               CFLAGS_EXTRA=
        fi
-       CFLAGS="$SAVE_CFLAGS"
        unset has_option
-       unset SAVE_CFLAGS
 
        for option in -Wshadow -Wmissing-declarations -Wmissing-prototypes \
                      -Wdeclaration-after-statement -Wformat-security \
@@ -32,26 +30,24 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
                      -Wundef -Wimplicit-function-declaration \
                      -Wpointer-arith -Winit-self \
                      -Wmissing-include-dirs -Waggregate-return; do
-               SAVE_CFLAGS="$CFLAGS"
-               CFLAGS="$CFLAGS $EXTRA_CFLAGS $option"
+               CFLAGS="$CFLAGS_MORE_WARNINGS $CFLAGS_EXTRA $option $CFLAGS_SAVED"
                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"
-               else
-                       CFLAGS="$SAVE_CFLAGS $option"
+               if test $has_option != no; then
+                       CFLAGS_MORE_WARNINGS="$CFLAGS_MORE_WARNINGS $option"
                fi
                AC_MSG_RESULT($has_option)
                unset has_option
-               unset SAVE_CFLAGS
        done
        unset option
-       unset EXTRA_CFLAGS
+       unset CFLAGS_EXTRA
        if test "x$set_more_warnings" = xerror; then
-               CFLAGS="$CFLAGS -Werror"
+               CFLAGS_MORE_WARNINGS="$CFLAGS_MORE_WARNINGS -Werror"
        fi
+       CFLAGS="$CFLAGS_MORE_WARNINGS $CFLAGS_SAVED"
+       unset CFLAGS_SAVED
 else
        AC_MSG_RESULT(no)
 fi


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]