summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cmake/Modules/DefineCompilerFlags.cmake12
1 files changed, 12 insertions, 0 deletions
diff --git a/cmake/Modules/DefineCompilerFlags.cmake b/cmake/Modules/DefineCompilerFlags.cmake
index 3277b99..c92182d 100644
--- a/cmake/Modules/DefineCompilerFlags.cmake
+++ b/cmake/Modules/DefineCompilerFlags.cmake
@@ -34,4 +34,16 @@ if (UNIX AND NOT WIN32)
CACHE STRING "Flags used by the linker during the creation of shared libraries during UNDEFINEDSANITIZER builds.")
set(CMAKE_EXEC_LINKER_FLAGS_UNDEFINEDSANITIZER "-fsanitize=undefined"
CACHE STRING "Flags used by the linker during UNDEFINEDSANITIZER builds.")
+
+ # Activate with: -DCMAKE_BUILD_TYPE=ThreadSanitizer
+ set(CMAKE_C_FLAGS_THREADSANITIZER "-g -O1 -fsanitize=thread"
+ CACHE STRING "Flags used by the C compiler during THREADSANITIZER builds.")
+ set(CMAKE_CXX_FLAGS_THREADSANITIZER "-g -O1 -fsanitize=thread"
+ CACHE STRING "Flags used by the CXX compiler during THREADSANITIZER builds.")
+ set(CMAKE_SHARED_LINKER_FLAGS_THREADSANITIZER "-fsanitize=thread"
+ CACHE STRING "Flags used by the linker during the creation of shared libraries during THREADSANITIZER builds.")
+ set(CMAKE_MODULE_LINKER_FLAGS_THREADSANITIZER "-fsanitize=thread"
+ CACHE STRING "Flags used by the linker during the creation of shared libraries during THREADSANITIZER builds.")
+ set(CMAKE_EXEC_LINKER_FLAGS_THREADSANITIZER "-fsanitize=thread"
+ CACHE STRING "Flags used by the linker during THREADSANITIZER builds.")
endif()