From fa3ff758624e9c9704a4a541c195e10335debc3c Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Tue, 21 Oct 2014 13:27:47 -0400 Subject: [PATCH] gtest: support an external gtest --- tests/CMakeLists.txt | 25 +++++++++++++++++++------ tests/net_load_tests/CMakeLists.txt | 4 ++-- tests/unit_tests/CMakeLists.txt | 2 +- 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 63a213a34..3da9fdb6b 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -32,8 +32,25 @@ add_definitions(-DSTATICLIB) # miniupnp changed their static define add_definitions(-DMINIUPNP_STATICLIB) -add_subdirectory(gtest) -include_directories(${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR}) +find_package(GTest) + +if (GTest_FOUND) + include_directories(SYSTEM ${GTEST_INCLUDE_DIRS}) +else () + add_subdirectory(gtest) + include_directories(SYSTEM "${gtest_SOURCE_DIR}/include" "${gtest_SOURCE_DIR}") + + # Emulate the FindGTest module's variable. + set(GTEST_MAIN_LIBRARIES gtest_main) + + # Ignore some warnings when building gtest binaries. + if(NOT MSVC) + set_property(TARGET gtest gtest_main + APPEND_STRING + PROPERTY + COMPILE_FLAGS " -Wno-undef -Wno-sign-compare") + endif() +endif () add_subdirectory(core_tests) add_subdirectory(crypto) @@ -66,9 +83,5 @@ add_test( NAME hash-target COMMAND hash-target-tests) -if(NOT MSVC) - set_property(TARGET gtest gtest_main APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-undef -Wno-sign-compare") -endif() - add_custom_target(tests DEPENDS coretests difficulty hash performance_tests core_proxy unit_tests) set_property(TARGET gtest gtest_main hash-target-tests tests PROPERTY FOLDER "tests") diff --git a/tests/net_load_tests/CMakeLists.txt b/tests/net_load_tests/CMakeLists.txt index fbb0ac590..8303b50c0 100644 --- a/tests/net_load_tests/CMakeLists.txt +++ b/tests/net_load_tests/CMakeLists.txt @@ -37,7 +37,7 @@ add_executable(net_load_tests_clt ${clt_headers}) target_link_libraries(net_load_tests_clt PRIVATE - gtest_main + ${GTEST_MAIN_LIBRARIES} ${Boost_CHRONO_LIBRARY} ${Boost_DATE_TIME_LIBRARY} ${Boost_FILESYSTEM_LIBRARY} @@ -56,7 +56,7 @@ add_executable(net_load_tests_srv ${srv_headers}) target_link_libraries(net_load_tests_srv PRIVATE - gtest_main + ${GTEST_MAIN_LIBRARIES} ${Boost_CHRONO_LIBRARY} ${Boost_DATE_TIME_LIBRARY} ${Boost_FILESYSTEM_LIBRARY} diff --git a/tests/unit_tests/CMakeLists.txt b/tests/unit_tests/CMakeLists.txt index f9ee5919a..0a2247084 100644 --- a/tests/unit_tests/CMakeLists.txt +++ b/tests/unit_tests/CMakeLists.txt @@ -58,7 +58,7 @@ target_link_libraries(unit_tests cryptonote_core rpc wallet - gtest_main + ${GTEST_MAIN_LIBRARIES} ${Boost_CHRONO_LIBRARY} ${Boost_REGEX_LIBRARY} ${Boost_SYSTEM_LIBRARY}