mirror of
https://gitee.com/jiuyilian/embedded-framework.git
synced 2025-01-06 10:16:51 -05:00
43 lines
2.4 KiB
CMake
43 lines
2.4 KiB
CMake
|
|
# cmake_minimum_required(VERSION 2.8.0)
|
|
# Compile gtest for test code.
|
|
if (EXISTS "${EXTERNAL_LIBS_OUTPUT_PATH}/libgtest.a")
|
|
message("googletest compile ok.")
|
|
else()
|
|
execute_process(COMMAND sh build_gtest.sh ${TARGET_PLATFORM} ${PLATFORM_PATH} ${PLATFORM_PATH} WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/gtest/)
|
|
execute_process(COMMAND mkdir ${PLATFORM_PATH}/output_files
|
|
WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/gtest/)
|
|
execute_process(COMMAND mkdir ${PLATFORM_PATH}/output_files/libs
|
|
WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/gtest/)
|
|
execute_process(COMMAND mkdir ${PLATFORM_PATH}/output_files/libs/external
|
|
WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/gtest/)
|
|
execute_process(COMMAND mv ${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googlemock/lib/libgtest.a ${EXTERNAL_LIBS_OUTPUT_PATH}/libgtest.a
|
|
WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/gtest/)
|
|
execute_process(COMMAND mv ${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googlemock/lib/libgmock.a ${EXTERNAL_LIBS_OUTPUT_PATH}/libgmock.a
|
|
WORKING_DIRECTORY ${EXTERNAL_SOURCE_PATH}/gtest/)
|
|
endif()
|
|
|
|
if(${TARGET_PLATFORM} MATCHES ${DEFINE_LINUX})
|
|
message("linux mock api will be set.")
|
|
set(TEST_LINUX_MOCK "-Wl,--wrap=fx_open" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_fstat" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_tcgetattr" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_tcsetattr" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_select" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_write" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_read" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_access" CACHE STRING INTERNAL FORCE)
|
|
set(TEST_LINUX_MOCK "${TEST_LINUX_MOCK},--wrap=fx_fopen" CACHE STRING INTERNAL FORCE)
|
|
endif()
|
|
# Mock Linux api.
|
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${TEST_LINUX_MOCK}")
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TEST_LINUX_MOCK}")
|
|
add_definitions(-DTEST_SOURCE_PATH="${TEST_SOURCE_PATH}")
|
|
|
|
add_subdirectory(all)
|
|
add_subdirectory(application)
|
|
add_subdirectory(middleware)
|
|
add_subdirectory(utils)
|
|
add_subdirectory(hal)
|
|
|