diff --git a/tests/fuzz/CMakeLists.txt b/tests/fuzz/CMakeLists.txt index 72674e567..2819ce8f2 100644 --- a/tests/fuzz/CMakeLists.txt +++ b/tests/fuzz/CMakeLists.txt @@ -25,6 +25,10 @@ if(NOT DEFINED ENV{LIB_FUZZING_ENGINE}) set(ENV{LIB_FUZZING_ENGINE} "-fsanitize=address,fuzzer") endif() +if ("$ENV{LIB_FUZZING_ENGINE}" MATCHES "-fsanitize=.*fuzzer") + set(ENV{LIB_FUZZING_ENGINE} "$ENV{LIB_FUZZING_ENGINE};-fsanitize=fuzzer-no-link") +endif() + remove_definitions(-DHAVE_CONFIG_H) include_directories( ${PROJECT_BINARY_DIR} @@ -98,6 +102,6 @@ set(FUZZ_CORE_TARGETS calc eval crypto secure string utf8 util) foreach(fuzz_target ${FUZZ_CORE_TARGETS}) add_executable(weechat_core_${fuzz_target}_fuzzer core/${fuzz_target}-fuzzer.cc) target_link_libraries(weechat_core_${fuzz_target}_fuzzer ${FUZZ_TARGET_LINK} coverage_config) - set_target_properties(weechat_core_${fuzz_target}_fuzzer PROPERTIES LINK_FLAGS "$ENV{LIB_FUZZING_ENGINE}") + set_target_properties(weechat_core_${fuzz_target}_fuzzer PROPERTIES LINK_OPTIONS "$ENV{LIB_FUZZING_ENGINE}") add_dependencies(weechat_core_${fuzz_target}_fuzzer ${FUZZ_TARGET_DEPS}) endforeach()