-----Original Message----- From: Boost
On Behalf Of Peter Dimov via Boost Sent: 2 June 2021 17:32 To: boost@lists.boost.org Cc: Peter Dimov Subject: [boost] CMake minimum version to support I suppose the time has come to have the discussion on the minimum CMake version we will support for building Boost. Currently that's set to 3.5, which kind of works, but is fairly inconvenient.
The interesting options are
- CMake 3.8: required for use of the compile features cxx_std_11, cxx_std_14, cxx_std_17, etc. Also allows source_group(TREE, which is used by Json and PropertyTree.
- CMake 3.9: required by Nowide, I'm not sure why. Also, required for FindMPI to define an imported target. Building Boost.MPI is optional though.
- CMake 3.13: required for Boost installation support.
- CMake 3.14: required for FindPython to be modern enough to make building Boost.Python reasonably easy. (Building Boost.Python is optional, though.)
There are also less important nice-to-have things such as
- CMake 3.10: adds include_guard() - CMake 3.12: adds CONFIGURE_DEPENDS to file(GLOB - CMake 3.15: adds VERBOSE/DEBUG to message(
Opinions?
Assuming that installing/updating Cmake is easy, I would suggest that we fix the Cmake requirement at the most recent version of CMake released at the time of the Boost release date. Including instructions on how to update CMake for popular platforms in the Boost 'how-to-install' instructions would be really helpful - and fend off moaners. That is a simple enduring policy and needs no discussion (like this one) on each release. This matches what we do for b2 - always rebuild for each Boost release. KISS! Paul PS I assume there are no 'backward compatibility' issues with enforcing a CMake update.