Merge pull request #4697 from lrineau/Installation-add_CGALConfigVersion-GF

header-only mode: add CGALConfigVersion.cmake
This commit is contained in:
Laurent Rineau 2020-05-22 16:39:28 +02:00
commit b70dcffbd7
2 changed files with 12 additions and 3 deletions

View File

@ -15,7 +15,11 @@ set(PACKAGE_VERSION ${CGAL_CREATED_VERSION_NUM})
if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
set(PACKAGE_VERSION_COMPATIBLE FALSE) set(PACKAGE_VERSION_COMPATIBLE FALSE)
else() else()
set(PACKAGE_VERSION_COMPATIBLE TRUE) if(PACKAGE_FIND_VERSION_MAJOR STREQUAL CGAL_MAJOR_VERSION)
set(PACKAGE_VERSION_COMPATIBLE TRUE)
else()
set(PACKAGE_VERSION_COMPATIBLE FALSE)
endif()
if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION) if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)
set(PACKAGE_VERSION_EXACT TRUE) set(PACKAGE_VERSION_EXACT TRUE)
endif() endif()

View File

@ -103,7 +103,10 @@ endif()
function(CGAL_installation_test_find_package_version mode) function(CGAL_installation_test_find_package_version mode)
set(EXACT) set(EXACT)
if(mode STREQUAL "less") if(mode STREQUAL "less")
MATH(EXPR CGAL_MAJOR_VERSION "${CGAL_MAJOR_VERSION} - 1") set(CGAL_MINOR_VERSION 0)
endif()
if(mode STREQUAL "less_major")
set(CGAL_MAJOR_VERSION 0)
endif() endif()
if(mode STREQUAL "greater" OR mode STREQUAL "fail-exact") if(mode STREQUAL "greater" OR mode STREQUAL "fail-exact")
MATH(EXPR CGAL_MINOR_VERSION "${CGAL_MINOR_VERSION} + 1") MATH(EXPR CGAL_MINOR_VERSION "${CGAL_MINOR_VERSION} + 1")
@ -121,16 +124,18 @@ function(CGAL_installation_test_find_package_version mode)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/test_find_package_version_${mode}) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/test_find_package_version_${mode})
configure_file(test_find_package.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/test_find_package_version_${mode}/CMakeLists.txt) configure_file(test_find_package.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/test_find_package_version_${mode}/CMakeLists.txt)
add_test(NAME test_find_package_version_${mode} add_test(NAME test_find_package_version_${mode}
COMMAND ${CMAKE_COMMAND} -S ${CMAKE_CURRENT_BINARY_DIR}/test_find_package_version_${mode} -B ${CMAKE_CURRENT_BINARY_DIR}/build-test_find_package_version_${mode}) COMMAND ${CMAKE_COMMAND} -S ${CMAKE_CURRENT_BINARY_DIR}/test_find_package_version_${mode} -B ${CMAKE_CURRENT_BINARY_DIR}/build-test_find_package_version_${mode} -DCGAL_DO_NOT_WARN_ABOUT_CMAKE_BUILD_TYPE=ON)
cgal_setup_test_properties(test_find_package_version_${mode}) cgal_setup_test_properties(test_find_package_version_${mode})
endfunction() endfunction()
CGAL_installation_test_find_package_version(less) CGAL_installation_test_find_package_version(less)
CGAL_installation_test_find_package_version(less_major)
CGAL_installation_test_find_package_version(equal) CGAL_installation_test_find_package_version(equal)
CGAL_installation_test_find_package_version(greater) CGAL_installation_test_find_package_version(greater)
CGAL_installation_test_find_package_version(exact) CGAL_installation_test_find_package_version(exact)
CGAL_installation_test_find_package_version(fail-exact) CGAL_installation_test_find_package_version(fail-exact)
set_tests_properties( set_tests_properties(
test_find_package_version_greater test_find_package_version_greater
test_find_package_version_less_major
test_find_package_version_fail-exact test_find_package_version_fail-exact
PROPERTIES WILL_FAIL TRUE) PROPERTIES WILL_FAIL TRUE)