[cmake-developers] Add property to get all linked libraries including transitive ones

Brad King brad.king at kitware.com
Wed Nov 9 14:25:32 EST 2016


On 11/09/2016 01:28 PM, maikel van den Hurk wrote:
>> Stephen Kelly wrote:
>> I believe it's because of a chicken-egg concern - the link libraries are the
>> basis for transitivity for other properties. I remember discussing that in
>> the mailing list back in the design phase.
> 
> When trying to remove the limitation I couldn't find any issue actually.

I think what may have happened was that originally we attempted to make
the value of each usage requirement property itself (get_property) have
the transitive closure already filled out.  Later we changed to making
the property itself non-transitive but have the genex evaluation take care
of transitivity instead.  This means there is no chicken-n-egg problem
for LINK_LIBRARIES anymore.

> I can make a PR on gitlab which will make this possible.

Thanks.  Note that changing $<TARGET_PROPERTY:LINK_LIBRARIES> behavior
will require a policy.

-Brad



More information about the cmake-developers mailing list