aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorAlexis La Goutte <alexis.lagoutte@gmail.com>2014-03-15 12:52:29 +0100
committerAlexis La Goutte <alexis.lagoutte@gmail.com>2014-03-31 08:29:58 +0000
commit280c2958f2a03bdc16b99851230c935cdd65e91b (patch)
tree73c31b48427c57f0ee8839101f1d8680ba2c80fe /CMakeLists.txt
parent0973a321a9836331cd7863a5c1aad77e2bf8126b (diff)
Add --enable-extra-clang-checks for autotools and CMakeList
With -Wunreachable-code flags (and disable for the moment -Wdocumentation) Change-Id: I126c962b32e650a63b78092e95896736ae7335c9 Reviewed-on: https://code.wireshark.org/review/678 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt28
1 files changed, 22 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a2e17697e2..8dd8b084a7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -228,7 +228,7 @@ else()
set(WIRESHARK_CPP_ONLY_FLAGS
)
- set(WIRESHARK_EXTRA_C_FLAGS
+ set(WIRESHARK_EXTRA_GCC_C_FLAGS
-pedantic
-Woverflow
-fstrict-overflow -Wstrict-overflow=4
@@ -245,16 +245,26 @@ else()
-Wmissing-declarations
)
- set(WIRESHARK_EXTRA_C_ONLY_FLAGS
+ set(WIRESHARK_EXTRA_GCC_C_ONLY_FLAGS
# The following are C only, not C++
-Wbad-function-cast
# All the registration functions block these for now.
-Wmissing-prototypes
)
- set(WIRESHARK_EXTRA_CPP_ONLY_FLAGS
+ set(WIRESHARK_EXTRA_GCC_CPP_ONLY_FLAGS
)
+ set(WIRESHARK_EXTRA_CLANG_C_FLAGS
+ -Wunreachable-code
+ #-Wdocumentation
+ )
+
+ set(WIRESHARK_EXTRA_CLANG_C_ONLY_FLAGS
+ )
+
+ set(WIRESHARK_EXTRA_CLANG_CPP_ONLY_FLAGS
+ )
# With clang some tests don't fail properly during testing but only
# during real compiles
@@ -273,9 +283,15 @@ else()
endif()
if(ENABLE_EXTRA_GCC_CHECKS) # This overrides -Werror
- set(WIRESHARK_C_FLAGS ${WIRESHARK_C_FLAGS} ${WIRESHARK_EXTRA_C_FLAGS})
- set(WIRESHARK_C_ONLY_FLAGS ${WIRESHARK_C_ONLY_FLAGS} ${WIRESHARK_EXTRA_C_ONLY_FLAGS})
- set(WIRESHARK_CPP_ONLY_FLAGS ${WIRESHARK_CPP_ONLY_FLAGS} ${WIRESHARK_EXTRA_CPP_ONLY_FLAGS})
+ set(WIRESHARK_C_FLAGS ${WIRESHARK_C_FLAGS} ${WIRESHARK_EXTRA_GCC_C_FLAGS})
+ set(WIRESHARK_C_ONLY_FLAGS ${WIRESHARK_C_ONLY_FLAGS} ${WIRESHARK_EXTRA_GCC_C_ONLY_FLAGS})
+ set(WIRESHARK_CPP_ONLY_FLAGS ${WIRESHARK_CPP_ONLY_FLAGS} ${WIRESHARK_EXTRA_GCC_CPP_ONLY_FLAGS})
+ endif()
+
+ if(ENABLE_EXTRA_CLANG_CHECKS) # This overrides -Werror
+ set(WIRESHARK_C_FLAGS ${WIRESHARK_C_FLAGS} ${WIRESHARK_EXTRA_CLANG_C_FLAGS})
+ set(WIRESHARK_C_ONLY_FLAGS ${WIRESHARK_C_ONLY_FLAGS} ${WIRESHARK_EXTRA_CLANG_C_ONLY_FLAGS})
+ set(WIRESHARK_CPP_ONLY_FLAGS ${WIRESHARK_CPP_ONLY_FLAGS} ${WIRESHARK_EXTRA_CLANG_CPP_ONLY_FLAGS})
endif()
add_definitions(