84 lines
2.7 KiB
CMake
84 lines
2.7 KiB
CMake
|
|
include(${CMAKE_SOURCE_DIR_IPCSDK}/build/global_config.cmake)
|
|
include(${MIDDLEWARE_SOURCE_PATH}/IpcConfig/build/ipc_config.cmake)
|
|
set(EXECUTABLE_OUTPUT_PATH ${TEST_OUTPUT_PATH}/bin)
|
|
|
|
include_directories(
|
|
.
|
|
./src
|
|
./include
|
|
${UTILS_SOURCE_PATH}/Log/include
|
|
${UTILS_SOURCE_PATH}/StatusCode/include
|
|
${UTILS_SOURCE_PATH}/LinuxApi/include
|
|
${UTILS_SOURCE_PATH}/ConfigBase/include
|
|
${MIDDLEWARE_SOURCE_PATH}/IpcConfig/include
|
|
${MIDDLEWARE_SOURCE_PATH}/IpcConfig/src
|
|
${TEST_SOURCE_PATH}
|
|
${TEST_SOURCE_PATH}/middleware/IpcConfig/tool/include
|
|
${TEST_SOURCE_PATH}/utils/LinuxApiMock/include
|
|
${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googletest/include
|
|
${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googlemock/include
|
|
)
|
|
|
|
link_directories(
|
|
${LIBS_OUTPUT_PATH}
|
|
${EXTERNAL_LIBS_OUTPUT_PATH}
|
|
${TEST_TOOLS_OUTPUT_PATH}
|
|
)
|
|
|
|
aux_source_directory(. SRC_FILES_MAIN)
|
|
aux_source_directory(./src SRC_FILES)
|
|
if(${TARGET_PLATFORM} MATCHES ${DEFINE_LINUX})
|
|
aux_source_directory(./src_mock SRC_FILES)
|
|
endif()
|
|
|
|
set(TARGET_NAME IpcConfigTest)
|
|
add_executable(${TARGET_NAME} ${SRC_FILES_MAIN} ${SRC_FILES})
|
|
target_link_libraries(${TARGET_NAME} IpcConfigTestTool LinuxApi gtest gmock pthread)
|
|
target_link_libraries(${TARGET_NAME} IpcConfig LinuxApiMock)
|
|
if(${TEST_COVERAGE} MATCHES "true")
|
|
target_link_libraries(${TARGET_NAME} gcov)
|
|
endif()
|
|
if ("${COMPILE_IMPROVE_SUPPORT}" MATCHES "true")
|
|
add_custom_target(
|
|
IpcConfigTest_code_check
|
|
COMMAND ${CLANG_TIDY_EXE}
|
|
-checks='${CLANG_TIDY_CHECKS}'
|
|
--header-filter=.*
|
|
--system-headers=false
|
|
${SRC_FILES}
|
|
${CLANG_TIDY_CONFIG}
|
|
# --line-filter='[{\"name\":\"${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googletest/include/getest/gtest.h\"}]'
|
|
--line-filter='[{\"name\":\"${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googletest/include/getest/*.h\"}]'
|
|
-p ${PLATFORM_PATH}/cmake-shell
|
|
WORKING_DIRECTORY ${TEST_SOURCE_PATH}/middleware/IpcConfig
|
|
)
|
|
add_custom_command(
|
|
TARGET ${TARGET_NAME}
|
|
PRE_BUILD
|
|
COMMAND make IpcConfigTest_code_check
|
|
WORKING_DIRECTORY ${PLATFORM_PATH}/cmake-shell/
|
|
)
|
|
|
|
file(GLOB_RECURSE HEADER_FILES *.h)
|
|
add_custom_target(
|
|
IpcConfigTest_code_format
|
|
COMMAND ${CLANG_FORMAT_EXE}
|
|
-style=file
|
|
-i ${SRC_FILES} ${SRC_FILES_MAIN} ${HEADER_FILES}
|
|
WORKING_DIRECTORY ${TEST_SOURCE_PATH}/middleware/IpcConfig
|
|
)
|
|
add_custom_command(
|
|
TARGET ${TARGET_NAME}
|
|
PRE_BUILD
|
|
COMMAND make IpcConfigTest_code_check
|
|
COMMAND make IpcConfigTest_code_format
|
|
WORKING_DIRECTORY ${PLATFORM_PATH}/cmake-shell/
|
|
)
|
|
endif()
|
|
|
|
define_file_name(${TARGET_NAME})
|
|
|
|
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/tool/CMakeLists.txt")
|
|
add_subdirectory(tool)
|
|
endif() |