summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@edwardthomson.com>2021-11-06 16:38:57 -0400
committerEdward Thomson <ethomson@edwardthomson.com>2021-11-10 21:04:58 -0500
commit4bcabda6c5ed628ce03616aa31b84560f731fc1f (patch)
treead43d4b9e81a08bf5ea1cb71c83e4c3fe54d07c8
parentfbe3ca5a8a137d4dd1127220b1c14614794fc2f0 (diff)
downloadlibgit2-4bcabda6c5ed628ce03616aa31b84560f731fc1f.tar.gz
cmake: move fuzzer args to the fuzzer's cmake
-rw-r--r--CMakeLists.txt17
-rw-r--r--fuzzers/CMakeLists.txt3
2 files changed, 5 insertions, 15 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 46506590e..5421bd731 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -113,14 +113,6 @@ else()
# that uses CMAKE_CONFIGURATION_TYPES and not CMAKE_BUILD_TYPE
endif()
-IF(BUILD_FUZZERS AND NOT USE_STANDALONE_FUZZERS)
- # The actual sanitizer link target will be added when linking the fuzz
- # targets.
- set(CMAKE_REQUIRED_FLAGS "-fsanitize=fuzzer-no-link")
- add_c_flag(-fsanitize=fuzzer-no-link)
- unset(CMAKE_REQUIRED_FLAGS)
-endif()
-
#
# Subdirectories
#
@@ -137,13 +129,8 @@ if(BUILD_EXAMPLES)
endif()
if(BUILD_FUZZERS)
- if(NOT USE_STANDALONE_FUZZERS)
- if(BUILD_EXAMPLES)
- message(FATAL_ERROR "Cannot build the fuzzer targets and the examples together")
- endif()
- if(BUILD_TESTS)
- message(FATAL_ERROR "Cannot build the fuzzer targets and the tests together")
- endif()
+ if((BUILD_TESTS OR BUILD_EXAMPLES) AND NOT USE_STANDALONE_FUZZERS)
+ message(FATAL_ERROR "Cannot build the fuzzer and the tests or examples together")
endif()
add_subdirectory(fuzzers)
endif()
diff --git a/fuzzers/CMakeLists.txt b/fuzzers/CMakeLists.txt
index 8cc61b751..1479a2af8 100644
--- a/fuzzers/CMakeLists.txt
+++ b/fuzzers/CMakeLists.txt
@@ -3,7 +3,10 @@ include_directories(${LIBGIT2_INCLUDES})
include_directories(SYSTEM ${LIBGIT2_SYSTEM_INCLUDES})
if(BUILD_FUZZERS AND NOT USE_STANDALONE_FUZZERS)
+ set(CMAKE_REQUIRED_FLAGS "-fsanitize=fuzzer-no-link")
add_c_flag(-fsanitize=fuzzer)
+ add_c_flag(-fsanitize=fuzzer-no-link)
+ unset(CMAKE_REQUIRED_FLAGS)
endif()
file(GLOB SRC_FUZZ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *_fuzzer.c)