Skip to content

Commit d83a247

Browse files
committed
Raise CMake minimum version req to 3.5 (lowest still supported by >=CMake-4)
Signed-off-by: Andreas Sturmlechner <[email protected]>
1 parent 43faf6f commit d83a247

File tree

4 files changed

+28
-59
lines changed

4 files changed

+28
-59
lines changed

CMakeLists.txt

Lines changed: 25 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
#
22
# OpenSceneGraph CMake build file
33
#
4+
CMAKE_MINIMUM_REQUIRED(VERSION 3.5 FATAL_ERROR)
5+
46
SET(OPENSCENEGRAPH_MAJOR_VERSION 3)
57
SET(OPENSCENEGRAPH_MINOR_VERSION 6)
68
SET(OPENSCENEGRAPH_PATCH_VERSION 5)
@@ -13,27 +15,19 @@ SET(OPENSCENEGRAPH_RELEASE_CANDIDATE 0)
1315
set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE)
1416
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
1517

16-
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
17-
18-
if(COMMAND cmake_policy)
19-
# Works around warnings libraries linked against that don't
20-
# have absolute paths (e.g. -lpthreads)
21-
cmake_policy(SET CMP0003 NEW)
18+
# Works around warnings libraries linked against that don't
19+
# have absolute paths (e.g. -lpthreads)
20+
cmake_policy(SET CMP0003 NEW)
2221

23-
# Works around warnings about escaped quotes in ADD_DEFINITIONS
24-
# statements.
25-
cmake_policy(SET CMP0005 NEW)
22+
# Works around warnings about escaped quotes in ADD_DEFINITIONS
23+
# statements.
24+
cmake_policy(SET CMP0005 NEW)
2625

27-
# tell CMake to prefer CMake's own CMake modules when available
28-
# only available from cmake-2.8.4
29-
if("${CMAKE_VERSION}" VERSION_GREATER 2.8.3)
30-
cmake_policy(SET CMP0017 NEW)
31-
endif()
26+
cmake_policy(SET CMP0017 NEW)
3227

33-
# INTERPROCEDURAL_OPTIMIZATION is enforced when enabled.
34-
# Allows passing -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
35-
cmake_policy(SET CMP0069 NEW)
36-
endif()
28+
# INTERPROCEDURAL_OPTIMIZATION is enforced when enabled.
29+
# Allows passing -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
30+
cmake_policy(SET CMP0069 NEW)
3731

3832
IF(APPLE)
3933
# Get OSX version in MAJOR.MINOR format
@@ -155,6 +149,7 @@ IF(NOT CMAKE_BUILD_TYPE)
155149
SET(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE)
156150
ENDIF(NOT CMAKE_BUILD_TYPE)
157151

152+
INCLUDE(GNUInstallDirs)
158153

159154
IF(ANDROID)
160155
INCLUDE(OsgAndroidMacroUtils)
@@ -902,25 +897,8 @@ IF(DEFINED LIB_POSTFIX)
902897
# Use LIB_POSTFIX if defined
903898
SET(OSG_INSTALL_LIBDIR lib${LIB_POSTFIX})
904899
ELSE()
905-
IF(CMAKE_VERSION VERSION_LESS "2.8.5")
906-
IF(UNIX AND NOT WIN32 AND NOT APPLE)
907-
IF(CMAKE_SIZEOF_VOID_P MATCHES "8")
908-
SET(LIB_POSTFIX "64" CACHE STRING "suffix for 32/64 dir placement")
909-
MARK_AS_ADVANCED(LIB_POSTFIX)
910-
ENDIF()
911-
ENDIF()
912-
IF(NOT DEFINED LIB_POSTFIX)
913-
SET(LIB_POSTFIX "")
914-
ENDIF()
915-
SET(OSG_INSTALL_LIBDIR lib${LIB_POSTFIX})
916-
ELSE()
917-
# Use the GNU standard installation directories for CMake >= 2.8.5
918-
INCLUDE(GNUInstallDirs)
919-
SET(OSG_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR})
920-
ENDIF()
921-
ENDIF()
922-
IF(NOT DEFINED LIB_POSTFIX)
923-
SET(LIB_POSTFIX "")
900+
SET(OSG_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR})
901+
SET(LIB_POSTFIX "")
924902
ENDIF()
925903

926904
# Here we apparently do some funky stuff with making the bin/ and lib/
@@ -952,25 +930,16 @@ ELSE(WIN32)
952930
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${OUTPUT_LIBDIR})
953931
ENDIF(WIN32)
954932

955-
# Testing CMAKE_VERSION is possible in >= 2.6.4 only
956-
BUILDER_VERSION_GREATER(2 8 0)
957-
IF(VALID_BUILDER_VERSION) # If CMake >= 2.8.1
958-
FOREACH(CONF ${CMAKE_CONFIGURATION_TYPES}) # For each configuration (Debug, Release, MinSizeRel... and/or anything the user chooses)
959-
STRING(TOUPPER "${CONF}" CONF) # Go uppercase (DEBUG, RELEASE...)
960-
SET("CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_LIBDIR}")
961-
SET("CMAKE_RUNTIME_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_BINDIR}")
962-
IF(WIN32)
963-
SET("CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_BINDIR}")
964-
ELSE()
965-
SET("CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_LIBDIR}")
966-
ENDIF()
967-
ENDFOREACH()
968-
ENDIF(VALID_BUILDER_VERSION)
969-
970-
#SET(INSTALL_BINDIR OpenSceneGraph/bin)
971-
#SET(INSTALL_INCDIR OpenSceneGraph/include)
972-
#SET(INSTALL_LIBDIR OpenSceneGraph/lib)
973-
#SET(INSTALL_DOCDIR OpenSceneGraph/doc)
933+
FOREACH(CONF ${CMAKE_CONFIGURATION_TYPES}) # For each configuration (Debug, Release, MinSizeRel... and/or anything the user chooses)
934+
STRING(TOUPPER "${CONF}" CONF) # Go uppercase (DEBUG, RELEASE...)
935+
SET("CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_LIBDIR}")
936+
SET("CMAKE_RUNTIME_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_BINDIR}")
937+
IF(WIN32)
938+
SET("CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_BINDIR}")
939+
ELSE()
940+
SET("CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CONF}" "${OUTPUT_LIBDIR}")
941+
ENDIF()
942+
ENDFOREACH()
974943

975944
################################################################################
976945
# User Options

PlatformSpecifics/Android/android.toolchain.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@
210210

211211
# Modified by Lasse Oorni and Yao Wei Tjong for Urho3D
212212

213-
cmake_minimum_required( VERSION 2.6.3 )
213+
cmake_minimum_required( VERSION 3.5 )
214214

215215
# Urho3D: on Windows Cygwin-based NDK tools may fail in the linking phase with too long command line. Turn on response files to avoid this
216216
if( CMAKE_HOST_WIN32 )

examples/osgCMakeExample/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 2.6)
1+
cmake_minimum_required(VERSION 3.5)
22

33
SET(PROJECT_NAME osgCMakeExample)
44

examples/osgemscripten/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.0 FATAL_ERROR)
1+
CMAKE_MINIMUM_REQUIRED(VERSION 3.5 FATAL_ERROR)
22

33
# Path to OpenSceneGraph
44
SET(OSG_DIR "${CMAKE_SOURCE_DIR}/../..")

0 commit comments

Comments
 (0)