]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
Simplify creating cmake fuzzer test executables.
authorNathan Moinvaziri <nathan@solidstatenetworks.com>
Wed, 29 May 2019 19:03:20 +0000 (12:03 -0700)
committerHans Kristian Rosbach <hk-github@circlestorm.org>
Tue, 4 Jun 2019 08:53:00 +0000 (10:53 +0200)
CMakeLists.txt

index 25bd31b72bc881c0d420a99063a7d9fecc5f4e17..bbed27764586d060221ca7aad4575ac2717b82c4 100644 (file)
@@ -828,30 +828,13 @@ if (ZLIB_ENABLE_TESTS)
     endif()
 
     if(WITH_FUZZERS)
-        add_executable(checksum_fuzzer test/fuzz/checksum_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
-        add_executable(compress_fuzzer test/fuzz/compress_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
-        add_executable(example_small_fuzzer test/fuzz/example_small_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
-        add_executable(example_large_fuzzer test/fuzz/example_large_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
-        add_executable(example_flush_fuzzer test/fuzz/example_flush_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
-        add_executable(example_dict_fuzzer test/fuzz/example_dict_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
-        add_executable(minigzip_fuzzer test/fuzz/minigzip_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
-
-        target_link_libraries(checksum_fuzzer zlib)
-        target_link_libraries(compress_fuzzer zlib)
-        target_link_libraries(example_small_fuzzer zlib)
-        target_link_libraries(example_large_fuzzer zlib)
-        target_link_libraries(example_flush_fuzzer zlib)
-        target_link_libraries(example_dict_fuzzer zlib)
-        target_link_libraries(minigzip_fuzzer zlib)
-
+        set(FUZZERS checksum compress example_small example_large example_flush example_dict minigzip)
         file(GLOB ALL_SRC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*")
-        add_test(checksum_fuzzer checksum_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
-        add_test(compress_fuzzer compress_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
-        add_test(example_small_fuzzer example_small_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
-        add_test(example_large_fuzzer example_large_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
-        add_test(example_flush_fuzzer example_flush_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
-        add_test(example_dict_fuzzer example_dict_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
-        add_test(minigzip_fuzzer minigzip_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
+        foreach(FUZZER ${FUZZERS})
+            add_executable(${FUZZER}_fuzzer test/fuzz/${FUZZER}_fuzzer.c test/fuzz/standalone_fuzz_target_runner.c)
+            target_link_libraries(${FUZZER}_fuzzer zlib)
+            add_test(${FUZZER}_fuzzer ${FUZZER}_fuzzer${CMAKE_EXECUTABLE_SUFFIX} ${ALL_SRC_FILES})
+        endforeach()
     endif()
 endif()