[cmake-developers] exports and MAP_IMPORTED_CONFIG_<CONFIG>
Brad King
brad.king at kitware.com
Thu Dec 13 11:16:06 EST 2012
On 12/13/2012 11:02 AM, Stephen Kelly wrote:
> Brad King wrote:
>> The mapping comes from the MAP_IMPORTED_CONFIG_ on the target from which
>> the property value containing the current generator expression was read.
>
> That's what I thought, but that property is not currently exported, right?
It is set by the consuming project directly on the imported targets.
In cmTarget::ComputeImportInfo we select for each consuming project
configuration a configuration from the exporting project, either
through the explicit MAP_ property or by heuristics. Either way
the selected mapping must be used as the configuration whenever we
evaluate an expression that came from the target.
> include(FooTargets.cmake)
> set_property(TARGET Foo::foo
> PROPERTY MAP_IMPORTED_CONFIG_COVERAGE Release
> )
Yes, this one.
> I'm not certain what you mean by the 'entire' expression? If you mean the
> whole string that gets passed to cmGeneratorExpression::Parse, the config is
> already 'bound' for the entire evaluation of the expression (in
> cmCompiledGeneratorExpression::Evaluate). So, I'm not certain what you mean
> here.
I was trying to suggest a possible way to implement the configuration
mapping during evaluation. I think it will be easier to explain in
more detail when we get to that point of the implementation.
-Brad
More information about the cmake-developers
mailing list