CMP0052

警告

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

在版本 3.1 中添加。

拒绝安装的 INTERFACE_INCLUDE_DIRECTORIES 中的源目录和构建目录。

CMake 3.0 及更低版本允许源目录或构建目录的子目录位于已安装和导出的目标的 INTERFACE_INCLUDE_DIRECTORIES 中,如果该目录也是安装前缀的子目录。这使得安装依赖于源目录或二进制目录的存在,并且如果在安装后删除其中任何一个,安装将会损坏。

有关为目标指定包含目录的更多信息,请参阅 包含目录和使用要求

此策略的 OLD 行为是导出带有源目录或二进制目录的 INTERFACE_INCLUDE_DIRECTORIES 的内容。此策略的 NEW 行为是如果使用此类目录,则发出错误。

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