Merge pull request #1009
640a934
tests: cmake: fix building with system gtest (redfish)4a9e949
tests: cmake: use a list for enabled tests (redfish)dbd9a26
cmake: tests: gtest target is not always defined #983 (redfish)
This commit is contained in:
commit
e389a9cd8f
|
@ -79,7 +79,6 @@ Packaging for your favorite distribution would be a welcome contribution!
|
|||
* pkg-config
|
||||
* libunbound `>=1.4.16` (note: Unbound is not a dependency, libunbound is)
|
||||
* libevent `>=2.0`
|
||||
* libgtest `>=1.5`
|
||||
* Boost `>=1.58`
|
||||
* BerkeleyDB `>=4.8` (note: on Ubuntu this means installing libdb-dev and libdb++-dev)
|
||||
* libunwind (optional, for stack trace on exception)
|
||||
|
@ -87,6 +86,7 @@ Packaging for your favorite distribution would be a welcome contribution!
|
|||
* ldns `>=1.6.17` (optional, for statically-linked binaries)
|
||||
* expat `>=1.1` (optional, for statically-linked binaries)
|
||||
* bison or yacc (optional, for statically-linked binaries)
|
||||
* GTest `>=1.5` (optional, for running test suite) (NOTE: `libgtest-dev` package in Ubuntu ships without binaries and requires a manual build; `gtest` on Arch includes binaries)
|
||||
* Doxygen (optional, for generating documentation)
|
||||
* graphviz (optional, for generating documentation)
|
||||
|
||||
|
|
|
@ -28,6 +28,9 @@
|
|||
#
|
||||
# Parts of this file are originally copyright (c) 2012-2013 The Cryptonote developers
|
||||
|
||||
# The docs say this only affects grouping in IDEs
|
||||
set(folder "tests")
|
||||
|
||||
if (WIN32 AND STATIC)
|
||||
add_definitions(-DSTATICLIB)
|
||||
# miniupnp changed their static define
|
||||
|
@ -39,19 +42,24 @@ find_package(GTest)
|
|||
if (GTest_FOUND)
|
||||
include_directories(SYSTEM ${GTEST_INCLUDE_DIRS})
|
||||
else ()
|
||||
message(STATUS "GTest not found on the system: will use GTest bundled with this source")
|
||||
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)
|
||||
set(GTEST_LIBRARIES gtest)
|
||||
|
||||
# Ignore some warnings when building gtest binaries.
|
||||
if(NOT MSVC)
|
||||
set_property(TARGET gtest gtest_main
|
||||
set_property(TARGET gtest
|
||||
APPEND_STRING
|
||||
PROPERTY
|
||||
COMPILE_FLAGS " -Wno-undef -Wno-sign-compare")
|
||||
endif()
|
||||
|
||||
set_property(TARGET gtest
|
||||
PROPERTY
|
||||
FOLDER "${folder}")
|
||||
endif ()
|
||||
|
||||
if (NOT DEFINED ENV{TRAVIS})
|
||||
|
@ -84,17 +92,23 @@ target_link_libraries(hash-target-tests
|
|||
cryptonote_core)
|
||||
set_property(TARGET hash-target-tests
|
||||
PROPERTY
|
||||
FOLDER "tests")
|
||||
FOLDER "${folder}")
|
||||
|
||||
add_test(
|
||||
NAME hash-target
|
||||
COMMAND hash-target-tests)
|
||||
|
||||
# Skip the core_tests if we are running in Travis-CI because they will take too long
|
||||
if (DEFINED ENV{TRAVIS})
|
||||
add_custom_target(tests DEPENDS difficulty hash performance_tests core_proxy unit_tests)
|
||||
else ()
|
||||
add_custom_target(tests DEPENDS coretests difficulty hash performance_tests core_proxy unit_tests)
|
||||
endif ()
|
||||
set(enabled_tests
|
||||
difficulty
|
||||
hash
|
||||
performance_tests
|
||||
core_proxy
|
||||
unit_tests)
|
||||
|
||||
set_property(TARGET gtest gtest_main hash-target-tests tests PROPERTY FOLDER "tests")
|
||||
# Skip the core_tests in Travis-CI because they will take too long
|
||||
if (NOT DEFINED ENV{TRAVIS})
|
||||
list(APPEND enabled_tests coretests)
|
||||
endif()
|
||||
|
||||
add_custom_target(tests DEPENDS enabled_tests)
|
||||
set_property(TARGET tests PROPERTY FOLDER "${folder}")
|
||||
|
|
|
@ -42,7 +42,7 @@ target_link_libraries(transfers
|
|||
crypto
|
||||
common
|
||||
epee
|
||||
${GTEST_MAIN_LIBRARIES}
|
||||
${GTEST_LIBRARIES}
|
||||
${Boost_LIBRARIES})
|
||||
|
||||
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/test_transfers")
|
||||
|
|
|
@ -40,7 +40,7 @@ add_executable(libwallet_api_tests
|
|||
target_link_libraries(libwallet_api_tests
|
||||
LINK_PRIVATE
|
||||
wallet
|
||||
${GTEST_MAIN_LIBRARIES}
|
||||
${GTEST_LIBRARIES}
|
||||
${EXTRA_LIBRARIES})
|
||||
|
||||
set_property(TARGET libwallet_api_tests
|
||||
|
|
|
@ -40,7 +40,7 @@ target_link_libraries(net_load_tests_clt
|
|||
otshell_utils
|
||||
p2p
|
||||
cryptonote_core
|
||||
${GTEST_MAIN_LIBRARIES}
|
||||
${GTEST_LIBRARIES}
|
||||
${Boost_CHRONO_LIBRARY}
|
||||
${Boost_DATE_TIME_LIBRARY}
|
||||
${Boost_FILESYSTEM_LIBRARY}
|
||||
|
@ -62,7 +62,7 @@ target_link_libraries(net_load_tests_srv
|
|||
otshell_utils
|
||||
p2p
|
||||
cryptonote_core
|
||||
${GTEST_MAIN_LIBRARIES}
|
||||
${GTEST_LIBRARIES}
|
||||
${Boost_CHRONO_LIBRARY}
|
||||
${Boost_DATE_TIME_LIBRARY}
|
||||
${Boost_FILESYSTEM_LIBRARY}
|
||||
|
|
|
@ -69,7 +69,7 @@ target_link_libraries(unit_tests
|
|||
rpc
|
||||
wallet
|
||||
p2p
|
||||
${GTEST_MAIN_LIBRARIES}
|
||||
${GTEST_LIBRARIES}
|
||||
${Boost_CHRONO_LIBRARY}
|
||||
${Boost_REGEX_LIBRARY}
|
||||
${Boost_SYSTEM_LIBRARY}
|
||||
|
|
Loading…
Reference in New Issue