Cmake 3.30.0 发布,开源构建系统


CMake 是一个跨平台的自动化构建系统,它使用一个名为 CMakeLists.txt 的文件来描述构建过程,可以产生标准的构建文件,如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces 。文件 CMakeLists.txt 需要手工编写,也可以通过编写脚本进行半自动的生成。

CMake 3.30.0 现已发布,一些亮点更新内容如下:

  • “cmake-presets(7)” 文件现在支持 schema version“9”。 “include”字段现在扩展除“$env{}” 和 preset-specific 宏(即从预设定义内的字段派生的宏)之外的所有宏。

  • “Compile Features”功能现在实现了对“cxx_std_26”和“cuda_std_26”meta-features 的支持,以表明编译器模式必须至少为 C++26。这些 meta-features 最初由 CMake 3.25 记录,但尚未完全实现。

  • 添加了“CMAKE_<LANG>_STANDARD_LATEST”,用于描述 CMake 为所选编译器支持的最新"<LANG>"语言标准。

  • 添加了“CMAKE_TLS_VERSION”变量和“CMAKE_TLS_VERSION”环境变量,用于指定通过"file(DOWNLOAD) "和 "file(UPLOAD)"命令连接到"https://"URL 时的默认最低 TLS 版本。

  • “GENERATED”源文件属性现在在所有目录中都可见。参阅策略“CMP0163”。策略“CMP0118”的文档已修订,以描述其实际效果。

  • Windows上的“FindPython”、“FindPython2”和“FindPython3”模块现在为 Python 调试变体提供了更好的支持。

  • “TARGET_PROPERTY”生成器表达式学会了评估由新的 “TRANSITIVE_COMPILE_PROPERTIES” 和“TRANSITIVE_LINK_PROPERTIES”目标属性定义的自定义传递属性 。

  • “CPack WIX Generator”已获得对 WiX Toolset v4 的支持。参阅“CPACK_WIX_VERSION”变量。

  • 已根据策略“CMP0167”删除了“FindBoost”模块。将项目移植到上游 Boost 的“BoostConfig.cmake”包配置文件,现在“find_package(Boost)”会搜索该文件。

  • cmake.org 上提供的预编译 Windows“.msi”安装程序在执行全新安装时,现在会默认修改系统范围的“PATH”。

详情可查看发布公告

下载:https://cmake.org/download/


相關推薦

2023-07-25

也可以通过编写脚本进行半自动的生成。 CMake 3.27.0 现已发布,一些亮点更新内容如下: “cmake(1)”现在支持 CMake 语言的交互式调试。参阅“--debugger”选项。 VS 2015 及更高版本的 Visual Studio Generators 学会了使用“CMAKE_GENERATO

2023-03-18

也可以通过编写脚本进行半自动的生成。 CMake 3.26.0 现已发布,一些亮点更新内容如下: 添加了“ASM_MARMASM”语言以支持 Microsoft ARM 汇编语言。 CMake 现在将配置时检查的 YAML 日志写入构建树顶部下的“CMakeFiles/CMakeConfigureLog

2022-11-20

写,也可以通过编写脚本进行半自动的生成。 CMake 3.25.0 发布,比较重要的更新内容如下: find_file()、 find_path()、 find_library() 和 find_program() 命令获得了一个 VALIDATOR 选项,以指定一个函数来验证每一个候选项的有效性。 try_

2024-03-27

也可以通过编写脚本进行半自动的生成。 CMake 3.29.0 现已发布,一些亮点更新内容如下: Windows 上的 LLVM/Clang GNU-like 前端(“clang++”)现在可用于编译“CUDA”语言源。 基于 TI Clang 的编译器现在支持编译器 id“TIClang

2024-08-07

以通过编写脚本进行半自动的生成。 CMake 3.30.2 现已发布,一些亮点更新内容如下: cmCPackExternalGenerator:确保在运行脚本之前写入 JSON ci:更新 CMake 版本至 3.30.1 Xcode: 恢复对 CMAKE_OSX_ARCHITECTURES=$(ARCHS_STANDARD) 的支持 H

2023-12-09

也可以通过编写脚本进行半自动的生成。 CMake 3.28.0 现已发布,一些亮点更新内容如下: Ninja Generators 和 Visual Studio Generators for VS 2022 及更新版本,结合 MSVC 14.34 工具集(随 VS 17.4 提供)及更新版本、LLVM/Clang 16.0 及更新版本

2022-08-07

也可以通过编写脚本进行半自动的生成。 CMake 3.24.0 现已发布,一些亮点更新内容如下: “FetchContent”模块和“find_package()”命令现在支持集成功能。 添加了“LINK_LIBRARY”生成器表达式以管理在链接步骤中指定库的方式。

2023-09-20

也可以通过编写脚本进行半自动的生成。 CMake 3.27.5 现已发布,一些亮点更新内容如下: cmGeneratorTarget:支持独立于配置的 Fortran 源查询 cmComputeLinkInformation:计算使用模块的目标的链接信息 FortranCInterface:转发 CMAKE_OSX_DEPL

2023-10-10

也可以通过编写脚本进行半自动的生成。 CMake 3.27.7 现已发布,一些亮点更新内容如下: Android:-std=c++23 需要 Clang 18 测试:Clarify RunCMake.CTestTimeout case name ctest:恢复对 --timeout 值高于默认测试超时的支持 帮助:记录已设

2024-04-16

也可以通过编写脚本进行半自动的生成。 CMake 3.29.2 现已发布,一些亮点更新内容如下: Tests/RunCMake/CompilerChange:简化测试用例 修复使用未规范化的 -DCMAKE_<LANG>_COMPILER= 重新配置时的回归 CMakePackageConfigHelpers: 恢复未

2022-05-28

也可以通过编写脚本进行半自动的生成。 CMake 3.23.2 现已发布,具体更新内容如下: CPack/NuGet:在 Windows 上恢复 component packaging cmInstallCommand:调整错误信息 cmExportBuildFileGenerator:处理 genex-wrapped 的源路径 ci:使用 CMake 3.2

2022-08-21

也可以通过编写脚本进行半自动的生成。 CMake 3.24.1 现已发布,一些亮点更新内容如下: automoc:避免 linker-warning-silencing code 中的编译器警告 FindThreads:针对 MSVC ABI 时跳过检查 -pthread 标志 IPO:不要在 Windows 上的 GCC 10.x 中

2023-08-19

也可以通过编写脚本进行半自动的生成。 CMake 3.27.3 现已发布,一些亮点更新内容如下: FindJNI:在没有 Xcode 的情况下恢复对 macOS 的支持 Utilities/Release:移除未使用的文档构建设置 Apple Text Stubs (.tbd):各种修复 Clang:在

2023-09-26

也可以通过编写脚本进行半自动的生成。 CMake 3.27.6 现已发布,一些亮点更新内容如下: Tests/FortranModules:将 issue 25112 的修复从 FortranOnly 移出 Tests/FortranModules:为 #25223 添加测试用例 add_custom_target:修复 Fortran sources