|
|
@@ -711,12 +711,18 @@ void cmGeneratorTarget::GetExternalObjects(
|
|
|
IMPLEMENT_VISIT(ExternalObjects);
|
|
|
}
|
|
|
|
|
|
-void cmGeneratorTarget::GetExpectedResxHeaders(std::set<std::string>& srcs,
|
|
|
+void cmGeneratorTarget::GetExpectedResxHeaders(std::set<std::string>& headers,
|
|
|
const std::string& config) const
|
|
|
{
|
|
|
- ResxData data;
|
|
|
- IMPLEMENT_VISIT_IMPL(Resx, COMMA cmGeneratorTarget::ResxData)
|
|
|
- srcs = data.ExpectedResxHeaders;
|
|
|
+ HeadersCacheType::const_iterator it = this->ResxHeadersCache.find(config);
|
|
|
+ if (it == this->ResxHeadersCache.end()) {
|
|
|
+ ResxData data;
|
|
|
+ IMPLEMENT_VISIT_IMPL(Resx, COMMA cmGeneratorTarget::ResxData)
|
|
|
+ it = this->ResxHeadersCache
|
|
|
+ .insert(std::make_pair(config, data.ExpectedResxHeaders))
|
|
|
+ .first;
|
|
|
+ }
|
|
|
+ headers = it->second;
|
|
|
}
|
|
|
|
|
|
void cmGeneratorTarget::GetResxSources(std::vector<cmSourceFile const*>& srcs,
|
|
|
@@ -748,9 +754,15 @@ void cmGeneratorTarget::GetCertificates(std::vector<cmSourceFile const*>& data,
|
|
|
void cmGeneratorTarget::GetExpectedXamlHeaders(std::set<std::string>& headers,
|
|
|
const std::string& config) const
|
|
|
{
|
|
|
- XamlData data;
|
|
|
- IMPLEMENT_VISIT_IMPL(Xaml, COMMA cmGeneratorTarget::XamlData)
|
|
|
- headers = data.ExpectedXamlHeaders;
|
|
|
+ HeadersCacheType::const_iterator it = this->XamlHeadersCache.find(config);
|
|
|
+ if (it == this->XamlHeadersCache.end()) {
|
|
|
+ XamlData data;
|
|
|
+ IMPLEMENT_VISIT_IMPL(Xaml, COMMA cmGeneratorTarget::XamlData)
|
|
|
+ it = this->XamlHeadersCache
|
|
|
+ .insert(std::make_pair(config, data.ExpectedXamlHeaders))
|
|
|
+ .first;
|
|
|
+ }
|
|
|
+ headers = it->second;
|
|
|
}
|
|
|
|
|
|
void cmGeneratorTarget::GetExpectedXamlSources(std::set<std::string>& srcs,
|