Introduce the LINK_ONLY generator expression.

This is an internal expression for use by target_link_libraries
for static libraries.
Introduce the INTERFACE_LINK_LIBRARIES property.

This property replaces the properties which
match (IMPORTED_)?LINK_INTERFACE_LIBRARIES(_<CONFIG>)?, and is enabled
for IMPORTED targets, and for non-IMPORTED targets only with a policy.

For static libraries, the INTERFACE_LINK_LIBRARIES property is
also used as the source of transitive usage requirements content.
Static libraries still require users to link to all entries in
their LINK_LIBRARIES, but usage requirements such as INCLUDE_DIRECTORIES
COMPILE_DEFINITIONS and COMPILE_OPTIONS can be restricted to only
certain interface libraries.
Export: Generate INTERFACE_LINK_LIBRARIES property on targets.

This property is generated only for targets which have recorded
policy CMP0022 as NEW, and a compatibility mode is added to
additionally export the old interfaces in that case too.
TLL: Populate INTERFACE_LINK_LIBRARIES if CMP0022 is NEW.
Merge topic 'INTERFACE_LINK_LIBRARIES-prop' into next

448cdef TLL: Populate INTERFACE_LINK_LIBRARIES if CMP0022 is NEW.
a1c252d Export: Generate INTERFACE_LINK_LIBRARIES property on targets.
bb4260c Introduce the INTERFACE_LINK_LIBRARIES property.
a874da8 Introduce the LINK_ONLY generator expression.