CMake 3.21 发行说明

自 CMake 3.20 以来的更改包括以下内容。

新特性

预设

生成器

语言

命令行

编译器

  • 现在支持富士通编译器,在传统 (Trad) 模式下使用编译器 ID Fujitsu,在 Clang 模式下使用编译器 ID FujitsuClang

平台

  • CMake 现在支持 MSYS 运行时环境,很像 CYGWIN。

基于文件的 API

  • cmake-file-api(7) “codemodel” 版本 2 version 字段已更新至 2.3。

  • cmake-file-api(7) “codemodel” 版本 2 获得了一个新的 “directory” 对象,其中包含目录级信息。 这包括由 install() 命令生成的安装程序列表。

命令

变量

属性

模块

  • FindBLASFindLAPACK 模块学会了支持串行 Fujitsu_SSL2 和并行 Fujitsu_SSL2BLAMP 库。

  • FindDevIL 模块现在提供导入的目标。

  • FindIconv 模块现在具有版本支持。

  • FindIntl 模块现在具有版本支持。

  • FindMPI 模块学会了在主机和交叉编译模式下支持 FujitsuFujitsuClang

  • 添加了 FindMsys 模块以查找 MSYS 安装。 与 FindCygwin 类似,它被其他一些查找模块自动使用,以在 Windows 上定位 UNIX 风格的工具。

  • FindOpenMP 模块学会了支持 FujitsuFujitsuClang

  • FindVulkan 模块获得了导入的目标 Vulkan::HeadersVulkan::glslangValidator

  • UseJava 模块命令 add_jar 增加了一个 RESOURCES 选项,以允许显式命名具有非可选命名空间的资源。

  • UseSWIG 模块现在对 CSharp 语言使用标准库命名约定。 请参阅策略 CMP0122

  • UseSWIG 模块现在支持使用 swig 工具与 Xcode 生成器一起生成隐式依赖项。

生成器表达式

CTest

CPack

已弃用和移除的功能

其他更改

更新

CMake 3.21.0 以来所做的更改包括以下内容。

3.21.1

  • The Visual Studio 17 2022 生成器现在基于 “Visual Studio 2022 Preview 2”。 之前它基于 “Preview 1.1”。

3.21.2

3.21.3

  • The Visual Studio 17 2022 生成器现在基于 “Visual Studio 2022 Preview 4”。 之前它基于 “Preview 3.1”。

  • The AMD ROCm Platform hipcc 编译器被 CMake 3.21.0 到 3.21.2 识别为一个具有 id ROCMClang 的不同编译器。 这已被删除,因为它导致了回归。 相反,

    • hipcc 可能不再用作 HIP 编译器,因为它会干扰 CMake 需要传递给 Clang 的标志。 请直接使用 Clang。

    • hipcc 可以再次用作 CXX 编译器,并且被视为它在底层选择的任何编译器,就像 CMake 3.20 及更早版本所做的那样。

3.21.4

  • The Visual Studio 17 2022 生成器现在基于 “Visual Studio 2022” 发行候选版本。 之前它基于预览版本。

3.21.5, 3.21.6, 3.21.7

这些版本未对已记录的功能或接口进行任何更改。 进行了一些实现更新以支持生态系统更改和/或修复回归。