CMP0041

警告

此策略的 OLD 行为已在 CMake 4.0 版本中移除。此策略必须通过调用 cmake_minimum_required()cmake_policy() 来设置为 NEW

生成器表达式的相对包含路径错误。

CMake 2.8.12 及更低版本中的诊断会默默忽略目标 INTERFACE_INCLUDE_DIRECTORIES 属性中的条目,如果该条目在任何位置包含生成器表达式。

该目标属性中的路径条目不应该是相对路径。高级 API 应通过添加适当的源目录或安装目录前缀来确保这一点。

作为额外的诊断,为安装位置的 IMPORTED 目标生成的 INTERFACE_INCLUDE_DIRECTORIES 不应包含源目录或构建目录中的路径。

此策略的 OLD 行为是忽略包含生成器表达式的相对路径条目。此策略的 NEW 行为是,如果生成器表达式出现在其他位置且路径是相对路径,则报告错误。

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