diff options
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 60b1726c..36ba269f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -239,11 +239,17 @@ endif() # Platform checks. if (CMAKE_C_COMPILER_ID STREQUAL "GNU") - set(NNG_WARN_FLAGS "-Wall -Wextra") + set(NNG_WARN_FLAGS "-Wall -Wextra -fno-omit-frame-pointer") elseif (CMAKE_C_COMPILER_ID STREQUAL "Clang") - set(NNG_WARN_FLAGS "-Wall -Wextra") + set(NNG_WARN_FLAGS "-Wall -Wextra -fno-omit-frame-pointer") elseif (CMAKE_C_COMPILER_ID STREQUAL "AppleClang") - set(NNG_WARN_FLAGS "-Wall -Wextra") + set(NNG_WARN_FLAGS "-Wall -Wextra -fno-omit-frame-pointer") +endif() + +include (CheckSanitizer) +CheckSanitizer() +if (NOT NNG_SANITIZER STREQUAL "none") + set (NNG_SANITIZER_FLAGS "-fsanitize=${NNG_SANITIZER}") endif() if (NNG_ENABLE_COVERAGE) @@ -261,8 +267,8 @@ if (NNG_ENABLE_COVERAGE) endif() endif() -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${NNG_WARN_FLAGS} ${NNG_COVERAGE_FLAGS}") -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${NNG_WARN_FLAGS} ${NNG_COVERAGE_FLAGS}") +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${NNG_WARN_FLAGS} ${NNG_COVERAGE_FLAGS} ${NNG_SANITIZER_FLAGS}") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${NNG_WARN_FLAGS} ${NNG_COVERAGE_FLAGS} ${NNG_SANITIZER_FLAGS}") TEST_BIG_ENDIAN(NNG_BIG_ENDIAN) if (NNG_BIG_ENDIAN) @@ -280,6 +286,8 @@ if (NOT WIN32 AND NOT CYGWIN) endif() endif() + + find_package (Threads REQUIRED) if (CMAKE_SYSTEM_NAME MATCHES "Linux") |
