project("kafka-unit-test") #--------------------------- # rapidjson #--------------------------- if (DEFINED ENV{RAPIDJSON_INCLUDE_DIRS}) set(RAPIDJSON_INCLUDE_DIRS $ENV{RAPIDJSON_INCLUDE_DIRS}) else () find_package(rapidjson REQUIRED) if (NOT RAPIDJSON_INCLUDE_DIRS) message(FATAL_ERROR "Rapidjson not found!") endif () endif () message(STATUS "rapidjson include directory: ${RAPIDJSON_INCLUDE_DIRS}") # Target file(GLOB TEST_SRCS *.cc) include_directories(${PROJECT_NAME} SYSTEM INTERFACE ${RAPIDJSON_INCLUDE_DIRS}) add_executable("${PROJECT_NAME}" ${TEST_SRCS}) target_link_libraries("${PROJECT_NAME}" modern-cpp-kafka-api gtest gtest_main) add_test(NAME ${PROJECT_NAME} COMMAND ./${PROJECT_NAME}) set_tests_properties(${PROJECT_NAME} PROPERTIES LABELS "unit") if (BUILD_OPTION_USE_ASAN OR BUILD_OPTION_USE_TSAN) target_compile_options(${PROJECT_NAME} PRIVATE "-fno-sanitize=all") target_link_options(${PROJECT_NAME} PRIVATE "-fno-sanitize=all") if (BUILD_OPTION_USE_ASAN) set_property(TEST ${PROJECT_NAME} PROPERTY ENVIRONMENT ASAN_OPTIONS=detect_leaks=1) endif () endif ()