summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2024-03-13 12:46:59 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2024-03-14 23:04:48 +0900
commita8c01019d7aaa2e9e9165504cfdf76b05ec128dc (patch)
treebbc98d883fa0f18f3273397cadb1a7a13bfa9b17
parent620a9aa9f96dfd2fb45d54479eb47655e5c1f56d (diff)
downloadtde-cmake-a8c01019d7aaa2e9e9165504cfdf76b05ec128dc.tar.gz
tde-cmake-a8c01019d7aaa2e9e9165504cfdf76b05ec128dc.zip
Set cmake minimum version in a centralized place
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
-rw-r--r--CMakeLists.txt8
-rw-r--r--modules/TDEMacros.cmake12
-rw-r--r--modules/TDEVersion.cmake5
3 files changed, 21 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 783616d..2e95052 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -14,7 +14,13 @@ if( "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}" )
##### general package setup #####################
- cmake_minimum_required( VERSION 3.5 )
+ # building tde-cmake requires reading the minimum required version
+ # from the source files, because there may be a different version
+ # of tde-cmake already installed in the system. Trying to build
+ # tde-cmake with a lower minimum version would not be allowed then.
+
+ include( ${CMAKE_SOURCE_DIR}/modules/TDEVersion.cmake )
+ cmake_minimum_required( VERSION ${TDE_CMAKE_MINIMUM_VERSION} )
project( tde-cmake-rules )
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake
index de51342..3012ec9 100644
--- a/modules/TDEMacros.cmake
+++ b/modules/TDEMacros.cmake
@@ -18,11 +18,18 @@
#################################################
#####
+##### Need cmake minimum version
+
+include( TDEVersion )
+
+
+#################################################
+#####
##### initialization...
if( NOT TDE_CMAKE_ROOT )
- if( "${CMAKE_VERSION}" VERSION_LESS "3.5" )
- message( FATAL_ERROR "CMake >= 3.5.0 required" )
+ if( "${CMAKE_VERSION}" VERSION_LESS "${TDE_CMAKE_MINIMUM_VERSION}" )
+ message( FATAL_ERROR "CMake >= ${TDE_CMAKE_MINIMUM_VERSION} required" )
endif()
if( ${CMAKE_CURRENT_LIST_DIR} STREQUAL ${CMAKE_ROOT}/Modules )
@@ -83,7 +90,6 @@ include( CheckCXXSourceCompiles )
include( CheckLinkerFlag OPTIONAL )
include( CheckSymbolExists )
include( CheckTypeSize )
-include( TDEVersion )
#################################################
diff --git a/modules/TDEVersion.cmake b/modules/TDEVersion.cmake
index 6edbc42..6fd5900 100644
--- a/modules/TDEVersion.cmake
+++ b/modules/TDEVersion.cmake
@@ -9,6 +9,11 @@
#
#################################################
+# Centralized place where to set the minimum cmake version required in TDE
+
+set( TDE_CMAKE_MINIMUM_VERSION 3.5 )
+
+
#################################################
#####
##### tde_set_project_version