CMakeLists.txt 778 B

12345678910111213141516171819202122232425262728
  1. set(LIBFUZZER_FLAGS_BASE "${CMAKE_CXX_FLAGS_RELEASE}")
  2. # Disable the coverage and sanitizer instrumentation for the fuzzer itself.
  3. set(CMAKE_CXX_FLAGS_RELEASE "${LIBFUZZER_FLAGS_BASE} -O2 -fno-sanitize=all")
  4. if( LLVM_USE_SANITIZE_COVERAGE )
  5. add_library(LLVMFuzzerNoMainObjects OBJECT
  6. FuzzerCrossOver.cpp
  7. FuzzerInterface.cpp
  8. FuzzerTraceState.cpp
  9. FuzzerDriver.cpp
  10. FuzzerIO.cpp
  11. FuzzerLoop.cpp
  12. FuzzerMutate.cpp
  13. FuzzerSanitizerOptions.cpp
  14. FuzzerSHA1.cpp
  15. FuzzerUtil.cpp
  16. )
  17. add_library(LLVMFuzzerNoMain STATIC
  18. $<TARGET_OBJECTS:LLVMFuzzerNoMainObjects>
  19. )
  20. add_library(LLVMFuzzer STATIC
  21. FuzzerMain.cpp
  22. $<TARGET_OBJECTS:LLVMFuzzerNoMainObjects>
  23. )
  24. if( LLVM_INCLUDE_TESTS )
  25. add_subdirectory(test)
  26. endif()
  27. endif()