BoostTestTargets.cmake: support CMake 3.15

Signed-off-by: James Turner <zakalawe@mac.com>
This commit is contained in:
Mykola Orliuk 2019-10-05 18:43:50 +02:00 committed by James Turner
parent 74cd8cf75c
commit 65331599ec
2 changed files with 14 additions and 5 deletions

View File

@ -10,6 +10,9 @@ if(COMMAND cmake_policy)
if(POLICY CMP0067) if(POLICY CMP0067)
cmake_policy(SET CMP0067 NEW) cmake_policy(SET CMP0067 NEW)
endif() endif()
if(POLICY CMP0093)
cmake_policy(SET CMP0093 NEW)
endif()
endif() endif()

View File

@ -46,11 +46,17 @@ set(BOOST_TEST_TARGET_PREFIX "test")
if(NOT Boost_FOUND) if(NOT Boost_FOUND)
find_package(Boost 1.34.0 QUIET) find_package(Boost 1.34.0 QUIET)
endif() endif()
if("${Boost_VERSION}0" LESS "1034000")
if (NOT Boost_VERSION_MACRO)
# Compatibility with pre CMP0093 (CMake 3.15)
set(Boost_VERSION_MACRO ${Boost_VERSION})
endif()
if("${Boost_VERSION_MACRO}0" LESS "1034000")
set(_shared_msg set(_shared_msg
"NOTE: boost::test-based targets and tests cannot " "NOTE: boost::test-based targets and tests cannot "
"be added: boost >= 1.34.0 required but not found. " "be added: boost >= 1.34.0 required but not found. "
"(found: '${Boost_VERSION}'; want >=103400) ") "(found: '${Boost_VERSION_MACRO}'; want >=103400) ")
if(ENABLE_TESTS) if(ENABLE_TESTS)
message(FATAL_ERROR message(FATAL_ERROR
${_shared_msg} ${_shared_msg}
@ -66,7 +72,7 @@ endif()
include(GetForceIncludeDefinitions) include(GetForceIncludeDefinitions)
include(CopyResourcesToBuildTree) include(CopyResourcesToBuildTree)
if(Boost_FOUND AND NOT "${Boost_VERSION}0" LESS "1034000") if(Boost_FOUND AND NOT "${Boost_VERSION_MACRO}0" LESS "1034000")
set(_boosttesttargets_libs) set(_boosttesttargets_libs)
set(_boostConfig "BoostTestTargetsIncluded.h") set(_boostConfig "BoostTestTargetsIncluded.h")
if(NOT Boost_UNIT_TEST_FRAMEWORK_LIBRARY) if(NOT Boost_UNIT_TEST_FRAMEWORK_LIBRARY)
@ -129,7 +135,7 @@ function(add_boost_test _name)
"Syntax error in use of add_boost_test: at least one source file required!") "Syntax error in use of add_boost_test: at least one source file required!")
endif() endif()
if(Boost_FOUND AND NOT "${Boost_VERSION}0" LESS "1034000") if(Boost_FOUND AND NOT "${Boost_VERSION_MACRO}0" LESS "1034000")
include_directories(${Boost_INCLUDE_DIRS}) include_directories(${Boost_INCLUDE_DIRS})
@ -221,7 +227,7 @@ function(add_boost_test _name)
set(_test_command ${_target_name}) set(_test_command ${_target_name})
endif() endif()
if(TESTS AND ( "${Boost_VERSION}" VERSION_GREATER "103799" )) if(TESTS AND ( "${Boost_VERSION_MACRO}" VERSION_GREATER "103799" ))
foreach(_test ${TESTS}) foreach(_test ${TESTS})
add_test( add_test(
${_name}-${_test} ${_name}-${_test}