| # Distributed under the OSI-approved BSD 3-Clause License.  See accompanying | 
 | # file Copyright.txt or https://cmake.org/licensing for details. | 
 |  | 
 | #[=======================================================================[.rst: | 
 | WriteBasicConfigVersionFile | 
 | --------------------------- | 
 |  | 
 | .. deprecated:: 3.0 | 
 |  | 
 |   Use the identical command :command:`write_basic_package_version_file()` | 
 |   from module :module:`CMakePackageConfigHelpers`. | 
 |  | 
 | :: | 
 |  | 
 |   WRITE_BASIC_CONFIG_VERSION_FILE( filename | 
 |     [VERSION major.minor.patch] | 
 |     COMPATIBILITY (AnyNewerVersion|SameMajorVersion|SameMinorVersion|ExactVersion) | 
 |     [ARCH_INDEPENDENT] | 
 |     ) | 
 |  | 
 |  | 
 | #]=======================================================================] | 
 |  | 
 | function(WRITE_BASIC_CONFIG_VERSION_FILE _filename) | 
 |  | 
 |   set(options ARCH_INDEPENDENT ) | 
 |   set(oneValueArgs VERSION COMPATIBILITY ) | 
 |   set(multiValueArgs ) | 
 |  | 
 |   cmake_parse_arguments(CVF "${options}" "${oneValueArgs}" "${multiValueArgs}"  ${ARGN}) | 
 |  | 
 |   if(CVF_UNPARSED_ARGUMENTS) | 
 |     message(FATAL_ERROR "Unknown keywords given to WRITE_BASIC_CONFIG_VERSION_FILE(): \"${CVF_UNPARSED_ARGUMENTS}\"") | 
 |   endif() | 
 |  | 
 |   set(versionTemplateFile "${CMAKE_ROOT}/Modules/BasicConfigVersion-${CVF_COMPATIBILITY}.cmake.in") | 
 |   if(NOT EXISTS "${versionTemplateFile}") | 
 |     message(FATAL_ERROR "Bad COMPATIBILITY value used for WRITE_BASIC_CONFIG_VERSION_FILE(): \"${CVF_COMPATIBILITY}\"") | 
 |   endif() | 
 |  | 
 |   if("${CVF_VERSION}" STREQUAL "") | 
 |     if ("${PROJECT_VERSION}" STREQUAL "") | 
 |       message(FATAL_ERROR "No VERSION specified for WRITE_BASIC_CONFIG_VERSION_FILE()") | 
 |     else() | 
 |       set(CVF_VERSION "${PROJECT_VERSION}") | 
 |     endif() | 
 |   endif() | 
 |  | 
 |   if(NOT CVF_ARCH_INDEPENDENT) | 
 |     set(CVF_ARCH_INDEPENDENT_CHECK " | 
 | # 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\") | 
 |   set(PACKAGE_VERSION \"\${PACKAGE_VERSION} (\${installedBits}bit)\") | 
 |   set(PACKAGE_VERSION_UNSUITABLE TRUE) | 
 | endif()") | 
 |   endif() | 
 |  | 
 |   configure_file("${versionTemplateFile}" "${_filename}" @ONLY) | 
 |  | 
 | endfunction() |