From 29e6ab8335bc641cb9cc1e52301701b27b8bff9a Mon Sep 17 00:00:00 2001
From: Daniel Kirchner <daniel@ekpyron.org>
Date: Sat, 8 Jun 2019 02:28:36 +0200
Subject: [PATCH] Generate Z3ConfigVersion.cmake.

---
 CMakeLists.txt | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index e7ecb404a..4ea5098d7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,16 +11,11 @@ if (POLICY CMP0042)
 endif()
 
 set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cxx_compiler_flags_overrides.cmake")
-project(Z3 CXX)
+project(Z3 VERSION 4.8.6.0 LANGUAGES CXX)
 
 ################################################################################
 # Project version
 ################################################################################
-set(Z3_VERSION_MAJOR 4)
-set(Z3_VERSION_MINOR 8)
-set(Z3_VERSION_PATCH 6)
-set(Z3_VERSION_TWEAK 0)
-set(Z3_VERSION "${Z3_VERSION_MAJOR}.${Z3_VERSION_MINOR}.${Z3_VERSION_PATCH}.${Z3_VERSION_TWEAK}")
 set(Z3_FULL_VERSION_STR "${Z3_VERSION}") # Note this might be modified
 message(STATUS "Z3 version ${Z3_VERSION}")
 
@@ -557,8 +552,10 @@ unset(Z3_SECOND_PACKAGE_INCLUDE_DIR)
 unset(Z3_CXX_PACKAGE_INCLUDE_DIR)
 unset(AUTO_GEN_MSG)
 unset(CONFIG_FILE_TYPE)
-# TODO: Provide a `Z3Version.cmake` file so that clients can specify the version
-# of Z3 they want.
+
+write_basic_package_version_file("${PROJECT_BINARY_DIR}/Z3ConfigVersion.cmake"
+  COMPATIBILITY SameMajorVersion
+)
 
 ################################################################################
 # Create `Z3Config.cmake` and related files for install tree so clients can use
@@ -596,8 +593,11 @@ install(
   DESTINATION "${CMAKE_INSTALL_Z3_CMAKE_PACKAGE_DIR}"
 )
 
-# TODO: Provide a `Z3Version.cmake` file so that clients can specify the version
-# of Z3 they want.
+# Add install rule to install ${PROJECT_BINARY_DIR}/Z3ConfigVersion.cmake
+install(
+  FILES "${PROJECT_BINARY_DIR}/Z3ConfigVersion.cmake"
+  DESTINATION "${CMAKE_INSTALL_Z3_CMAKE_PACKAGE_DIR}"
+)
 
 ################################################################################
 # Examples