[cmake-developers] Setting includes, defines and other usage requirements with one command
Brad King
brad.king at kitware.com
Tue Jan 29 13:05:23 EST 2013
On 01/29/2013 10:54 AM, Stephen Kelly wrote:
> Stephen Kelly wrote:
>
>>> if(PACKAGE_FIND_VERSION VERSION_LESS 2.3
>>> AND NOT MyPkg_INTERFACES)
>>> set(${PACKAGE_FIND_NAME}_NO_INTERFACES 1)
>>> endif()
>>> include("${CMAKE_CURRENT_LIST_DIR}/upstreamTargets.cmake")
>>
>> Yes, I'm fine with that too, though it will only affect 'new' interfaces,
>> not LINK_INTERFACE_LIBRARIES.
>
> I've implemented it in the tll-includes-defines branch in my clone. I've
> only tested it manually though.
Yes, that looks good. Please add tests covering each case:
- old upstream, new downstream
- new upstream, old downstream
- new upstream, new downstream
Where do you think the _NO_INTERFACES variable documentation
belongs? It is not meant to be set directly by downstreams
but rather in the package configuration files provided by
upstreams before loading their target files.
Thanks,
-Brad
More information about the cmake-developers
mailing list