aboutsummaryrefslogtreecommitdiffstats
path: root/functions.cmake
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@yahooinc.com>2022-04-07 12:57:01 +0000
committerTor Brede Vekterli <vekterli@yahooinc.com>2022-04-07 12:57:01 +0000
commitd3cd9527ea4170b8d7e033b0cc3bd5db89890a38 (patch)
treefd964f597c7eeec92caf96109318746789ef0219 /functions.cmake
parent60489e5ce0874775eeb3d40a89ff5c23b41b6e0b (diff)
Set sanitizer args automatically when running tests under CTest
Currently only applies to ThreadSanitizer.
Diffstat (limited to 'functions.cmake')
-rw-r--r--functions.cmake6
1 files changed, 6 insertions, 0 deletions
diff --git a/functions.cmake b/functions.cmake
index 65c02885ddb..b8ac3497ff2 100644
--- a/functions.cmake
+++ b/functions.cmake
@@ -428,6 +428,9 @@ function(vespa_add_test)
if(NOT VALGRIND_EXECUTABLE)
message(FATAL_ERROR "Requested valgrind tests, but could not find valgrind executable.")
endif()
+ if(VESPA_USE_SANITIZER)
+ message(FATAL_ERROR "Cannot run sanitizer-instrumented unit tests under Valgrind")
+ endif()
if(IS_SCRIPT)
# For shell scripts, export a VALGRIND environment variable
@@ -445,6 +448,9 @@ function(vespa_add_test)
set(ARG_COMMAND "${VALGRIND_COMMAND} ${COMMAND_FIRST} ${COMMAND_REST}")
endif()
endif()
+ if(VESPA_USE_SANITIZER AND VESPA_SANITIZER_ENV)
+ list(APPEND ARG_ENVIRONMENT "${VESPA_SANITIZER_ENV}")
+ endif()
separate_arguments(ARG_COMMAND)
add_test(NAME ${ARG_NAME} COMMAND ${ARG_COMMAND} WORKING_DIRECTORY ${ARG_WORKING_DIRECTORY})