diff --git a/CMakeModules/CorsikaUtilities.cmake b/CMakeModules/CorsikaUtilities.cmake index 9b00787289f634872b707c208cc899136418d597..1ceabe90b3554bfc453bd97ad712154a4a373979 100644 --- a/CMakeModules/CorsikaUtilities.cmake +++ b/CMakeModules/CorsikaUtilities.cmake @@ -102,4 +102,11 @@ function (CORSIKA_ADD_TEST name) target_include_directories (${name} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) file (MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/test_outputs/) add_test (NAME ${name} COMMAND ${name} -o ${PROJECT_BINARY_DIR}/test_outputs/junit-${name}.xml -r junit) + if(CMAKE_CXX_COMPILER_ID STREQUAL AppleClang) + target_compile_options(${name} PRIVATE -fno-omit-frame-pointer -fsanitize=address,undefined -fno-sanitize-recover=all) + set_target_properties(${name} PROPERTIES LINK_FLAGS "-fsanitize=address,undefined") + else() + target_compile_options(${name} PRIVATE -fno-omit-frame-pointer -fsanitize=address,leak,undefined -fno-sanitize-recover=all) + set_target_properties(${name} PROPERTIES LINK_FLAGS "-fsanitize=address,leak,undefined") + endif() endfunction (CORSIKA_ADD_TEST)