diff options
Diffstat (limited to 'fuzzing/CMakeLists.txt')
| -rw-r--r-- | fuzzing/CMakeLists.txt | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/fuzzing/CMakeLists.txt b/fuzzing/CMakeLists.txt new file mode 100644 index 0000000..daba61d --- /dev/null +++ b/fuzzing/CMakeLists.txt @@ -0,0 +1,20 @@ +# License: Boost 1.0 +# By Paul Dreik 2020 + +# add a library that brings in the main() function from libfuzzer +# and has all the dependencies, so the individual fuzzers can be +# added one line each. +add_library(fuzzhelper NullOStream.h NullOStream.cpp) +target_link_libraries(fuzzhelper PUBLIC Catch2::Catch2) + +# use C++17 so we can get string_view +target_compile_features(fuzzhelper PUBLIC cxx_std_17) + +# This should be possible to set from the outside to be oss-fuzz compatible, +# fix later. For now, target libFuzzer only. +target_link_options(fuzzhelper PUBLIC "-fsanitize=fuzzer") + +foreach(fuzzer TestSpecParser XmlWriter textflow) +add_executable(fuzz_${fuzzer} fuzz_${fuzzer}.cpp) +target_link_libraries(fuzz_${fuzzer} PRIVATE fuzzhelper) +endforeach() |
