可以以 JSON 的方式添加预设,用户将获得预设的默认值。find_package 支持版本范围,特殊的查找模块,比如:FindPython,有对版本范围的自定义支持。添加了许多新的权限控制,进一步的普及生成器表达式。
首次发布于 2020年11月18日
CMake预设文件 —— 可以为每个生成器的项目设置默认值,或者用户可以进行预设。即使当前项目没有使用 CMakePresets.json ,也可将CMakeUserPresets.json 添加到 .gitignore 中。
XCode 12+ 中引入了新的构建系统
支持 MSVC 对 Android 的构建
新增 cmake -E create_hardlink
add_test 正确地支持测试名称中的空格
可将 cmake_language 中标记为 DEFER 的目录放在最后进行处理
大量新 file 选项,如临时下载和 ARCHIVE_CREATE 的 COMPRESSION_LEVEL
find_package 支持版本范围
DIRECTORY 可以在属性命令中包含二进制目录
string 新增 JSON 模式
新 OPTIMIZE_DEPENDENCIES 属性和 CMAKE_* 变量可智能地删除静态库和对象库的依赖项。
PCH 支持 PCH_INSTANTIATE_TEMPLATES 属性和 CMAKE_* 变量。
检查模块支持 CUDA 和 ISPC 语言
FindPython:新增 Python*_LINK_OPTIONS
ctest 的 compute-sanitizer 支持 CUDA 的 memcheck