1 # Build all these tests with -O0, otherwise optimizations may merge some
2 # basic blocks and we'll fail to discover the targets.
3 # Also enable the coverage instrumentation back (it is disabled
5 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O0 -fsanitize-coverage=4")
9 FourIndependentBranchesTest
19 foreach(Test ${Tests})
20 add_executable(LLVMFuzzer-${Test}
24 target_link_libraries(LLVMFuzzer-${Test}
27 set(TestBinaries ${TestBinaries} LLVMFuzzer-${Test})
30 configure_lit_site_cfg(
31 ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
32 ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
35 configure_lit_site_cfg(
36 ${CMAKE_CURRENT_SOURCE_DIR}/unit/lit.site.cfg.in
37 ${CMAKE_CURRENT_BINARY_DIR}/unit/lit.site.cfg
40 include_directories(..)
41 include_directories(${LLVM_MAIN_SRC_DIR}/utils/unittest/googletest/include)
43 add_executable(LLVMFuzzer-Unittest
45 $<TARGET_OBJECTS:LLVMFuzzerNoMain>
48 target_link_libraries(LLVMFuzzer-Unittest
53 set(TestBinaries ${TestBinaries} LLVMFuzzer-Unittest)
55 set_target_properties(${TestBinaries}
56 PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
59 add_lit_testsuite(check-fuzzer "Running Fuzzer tests"
60 ${CMAKE_CURRENT_BINARY_DIR}
61 DEPENDS ${TestBinaries} FileCheck not