diff options
| author | Patrick Steinhardt <ps@pks.im> | 2019-06-28 15:11:27 +0200 |
|---|---|---|
| committer | Patrick Steinhardt <ps@pks.im> | 2019-07-20 19:10:10 +0200 |
| commit | 86ecd6008da3b0b0baa0833fd8932e91994a9f9b (patch) | |
| tree | 5c4de367032113d41d2dbf0e6513686720ce8735 | |
| parent | 1f44079cae42864cb51d98ca57f5d1f4d8296693 (diff) | |
| download | libgit2-86ecd6008da3b0b0baa0833fd8932e91994a9f9b.tar.gz | |
fuzzers: provide test targets
Instead of having to find the fuzzer executables in our Azure test
scripts, provide test targets for each of our fuzzers that will
run them with the correct paths.
| -rwxr-xr-x | ci/test.sh | 4 | ||||
| -rw-r--r-- | fuzzers/CMakeLists.txt | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/ci/test.sh b/ci/test.sh index 9e12f53c3..cbc3925a9 100755 --- a/ci/test.sh +++ b/ci/test.sh @@ -256,9 +256,7 @@ if [ -z "$SKIP_FUZZERS" ]; then echo "## Running fuzzers" echo "##############################################################################" - for fuzzer in fuzzers/*_fuzzer; do - "${fuzzer}" "${SOURCE_DIR}/fuzzers/corpora/$(basename "${fuzzer%_fuzzer}")" || failure - done + ctest -V -R 'fuzzer' fi cleanup diff --git a/fuzzers/CMakeLists.txt b/fuzzers/CMakeLists.txt index 1c03aa980..59eca24d0 100644 --- a/fuzzers/CMakeLists.txt +++ b/fuzzers/CMakeLists.txt @@ -9,6 +9,8 @@ ENDIF () FILE(GLOB SRC_FUZZ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *_fuzzer.c) FOREACH(fuzz_target_src ${SRC_FUZZ}) STRING(REPLACE ".c" "" fuzz_target_name ${fuzz_target_src}) + STRING(REPLACE "_fuzzer" "" fuzz_name ${fuzz_target_name}) + SET(${fuzz_target_name}_SOURCES ${fuzz_target_src} ${LIBGIT2_OBJECTS}) IF(USE_STANDALONE_FUZZERS) LIST(APPEND ${fuzz_target_name}_SOURCES "standalone_driver.c") @@ -16,4 +18,6 @@ FOREACH(fuzz_target_src ${SRC_FUZZ}) ADD_EXECUTABLE(${fuzz_target_name} ${${fuzz_target_name}_SOURCES}) SET_TARGET_PROPERTIES(${fuzz_target_name} PROPERTIES C_STANDARD 90) TARGET_LINK_LIBRARIES(${fuzz_target_name} ${LIBGIT2_LIBS}) + + ADD_TEST(${fuzz_target_name} "${CMAKE_CURRENT_BINARY_DIR}/${fuzz_target_name}" "${CMAKE_CURRENT_SOURCE_DIR}/corpora/${fuzz_name}") ENDFOREACH() |
