
This reverts commit d959324e1efec12c3924c17b7d90db0b37eb84c3. The target_include_directories in the clang-fuzzer CMake files are set to PRIVATE instead of PUBLIC to prevent the clang buildbots from breaking when symlinking clang into llvm. The expression evaluator fuzzer itself has been modified to prevent a bug that occurs when running it without a target.
25 lines
862 B
CMake
25 lines
862 B
CMake
include(ExternalProject)
|
|
|
|
if (NOT PBM_PREFIX)
|
|
set (PBM_PREFIX protobuf_mutator)
|
|
endif()
|
|
|
|
set(PBM_PATH ${CMAKE_CURRENT_BINARY_DIR}/${PBM_PREFIX}/src/${PBM_PREFIX})
|
|
set(PBM_LIB_PATH ${PBM_PATH}-build/src/libprotobuf-mutator.a)
|
|
set(PBM_FUZZ_LIB_PATH ${PBM_PATH}-build/src/libfuzzer/libprotobuf-mutator-libfuzzer.a)
|
|
|
|
ExternalProject_Add(${PBM_PREFIX}
|
|
PREFIX ${PBM_PREFIX}
|
|
GIT_REPOSITORY https://github.com/google/libprotobuf-mutator.git
|
|
GIT_TAG master
|
|
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
|
CMAKE_CACHE_ARGS -DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
|
|
-DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}
|
|
BUILD_BYPRODUCTS ${PBM_LIB_PATH} ${PBM_FUZZ_LIB_PATH}
|
|
UPDATE_COMMAND ""
|
|
INSTALL_COMMAND ""
|
|
)
|
|
|
|
set(ProtobufMutator_INCLUDE_DIRS ${PBM_PATH})
|
|
set(ProtobufMutator_LIBRARIES ${PBM_FUZZ_LIB_PATH} ${PBM_LIB_PATH})
|