CMP0041

警告

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

当生成器表达式存在时,相对包含路径会报错。

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

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

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

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

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