IMPORTED_NO_SYSTEM

在 3.23 版本加入.

自 3.25 版本弃用: IMPORTED_NO_SYSTEM 已弃用。请改用以下替代方法:

  • 如果您不希望目标的包含目录在编译消费者时被视为系统目录,请将 SYSTEM 设置为 false。

  • 如果您不希望在编译消费者时将 install(EXPORT)export() 命令生成的导入目标的包含目录视为系统目录,请将 EXPORT_NO_SYSTEM 设置为 true .

导入目标 <Imported Targets> 上将 ``IMPORTED_NO_SYSTEM` 设置为 true 指定它不是系统目标。这具有以下效果:

  • INTERFACE_INCLUDE_DIRECTORIES 的条目在编译消费者时不会被视为系统包含目录(无论消费目标的 SYSTEM 属性的值如何),因为它们在默认情况下是这样的。 INTERFACE_SYSTEM_INCLUDE_DIRECTORIES 的条目不受影响,并且将始终被视为系统包含目录。

也可以在非导入目标上启用此属性。这样做不会影响构建系统,但会告诉 install(EXPORT)export() 命令在它们生成的导入目标上启用它。

请参阅 NO_SYSTEM_FROM_IMPORTED 目标属性以在目标上设置此行为*消费*包含目录而不是*提供*它们。