fre 10 jan. 2025 kl. 20:18 skrev Timofei Zhakov <t...@chemodax.net>: > Hi all, > > I’ve recently noticed that Serf is currently using an old version of CMake. > The policy is currently requiring the version 3.0. > > I think that this would be a great to bump the required CMake version to a > newer one. This will firstly prevent a weird warning about unsupported > version, when the newest executable is being utilized for configuration. > They don’t support versions less than 3.6, as I remember that. > > Secondly, we will get an access to new features of CMake. There were a > bunch of stuff added, which may make the CMake script better and simpler. > Actually, I run into this issue when wanted to use the > add_compile_definitions() command for initializing the compile definitions, > instead of changing the flags directly. This command was introduced exactly > in the version 3.12 (check their docs out for more info: > https://cmake.org/cmake/help/latest/command/add_compile_definitions.html). > I’m gonna make this patch soon ;)) > > Based on my experience of introducing CMake build to Subversion, I figured > out that the version 3.12 is the best choose for such projects. This > version has the most of the important and helpful CMake features, which 3.0 > doesn’t. It is available on the most of the platforms and distributions > (actually I can say that all supported distributions provides this version, > or the later one). > > In order to update the version, it has to be changed in the CMakeLists.txt > file, where we request minimal CMake version using the > cmake_minimum_required command. Also the block bellow, with the CMP0074 > policy manipulation can be simply removed, since the version 3.12 enables > it automatically. > > What do you think?
Hi Since we didn’t even release any version of Serf with CMake support (the support is in trunk and in the still-to-be-released 1.4.x) and considering that CMake 3.12 was released in 2018 (6+ years ago), I can’t see any problems with moving to 3.12. Anyone building experimental versions should be on at least 3.12 already. Cheers Daniel