Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
set some flag for cmake coverage
[simgrid.git] / tools / cmake / GCCFlags.cmake
index 8f9f21b..8888ffd 100644 (file)
@@ -18,11 +18,8 @@ if(enable_compile_warnings)
   if(CMAKE_COMPILER_IS_GNUCC AND (NOT (CMAKE_C_COMPILER_VERSION VERSION_LESS "5.0")))
     set(warnCFLAGS "${warnCFLAGS} -Wformat-signedness")
   endif()
-  if(CMAKE_C_COMPILER_ID MATCHES "Clang|GCC")
-    set(warnCFLAGS "${warnCFLAGS} -Wno-format-nonliteral")
-  endif()
   if(CMAKE_COMPILER_IS_GNUCC)
-    set(warnCFLAGS "${warnCFLAGS} -Wclobbered -Wno-error=clobbered  -Wno-unused-local-typedefs -Wno-error=attributes")
+    set(warnCFLAGS "${warnCFLAGS} -Wclobbered -Wno-error=clobbered  -Wno-unused-local-typedefs -Wno-error=attributes -Wno-error=maybe-uninitialized")
   endif()
   if (CMAKE_CXX_COMPILER_ID MATCHES "Intel")
     # ignore remark  #1418: external function definition with no prior declaration
@@ -36,11 +33,8 @@ if(enable_compile_warnings)
   if(CMAKE_COMPILER_IS_GNUCXX AND (NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0")))
     set(warnCFLAGS "${warnCFLAGS} -Wformat-signedness")
   endif()
-  if(CMAKE_CXX_COMPILER_ID MATCHES "Clang|GCC")
-    set(warnCXXFLAGS "${warnCXXFLAGS} -Wno-format-nonliteral")
-  endif()
   if(CMAKE_COMPILER_IS_GNUCXX)
-    set(warnCXXFLAGS "${warnCXXFLAGS} -Wclobbered -Wno-error=clobbered  -Wno-unused-local-typedefs -Wno-error=attributes")
+    set(warnCXXFLAGS "${warnCXXFLAGS} -Wclobbered -Wno-error=clobbered  -Wno-unused-local-typedefs -Wno-error=attributes -Wno-error=maybe-uninitialized")
   endif()
   if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
     # don't care about class that become struct, avoid issue of empty C structs
@@ -202,7 +196,7 @@ if(enable_coverage)
   find_program(GCOV_PATH gcov)
   if(GCOV_PATH)
     set(COVERAGE_COMMAND "${GCOV_PATH}" CACHE TYPE FILEPATH FORCE)
-    set(COVERAGE_EXTRA_FLAGS "-l -p")
+    set(COVERAGE_EXTRA_FLAGS "-l -p" CACHE INTERNAL "")
     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DCOVERAGE")
     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage")
     set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage")
@@ -217,18 +211,21 @@ if(enable_address_sanitizer)
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
     set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -fsanitize=address")
     set(TESH_OPTION --enable-sanitizers)
-    try_compile(HAVE_SANITIZE_ADDRESS ${CMAKE_BINARY_DIR} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_asan.cpp)
-    try_compile(HAVE_SANITIZE_ADDRESS_FIBER_SUPPORT ${CMAKE_BINARY_DIR} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_asan.cpp
+    try_compile(HAVE_SANITIZER_ADDRESS ${CMAKE_BINARY_DIR} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_asan.cpp)
+    try_compile(HAVE_SANITIZER_ADDRESS_FIBER_SUPPORT ${CMAKE_BINARY_DIR} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_asan.cpp
       COMPILE_DEFINITIONS -DCHECK_FIBER_SUPPORT)
 else()
-    set(HAVE_SANITIZE_ADDRESS FALSE CACHE INTERNAL "")
-    set(HAVE_SANITIZE_ADDRESS_FIBER_SUPPORT FALSE CACHE INTERNAL "")
+    set(HAVE_SANITIZER_ADDRESS FALSE CACHE INTERNAL "")
+    set(HAVE_SANITIZER_ADDRESS_FIBER_SUPPORT FALSE CACHE INTERNAL "")
 endif()
 
 if(enable_thread_sanitizer)
     set(CMAKE_C_FLAGS   "${CMAKE_C_FLAGS} -fsanitize=thread -fno-omit-frame-pointer -no-pie")
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=thread -fno-omit-frame-pointer -no-pie")
     set(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -fsanitize=thread -no-pie")
+    set(HAVE_SANITIZER_THREAD TRUE CACHE INTERNAL "")
+else()
+    set(HAVE_SANITIZER_THREAD FALSE CACHE INTERNAL "")
 endif()
 
 if(enable_undefined_sanitizer)