diff --git a/CMakeLists.txt b/CMakeLists.txt index 0fc17c5bec93e..395969a09e7b0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,6 +5,18 @@ # For the list of contributors see $ROOTSYS/README/CREDITS. cmake_minimum_required(VERSION 3.20 FATAL_ERROR) +if("${CMAKE_VERSION}" VERSION_LESS "3.23.0") + message(WARNING + "Your CMake version is ${CMAKE_VERSION}. Starting with ROOT 6.44, the " + "minimum version of CMake required to build ROOT will become 3.23.0, and " + "using an older CMake will raise an error. After ROOT 6.44, the CMake version " + "is expected to rise to 3.31.0 in sync with LLVM 24.") +elseif("${CMAKE_VERSION}" VERSION_LESS "3.31.0") + message(WARNING + "Your CMake version is ${CMAKE_VERSION}. After ROOT 6.44, the " + "minimum version of CMake required to build ROOT will become 3.31.0, and " + "using an older CMake will raise an error, in sync with LLVM 24.") +endif() if(WIN32) # Set CMP0091 (MSVC runtime library flags are selected by an abstraction) to OLD diff --git a/README/ReleaseNotes/v642/index.md b/README/ReleaseNotes/v642/index.md index 61c80c9c5b822..96398df2ae8c4 100644 --- a/README/ReleaseNotes/v642/index.md +++ b/README/ReleaseNotes/v642/index.md @@ -86,6 +86,11 @@ The `TMVA_SOFIE_GNN` tutorials have been migrated to this workflow and produce i ## Build System +### CMake version + +CMake versions below 3.31 will emit a warning during configure, since they will become obsolete soon: 3.23 will be minimum required in ROOT 6.44 and 3.31 after ROOT 6.44, to gradually stay in sync with the [minimum version of CMake required by LLVM](https://discourse.llvm.org/t/rfc-raising-minimum-required-cmake-version-to-3-31/91086). + + ### Optimization of ROOT header files In ROOT 6.22, many (but not all) unused includes were removed from ROOT header files. The remaining unused includes will be removed after ROOT 6.44.