47 lines
1.3 KiB
CMake
47 lines
1.3 KiB
CMake
set(APP_TEST_NAME leetcode_test)
|
|
|
|
message(STATUS "=========== start testing APP_TEST_NAME: ${APP_TEST_NAME} ==========")
|
|
set(TEST_SOURCES)
|
|
|
|
file(GLOB_RECURSE TEST_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/tests/*.cpp")
|
|
string(REGEX REPLACE ";" "\t\n" TMEP_SOURCES "${TEST_SOURCES}")
|
|
|
|
message(STATUS "=========== test_file =========== \n${TMEP_SOURCES}")
|
|
message(STATUS "=========== test_file =========== \n")
|
|
|
|
include(GoogleTest)
|
|
|
|
enable_testing()
|
|
add_executable(
|
|
${APP_TEST_NAME}
|
|
tests/test_main.cpp
|
|
${TEST_SOURCES}
|
|
)
|
|
target_link_libraries(
|
|
${APP_TEST_NAME} PRIVATE
|
|
GTest::gtest_main
|
|
${APP_LIB_NAME}
|
|
)
|
|
|
|
if(${WITH_PROFILE})
|
|
message(STATUS "==== WITH_PROFILE: ON")
|
|
message(STATUS "==== gperftools_SOURCE_DIR: ${gperftools_SOURCE_DIR}/src")
|
|
# 设置gperftools的头文件路径
|
|
# target_include_directories(
|
|
# ${APP_TEST_NAME} PRIVATE
|
|
# ${gperftools_SOURCE_DIR}/src
|
|
# )
|
|
|
|
include_directories(${gperftools_BINARY_DIR}/include)
|
|
|
|
file(GLOB GPERFTOOLS_LIBRARIES "${gperftools_BINARY_DIR}/lib/*.a")
|
|
message("Found libraries:")
|
|
foreach(LIBRARY ${GPERFTOOLS_LIBRARIES})
|
|
message(" ${LIBRARY}")
|
|
endforeach()
|
|
target_link_libraries(${APP_LIB_NAME} ${GPERFTOOLS_LIBRARIES})
|
|
endif()
|
|
|
|
gtest_discover_tests(${APP_TEST_NAME})
|
|
message(STATUS "========= end testing ========")
|