CMP0111

添加于 3.19 版本。

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

用于库文件和可执行文件 导入目标 要求在其目标属性(如 IMPORTED_LOCATIONIMPORTED_IMPLIB 或每个配置的同等配置)中指定其磁盘位置。如果没有设置所需的 location 属性,3.18 及以下版本的 CMake 会在其位置生成字符串 <TARGET_NAME>-NOTFOUND,导致构建期间相应规则会失败。而 3.19 及以上版本的 CMake 则更倾向于在生成期间引发错误。此策略为尚未更新以期待此新行为的项目提供兼容性。

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

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

说明

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