CMP0041 — CMake 3.31.6 Documentation

# CMP0041

Error on relative include with generator expression.

Diagnostics in CMake 2.8.12 and lower silently ignored an entry in the `INTERFACE_INCLUDE_DIRECTORIES` of a target if it contained a generator expression at any position.

The path entries in that target property should not be relative. High-level API should ensure that by adding either a source directory or a install directory prefix, as appropriate.

As an additional diagnostic, the `INTERFACE_INCLUDE_DIRECTORIES` generated on an `IMPORTED` target for the install location should not contain paths in the source directory or the build directory.

The `OLD` behavior for this policy is to ignore relative path entries if they contain a generator expression. The `NEW` behavior for this policy is to report an error if a generator expression appears in another location and the path is relative.

This policy was introduced in CMake version 3.0. It may be set by `cmake_policy()` or `cmake_minimum_required()`. If it is not set, CMake warns, and uses `OLD` behavior.

Note

The `OLD` behavior of a policy is `deprecated by definition` and may be removed in a future version of CMake.