]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
ENH: Simplify conditional logic 1496/head
authorHans Johnson <hans.j.johnson@gmail.com>
Tue, 8 Jan 2019 14:43:04 +0000 (08:43 -0600)
committerHans Johnson <hans.j.johnson@gmail.com>
Tue, 8 Jan 2019 20:25:56 +0000 (14:25 -0600)
Based on excellent comment in #1489, the logic
to set cmake policies was simplified.  This will
provide an easier mechanism for maintaining the
conditional logic across many versions of cmake.

build/cmake/CMakeLists.txt

index f72f3f458cdebf3d8856833a2863618c9e6eb0ca..33c05aee8569894728b87f8067ed6fbfe5a07a5b 100644 (file)
@@ -11,15 +11,15 @@ cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR)
   
 # As of 2018-12-26 ZSTD has been validated to build with cmake version 3.13.2 new policies. 
 # Set and use the newest cmake policies that are validated to work 
-set(ZSTD_MAX_VALIDATED_CMAKE_VERSION "3.13.2") 
-if("${CMAKE_MAJOR_VERSION}" LESS 3) # Cmake version <3.7 does not understand the VERSION_LESS_EQUAL operator
+set(ZSTD_MAX_VALIDATED_CMAKE_MAJOR_VERSION "3") 
+set(ZSTD_MAX_VALIDATED_CMAKE_MINOR_VERSION "13") #Policies never changed at PATCH level
+if("${CMAKE_MAJOR_VERSION}" LESS 3)
   set(ZSTD_CMAKE_POLICY_VERSION "${CMAKE_VERSION}") 
-elseif(("${CMAKE_MAJOR_VERSION}" EQUAL 3 AND "${CMAKE_MINOR_VERSION}" GREATER 6) OR ("${CMAKE_MAJOR_VERSION}" GREATER 3))
-  if("${CMAKE_VERSION}" VERSION_LESS_EQUAL "${ZSTD_MAX_VALIDATED_CMAKE_VERSION}") 
+elseif( "${ZSTD_MAX_VALIDATED_CMAKE_MAJOR_VERSION}" EQUAL "${CMAKE_MAJOR_VERSION}" AND 
+        "${ZSTD_MAX_VALIDATED_CMAKE_MINOR_VERSION}" GREATER "${CMAKE_MINOR_VERSION}")
     set(ZSTD_CMAKE_POLICY_VERSION "${CMAKE_VERSION}") 
-  else() 
-    set(ZSTD_CMAKE_POLICY_VERSION "${ZSTD_MAX_VALIDATED_CMAKE_VERSION}") 
-  endif() 
+else() 
+    set(ZSTD_CMAKE_POLICY_VERSION "${ZSTD_MAX_VALIDATED_CMAKE_MAJOR_VERSION}.${ZSTD_MAX_VALIDATED_CMAKE_MINOR_VERSION}.0") 
 endif()
 cmake_policy(VERSION ${ZSTD_CMAKE_POLICY_VERSION})