CMP0111

在 3.19 版本中添加。

导入的目标缺少其位置属性在生成期间会失败。

导入的目标 对于库文件和可执行文件,要求在目标属性中指定它们在磁盘上的位置,例如 IMPORTED_LOCATIONIMPORTED_IMPLIB 或每个配置的等效属性。如果未设置所需的位置属性,CMake 3.18 及更低版本会生成字符串 <TARGET_NAME>-NOTFOUND 来代替,这会导致在构建时相应的规则失败。CMake 3.19 及更高版本更倾向于在生成期间引发错误。此策略为尚未更新以预期新行为的项目提供兼容性。

此策略的 OLD 行为是将未知的、静态的或共享的导入库目标的位置生成为 <TARGET_NAME>-NOTFOUND (如果未设置)。NEW 行为是引发错误。

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

注意

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