Neels Hofmeyr has submitted this change and it was merged.

Change subject: configure: add --enable-werror
......................................................................


configure: add --enable-werror

Provide a sane means of adding the -Werror compiler flag.

Currently, some of our jenkins.sh add -Werror by passing 'CFLAGS="-Werror"',
but that actually *overwrites* all the other CFLAGS we might want to have set.

Maintain these exceptions from -Werror:
a) deprecation (allow upstream to mark deprecation without breaking builds);
b) "#warning" pragmas (allow to remind ourselves of errors without breaking
   builds)

As a last configure step before generating the output files, print the complete
CFLAGS and CPPFLAGS by means of AC_MSG_RESULT.

Change-Id: I0f735913fc3bbda695c4e66449dcfc94f417dafb
---
M configure.ac
1 file changed, 21 insertions(+), 0 deletions(-)

Approvals:
  Neels Hofmeyr: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/configure.ac b/configure.ac
index 3706b6c..8cddd1a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -45,6 +45,24 @@
        LDFLAGS="$LDFLAGS -fsanitize=address -fsanitize=undefined"
 fi
 
+AC_ARG_ENABLE(werror,
+       [AS_HELP_STRING(
+               [--enable-werror],
+               [Turn all compiler warnings into errors, with exceptions:
+                a) deprecation (allow upstream to mark deprecation without 
breaking builds);
+                b) "#warning" pragmas (allow to remind ourselves of errors 
without breaking builds)
+               ]
+       )],
+       [werror=$enableval], [werror="no"])
+if test x"$werror" = x"yes"
+then
+       WERROR_FLAGS="-Werror"
+       WERROR_FLAGS+=" -Wno-error=deprecated 
-Wno-error=deprecated-declarations"
+       WERROR_FLAGS+=" -Wno-error=cpp" # "#warning"
+       CFLAGS="$CFLAGS $WERROR_FLAGS"
+       CPPFLAGS="$CPPFLAGS $WERROR_FLAGS"
+fi
+
 AC_ARG_ENABLE(profile,
                [AS_HELP_STRING([--enable-profile], [Compile with profiling 
support enabled], )],
                [profile=$enableval], [profile="no"])
@@ -116,6 +134,9 @@
 STD_DEFINES_AND_INCLUDES="-Wall"
 AC_SUBST(STD_DEFINES_AND_INCLUDES)
 
+AC_MSG_RESULT([CFLAGS="$CFLAGS"])
+AC_MSG_RESULT([CPPFLAGS="$CPPFLAGS"])
+
 AC_OUTPUT(
     osmo-pcu.pc
     include/Makefile

-- 
To view, visit https://gerrit.osmocom.org/7118
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I0f735913fc3bbda695c4e66449dcfc94f417dafb
Gerrit-PatchSet: 2
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr <nhofm...@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr <nhofm...@sysmocom.de>

Reply via email to