From: Matt Morehouse Date: Wed, 11 Oct 2017 18:29:24 +0000 (+0000) Subject: [clang-fuzzer] Allow linking with any fuzzing engine. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0c759b0a18325704d647011cb80a1a930de44902;p=clang [clang-fuzzer] Allow linking with any fuzzing engine. Summary: Makes clang-[proto-]fuzzer compatible with flags specified by OSS-Fuzz. https://llvm.org/pr34314 Reviewers: vitalybuka, kcc Reviewed By: kcc Subscribers: cfe-commits, mgorny Differential Revision: https://reviews.llvm.org/D38812 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@315486 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/clang-fuzzer/CMakeLists.txt b/tools/clang-fuzzer/CMakeLists.txt index 9152ddc8f0..2dc286ff73 100644 --- a/tools/clang-fuzzer/CMakeLists.txt +++ b/tools/clang-fuzzer/CMakeLists.txt @@ -1,7 +1,9 @@ set(LLVM_LINK_COMPONENTS ${LLVM_TARGETS_TO_BUILD} FuzzMutate) set(CXX_FLAGS_NOFUZZ ${CMAKE_CXX_FLAGS}) set(DUMMY_MAIN DummyClangFuzzer.cpp) -if(LLVM_USE_SANITIZE_COVERAGE) +if(DEFINED LIB_FUZZING_ENGINE) + unset(DUMMY_MAIN) +elseif(LLVM_USE_SANITIZE_COVERAGE) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=fuzzer") set(CXX_FLAGS_NOFUZZ "${CXX_FLAGS_NOFUZZ} -fsanitize=fuzzer-no-link") unset(DUMMY_MAIN) @@ -48,6 +50,7 @@ if(CLANG_ENABLE_PROTO_FUZZER) target_link_libraries(clang-proto-fuzzer ${ProtobufMutator_LIBRARIES} ${PROTOBUF_LIBRARIES} + ${LIB_FUZZING_ENGINE} clangCXXProto clangHandleCXX clangProtoToCXX @@ -63,5 +66,6 @@ add_clang_executable(clang-fuzzer ) target_link_libraries(clang-fuzzer + ${LIB_FUZZING_ENGINE} clangHandleCXX )