1# This is a basic version file for the Config-mode of find_package(). 2# It is used by write_basic_package_version_file() as input file for configure_file() 3# to create a version-file which can be installed along a config.cmake file. 4# 5# The created file sets PACKAGE_VERSION_EXACT if the current version string and 6# the requested version string are exactly the same and it sets 7# PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version. 8# The variable CVF_VERSION must be set before calling configure_file(). 9 10set(PACKAGE_VERSION "@CVF_VERSION@") 11 12if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) 13 set(PACKAGE_VERSION_COMPATIBLE FALSE) 14else() 15 set(PACKAGE_VERSION_COMPATIBLE TRUE) 16 if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") 17 set(PACKAGE_VERSION_EXACT TRUE) 18 endif() 19endif() 20 21# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it: 22if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "") 23 return() 24endif() 25 26# check that the installed version has the same 32/64bit-ness as the one which is currently searching: 27if(NOT "${CMAKE_SIZEOF_VOID_P}" STREQUAL "@CMAKE_SIZEOF_VOID_P@") 28 math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8") 29 set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)") 30 set(PACKAGE_VERSION_UNSUITABLE TRUE) 31endif() 32