]> granicus.if.org Git - clang/commitdiff
[clang-fuzzer] Allow linking with any fuzzing engine.
authorMatt Morehouse <mascasa@google.com>
Wed, 11 Oct 2017 18:29:24 +0000 (18:29 +0000)
committerMatt Morehouse <mascasa@google.com>
Wed, 11 Oct 2017 18:29:24 +0000 (18:29 +0000)
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

tools/clang-fuzzer/CMakeLists.txt

index 9152ddc8f0808c424a9c399482e186fd2bf5bc2f..2dc286ff73bbb01e6293c55e80b70ed5e4974770 100644 (file)
@@ -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
   )