CMP0189ΒΆ

Added in version 4.1.

TARGET_PROPERTY evaluates LINK_LIBRARIES properties transitively.

The LINK_LIBRARIES and INTERFACE_LINK_LIBRARIES target properties record link dependencies through which the TARGET_PROPERTY generator expression evaluates transitive properties. However, in CMake 4.0 and below, the properties themselves were not evaluated transitively. CMake 4.1 and above prefer to evaluate the LINK_LIBRARIES and INTERFACE_LINK_LIBRARIES target properties transitively because they are among the build specification and usage requirement properties, respectively. This policy provides compatibility for projects that have not been updated to expect the new behavior.

The OLD behavior of this policy is for TARGET_PROPERTY to not evaluate LINK_LIBRARIES and INTERFACE_LINK_LIBRARIES transitively. The NEW behavior is for TARGET_PROPERTY to evaluate LINK_LIBRARIES and INTERFACE_LINK_LIBRARIES transitively.

This policy was introduced in CMake version 4.1. It may be set by cmake_policy() or cmake_minimum_required(). If it is not set, CMake does not warn, 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.