CMP0039 — CMake 3.16.2 Documentation

# CMP0039

Utility targets may not have link dependencies.

CMake 2.8.12 and lower allowed using utility targets in the left hand side position of the `target_link_libraries()` command. This is an indicator of a bug in user code.

The `OLD` behavior for this policy is to ignore attempts to set the link libraries of utility targets. The `NEW` behavior for this policy is to report an error if an attempt is made to set the link libraries of a utility target.

This policy was introduced in CMake version 3.0. 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.