aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Boeckel <ben.boeckel@kitware.com>2014-10-21 13:27:47 -0400
committerBen Boeckel <ben.boeckel@kitware.com>2014-10-23 16:42:34 -0400
commitfa3ff758624e9c9704a4a541c195e10335debc3c (patch)
treec72ffebff0ef2daabf7dccfde9e8eaf1f6491e19
parentcmake: put each test executable in its own directory (diff)
downloadmonero-fa3ff758624e9c9704a4a541c195e10335debc3c.tar.xz
gtest: support an external gtest
-rw-r--r--tests/CMakeLists.txt25
-rw-r--r--tests/net_load_tests/CMakeLists.txt4
-rw-r--r--tests/unit_tests/CMakeLists.txt2
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}