NO_SYSTEM_FROM_IMPORTED — CMake 3.25.2 Documentation

# NO_SYSTEM_FROM_IMPORTED

Do not treat include directories from the interfaces of consumed Imported Targets as system directories.

The contents of the `INTERFACE_INCLUDE_DIRECTORIES` target property are treated as system includes when the consumed target's `SYSTEM` property is set to true. By default, `SYSTEM` is true for imported targets and false for other target types. If the `NO_SYSTEM_FROM_IMPORTED` property is set to true on a consuming target, compilation of sources in that consuming target will not treat the contents of the `INTERFACE_INCLUDE_DIRECTORIES` of consumed imported targets as system includes, even if that imported target's `SYSTEM` property is false.

Directories listed in the `INTERFACE_SYSTEM_INCLUDE_DIRECTORIES` property of consumed targets are not affected by `NO_SYSTEM_FROM_IMPORTED`. Those directories will always be treated as system include directories by consumers.

This property is initialized by the value of the `CMAKE_NO_SYSTEM_FROM_IMPORTED` variable if it is set when a target is created.

See the `EXPORT_NO_SYSTEM` target property to set this behavior on the target providing the include directories rather than the target consuming them.