[cmake-developers] Setting includes, defines and other usage requirements with one command

Stephen Kelly steveire at gmail.com
Sat Jan 26 07:01:54 EST 2013


Stephen Kelly wrote:

> INSTALL(EXPORT fooTargets NAMESPACE Foo:: ...)
> INSTALL(EXPORT fooTargets EXPORT_INCLUDE_INTERFACE NAMESPACE FooNew:: ...)
> 
> or some other naming change, and include() both in the config file.
> 
> (2) is easy for us and for upstream, but source incompatible for
> downstream. (3) is more awkward for all upstreams, but source compatible
> for downstream.

Or, of course, (3) could be switched around and NO_EXPORT_INCLUDE_INTERFACE 
would not populate the INTERFACE_INCLUDE_DIRECTORIES. That would be easier 
for upstreams, but also leave them potentially accidentally breaking 
downstreams by not using it when they should.

Thanks,

Steve.





More information about the cmake-developers mailing list