[fuzzer] Add a gtest-style test
[oota-llvm.git] / lib / Fuzzer / CMakeLists.txt
index 499cf98a6b9ab7ce84064506fca909975fad402e..a68df7f0feb0565317d0d50d6680e78814c10891 100644 (file)
@@ -1,15 +1,17 @@
 # Disable the coverage instrumentation for the fuzzer itself.
 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -fsanitize-coverage=0")
 if( LLVM_USE_SANITIZE_COVERAGE  )
-  add_library(LLVMFuzzer STATIC
-    EXCLUDE_FROM_ALL  # Do not build if you are not building fuzzers.
+  add_library(LLVMFuzzerNoMain OBJECT
     FuzzerCrossOver.cpp
     FuzzerIO.cpp
     FuzzerLoop.cpp
-    FuzzerMain.cpp
     FuzzerMutate.cpp
     FuzzerUtil.cpp
     )
+  add_library(LLVMFuzzer STATIC
+    FuzzerMain.cpp
+    $<TARGET_OBJECTS:LLVMFuzzerNoMain>
+    )
 
   if( LLVM_INCLUDE_TESTS )
     add_subdirectory(test)