CMP0167

在版本 3.30 中添加。

已移除 FindBoost 模块。

CMake 3.29 及更早版本提供了 FindBoost 模块,但它需要持续更新才能跟上上游 Boost 发行版。上游 Boost 1.70 及更高版本提供了一个 BoostConfig.cmake 包配置文件。 find_package(Boost CONFIG) 会直接找到上游包,而无需 find 模块。

CMake 3.30 及更高版本更喜欢不提供 FindBoost 模块,以便在 find_package(Boost) 调用中,无需 CONFIGNO_MODULE 选项便可直接找到上游 BoostConfig.cmake。此策略为尚未移植以使用上游 Boost 包的项目提供了兼容性。

此策略的 OLD 行为是让 find_package(Boost) 加载 CMake 的 FindBoost 模块。 NEW 行为是让 find_package(Boost) 搜索上游 BoostConfig.cmake

此策略在 CMake 版本 3.30 中引入。它可以通过 cmake_policy()cmake_minimum_required() 进行设置。如果未设置,CMake 将发出警告,并使用 OLD 行为。

备注

策略的 OLD 行为被 定义为 已弃用,并且可能会在未来版本的 CMake 中移除。