CMP0076 — CMake 3.16.2 Documentation

# CMP0076

The `target_sources()` command converts relative paths to absolute.

In CMake 3.13 and above, the `target_sources()` command now converts relative source file paths to absolute paths in the following cases:

- Source files are added to the target’s `INTERFACE_SOURCES` property.
- The target’s `SOURCE_DIR` property differs from `CMAKE_CURRENT_SOURCE_DIR`.

A path that begins with a generator expression is always left unmodified.

This policy provides compatibility with projects that have not been updated to expect this behavior. The `OLD` behavior for this policy is to leave all relative source file paths unmodified. The `NEW` behavior of this policy is to convert relative paths to absolute according to above rules.

This policy was introduced in CMake version 3.13. CMake version 3.16.2 warns when the policy is not set and uses `OLD` behavior. Use the `cmake_policy()` command to set it to `OLD` or `NEW` explicitly.

Note

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