CMP0144

在 3.27 版本中新增。

find_package() 使用大写 <PACKAGENAME>_ROOT 变量。

在 CMake 3.27 及以上版本中,find_package(<PackageName>) 命令现在除了兼容自策略 CMP0074 起使用的、保留大小写的 <PackageName>_ROOT<PackageName>_ROOT 变量之外,还会搜索大写的 CMake 变量 <PACKAGENAME>_ROOT 和环境变量 <PACKAGENAME>_ROOT。此策略兼容未更新以避免将 <PACKAGENAME>_ROOT 变量用于其他目的的项目。

此策略的 OLD 行为是,如果原始 <PackageName> 包含小写字母,则会忽略 <PACKAGENAME>_ROOT 变量。此策略的 NEW 行为是,使用 <PACKAGENAME>_ROOT 变量。

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

注意

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