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:

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.13.4 warns when the policy is not set and uses OLD behavior. Use the cmake_policy() command to set it to OLD or NEW explicitly.


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