Merge topic 'HandleEmptySIZEOF_VOID_P'
14b213c
add test for #13241: empty SIZEOF_VOIDP in write_basic_package_version_file00ae36f
write_basic_package_version_file() now works with unset CMAKE_SIZEOF_VOID_P
This commit is contained in:
commit
116a62c07e
|
@ -18,6 +18,11 @@ else()
|
|||
endif()
|
||||
endif()
|
||||
|
||||
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
|
||||
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
|
||||
if(NOT "${CMAKE_SIZEOF_VOID_P}" STREQUAL "@CMAKE_SIZEOF_VOID_P@")
|
||||
math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8")
|
||||
|
|
|
@ -34,6 +34,11 @@ if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}")
|
|||
endif()
|
||||
|
||||
|
||||
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
|
||||
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
|
||||
if(NOT "${CMAKE_SIZEOF_VOID_P}" STREQUAL "@CMAKE_SIZEOF_VOID_P@")
|
||||
math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8")
|
||||
|
|
|
@ -33,6 +33,11 @@ else()
|
|||
endif()
|
||||
|
||||
|
||||
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
|
||||
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
|
||||
if(NOT "${CMAKE_SIZEOF_VOID_P}" STREQUAL "@CMAKE_SIZEOF_VOID_P@")
|
||||
math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8")
|
||||
|
|
|
@ -363,10 +363,16 @@ endif()
|
|||
#-----------------------------------------------------------------------------
|
||||
# Test write_basic_config_version_file().
|
||||
|
||||
# also test that an empty CMAKE_SIZEOF_VOID_P is accepted:
|
||||
set(_CMAKE_SIZEOF_VOID_P ${CMAKE_SIZEOF_VOID_P})
|
||||
set(CMAKE_SIZEOF_VOID_P "")
|
||||
|
||||
write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/Foo123ConfigVersion.cmake
|
||||
VERSION 1.2.3
|
||||
COMPATIBILITY AnyNewerVersion)
|
||||
|
||||
set(CMAKE_SIZEOF_VOID_P ${_CMAKE_SIZEOF_VOID_P})
|
||||
|
||||
set(PACKAGE_FIND_VERSION 2.3.4)
|
||||
include(${CMAKE_CURRENT_BINARY_DIR}/Foo123ConfigVersion.cmake)
|
||||
if(PACKAGE_VERSION_COMPATIBLE)
|
||||
|
@ -379,6 +385,10 @@ if(NOT PACKAGE_VERSION_COMPATIBLE)
|
|||
message(SEND_ERROR "Did not find Foo123 with version 1.2.3 (0.0.1 was requested) !")
|
||||
endif()
|
||||
|
||||
if(PACKAGE_VERSION_UNSUITABLE)
|
||||
message(SEND_ERROR "PACKAGE_VERSION_UNSUITABLE set, but must not be !")
|
||||
endif()
|
||||
|
||||
set(PACKAGE_FIND_VERSION 1.0.0)
|
||||
include(${CMAKE_CURRENT_BINARY_DIR}/Foo123ConfigVersion.cmake)
|
||||
if(NOT PACKAGE_VERSION_COMPATIBLE)
|
||||
|
@ -405,6 +415,7 @@ write_basic_config_version_file(${CMAKE_CURRENT_BINARY_DIR}/Boo123ConfigVersion.
|
|||
VERSION 1.2.3
|
||||
COMPATIBILITY SameMajorVersion)
|
||||
|
||||
unset(PACKAGE_VERSION_UNSUITABLE)
|
||||
set(PACKAGE_VERSION_EXACT FALSE)
|
||||
set(PACKAGE_FIND_VERSION 2.3.4)
|
||||
set(PACKAGE_FIND_VERSION_MAJOR 2)
|
||||
|
@ -456,6 +467,7 @@ write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/Bar123ConfigVersion
|
|||
VERSION 1.2.3.17
|
||||
COMPATIBILITY ExactVersion)
|
||||
|
||||
unset(PACKAGE_VERSION_UNSUITABLE)
|
||||
set(PACKAGE_VERSION_EXACT FALSE)
|
||||
set(PACKAGE_FIND_VERSION 2.3.4)
|
||||
include(${CMAKE_CURRENT_BINARY_DIR}/Bar123ConfigVersion.cmake)
|
||||
|
|
Loading…
Reference in New Issue