aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFlorian Walch <florian@fwalch.com>2015-06-09 11:43:22 +0300
committerFlorian Walch <florian@fwalch.com>2015-07-05 10:31:16 +0300
commitfe6bd8cae28c560097d47a2ab6882cfa94d8a607 (patch)
treef0164ab3dfb5443bb6eef85dcd6add0d54edd6be /src
parentbd9042b1a99f0a7c710d825c9be91280437348ed (diff)
downloadrneovim-fe6bd8cae28c560097d47a2ab6882cfa94d8a607.tar.gz
rneovim-fe6bd8cae28c560097d47a2ab6882cfa94d8a607.tar.bz2
rneovim-fe6bd8cae28c560097d47a2ab6882cfa94d8a607.zip
CMake: Add option for Clang TSan, rename option ASAN -> ASAN_UBSAN.
Diffstat (limited to 'src')
-rw-r--r--src/nvim/CMakeLists.txt10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt
index 19121ad8e7..41c7f34fc3 100644
--- a/src/nvim/CMakeLists.txt
+++ b/src/nvim/CMakeLists.txt
@@ -95,7 +95,7 @@ foreach(gen_cdef ${gen_cdefs} DO_NOT_DEFINE_EMPTY_ATTRIBUTES)
list(APPEND gen_cflags "-D${gen_cdef}")
endif()
endforeach()
-if(CLANG_ASAN)
+if(CLANG_ASAN_UBSAN)
list(APPEND gen_cflags "-DEXITFREE")
endif()
@@ -190,8 +190,8 @@ add_executable(nvim ${NEOVIM_GENERATED_SOURCES} ${NEOVIM_SOURCES}
target_link_libraries(nvim ${NVIM_EXEC_LINK_LIBRARIES})
install_helper(TARGETS nvim)
-if(CLANG_ASAN)
- message(STATUS "Enabling Clang address sanitizer for nvim.")
+if(CLANG_ASAN_UBSAN)
+ message(STATUS "Enabling Clang address sanitizer and undefined behavior sanitizer for nvim.")
set_property(TARGET nvim APPEND_STRING PROPERTY COMPILE_FLAGS "-DEXITFREE ")
set_property(TARGET nvim APPEND_STRING PROPERTY COMPILE_FLAGS "-fno-sanitize-recover -fno-omit-frame-pointer -fno-optimize-sibling-calls -fsanitize=address -fsanitize=undefined ")
set_property(TARGET nvim APPEND_STRING PROPERTY LINK_FLAGS "-fsanitize=address -fsanitize=undefined ")
@@ -199,6 +199,10 @@ elseif(CLANG_MSAN)
message(STATUS "Enabling Clang memory sanitizer for nvim.")
set_property(TARGET nvim APPEND_STRING PROPERTY COMPILE_FLAGS "-fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer -fno-optimize-sibling-calls ")
set_property(TARGET nvim APPEND_STRING PROPERTY LINK_FLAGS "-fsanitize=memory -fsanitize-memory-track-origins ")
+elseif(CLANG_TSAN)
+ message(STATUS "Enabling Clang thread sanitizer for nvim.")
+ set_property(TARGET nvim APPEND_STRING PROPERTY COMPILE_FLAGS "-fsanitize=thread ")
+ set_property(TARGET nvim APPEND_STRING PROPERTY LINK_FLAGS "-fsanitize=thread ")
endif()
add_library(libnvim STATIC EXCLUDE_FROM_ALL ${NEOVIM_GENERATED_SOURCES}