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.