summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorExpression.h
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2013-02-07 12:04:46 (GMT)
committerStephen Kelly <steveire@gmail.com>2013-02-07 15:21:09 (GMT)
commitd4e5c6787c40e27394c336730f59d878a81d1991 (patch)
treec262428c71c0c4fd31f24f71f2347031358db0d6 /Source/cmGeneratorExpression.h
parent1fb545ad3a8f6d263c9f01300bce978e81b6fe8c (diff)
downloadCMake-d4e5c6787c40e27394c336730f59d878a81d1991.zip
CMake-d4e5c6787c40e27394c336730f59d878a81d1991.tar.gz
CMake-d4e5c6787c40e27394c336730f59d878a81d1991.tar.bz2
Don't keep track of content determined by target property values.
This tracking was added during the development of commit 042ecf04 (Add API to calculate link-interface-dependent bool properties or error., 2013-01-06), but was never used. It was not necessary to use the content because what is really useful in that logic is to determine if a property has been implied to be null by appearing in a LINK_LIBRARIES genex. I think the motivating usecase for developing the feature of keeping track of the targets relevant to a property was that I thought it would make it possible to allow requiring granular compatibility of interface properties only for targets which depended on the interface property. Eg: add_library(foo ...) add_library(bar ...) add_executable(user ...) # Read the INTERFACE_POSITION_INDEPENDENT_CODE from bar, but not # from foo: target_link_libraries(user foo $<$<TARGET_PROPERTY:POSTITION_INDEPENDENT_CODE>:bar>) This obviously doesn't make sense. We require that INTERFACE properties are consistent across all linked targets instead.
Diffstat (limited to 'Source/cmGeneratorExpression.h')
-rw-r--r--Source/cmGeneratorExpression.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/cmGeneratorExpression.h b/Source/cmGeneratorExpression.h
index 4eab2dd..489b052 100644
--- a/Source/cmGeneratorExpression.h
+++ b/Source/cmGeneratorExpression.h
@@ -90,7 +90,7 @@ public:
std::set<cmTarget*> const& GetTargets() const
{ return this->Targets; }
- std::map<cmStdString, cmStdString> const& GetSeenTargetProperties() const
+ std::set<cmStdString> const& GetSeenTargetProperties() const
{ return this->SeenTargetProperties; }
~cmCompiledGeneratorExpression();
@@ -124,7 +124,7 @@ private:
bool NeedsParsing;
mutable std::set<cmTarget*> Targets;
- mutable std::map<cmStdString, cmStdString> SeenTargetProperties;
+ mutable std::set<cmStdString> SeenTargetProperties;
mutable std::string Output;
mutable bool HadContextSensitiveCondition;
};