Brad King wrote:

>> I've pushed a INCLUDES-DESTINATION-partial-eval topic to my clone with
>> some ideas for it. Please let me know what you think.
> 
> Are you proposing this for inclusion in 2.8.12?

Yes.

> IMO it can wait along with the rest.

As INCLUDES DESTINATION is already in master, that would be a behavior 
change, and probably need a policy. Currently if you use 

 install(TARGETS foo EXPORT fooTargets 
   INCLUDES DESTINATION $<INSTALL_PREFIX>/include/$<STREQUAL:foo,bar>
 )

the result in fooTargets.cmake is 

 INTERFACE_INCLUDE_DIRECTORIES
   "${_IMPORT_PREFIX}/include/$<STREQUAL:foo,bar>"

if the genex is evaluated at export time in a follow-up release, the result 
would instead be

 INTERFACE_INCLUDE_DIRECTORIES
   "${_IMPORT_PREFIX}/include/0"
 

So, I think for the case of INCLUDES DESTINATION, we can either decide and 
fix it now, or revert the change adding it for 2.8.12.

> 
> I forgot, which config-related generator expressions on imported
> targets honor MAP_IMPORTED_CONFIG_<CONFIG>?

The $<CONFIG:cfg> expression should always process those, if used on any of 
the target properties used for the interface.

> 
> What is the behavior when a not-allowed expression like
> STREQUAL is used?  Does it produce an error message?

In master the STREQUAL is reproduced verbatim. In my topic it is evaluated 
at export time. 

Thanks,

Steve.


--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers

Reply via email to