[Cmake-commits] CMake branch, next, updated. v2.8.10.2-2856-gecd15b9
Stephen Kelly
steveire at gmail.com
Thu May 2 13:33:04 EDT 2013
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via ecd15b9a64f1bbfb8bd9e20deeb5ee7c8687112f (commit)
via 5a8104c19c3a64cea3096ec9c25d2e537b53a94e (commit)
from ef9ed366f06fdbc276de64f08df3f4f5a11f8058 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ecd15b9a64f1bbfb8bd9e20deeb5ee7c8687112f
commit ecd15b9a64f1bbfb8bd9e20deeb5ee7c8687112f
Merge: ef9ed36 5a8104c
Author: Stephen Kelly <steveire at gmail.com>
AuthorDate: Thu May 2 13:33:00 2013 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu May 2 13:33:00 2013 -0400
Merge topic 'fix-per-config-tll-include-dirs' into next
5a8104c Cache the link dependent include directories in a config-specific map.
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5a8104c19c3a64cea3096ec9c25d2e537b53a94e
commit 5a8104c19c3a64cea3096ec9c25d2e537b53a94e
Author: Stephen Kelly <steveire at gmail.com>
AuthorDate: Thu May 2 16:52:48 2013 +0200
Commit: Stephen Kelly <steveire at gmail.com>
CommitDate: Thu May 2 16:55:40 2013 +0200
Cache the link dependent include directories in a config-specific map.
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 1ccfa47..d14bfca 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -142,7 +142,7 @@ public:
std::vector<IncludeDirectoriesEntry*> IncludeDirectoriesEntries;
std::vector<cmValueWithOrigin> LinkInterfaceIncludeDirectoriesEntries;
- std::vector<IncludeDirectoriesEntry*>
+ std::map<std::string, std::vector<IncludeDirectoriesEntry*> >
CachedLinkInterfaceIncludeDirectoriesEntries;
std::map<std::string, std::string> CachedLinkInterfaceCompileDefinitions;
@@ -165,6 +165,19 @@ void deleteAndClear(
}
//----------------------------------------------------------------------------
+void deleteAndClear(
+ std::map<std::string,
+ std::vector<cmTargetInternals::IncludeDirectoriesEntry*> > &entries)
+{
+ for (std::map<std::string,
+ std::vector<cmTargetInternals::IncludeDirectoriesEntry*> >::iterator
+ it = entries.begin(), end = entries.end(); it != end; ++it)
+ {
+ deleteAndClear(it->second);
+ }
+}
+
+//----------------------------------------------------------------------------
cmTargetInternals::~cmTargetInternals()
{
deleteAndClear(CachedLinkInterfaceIncludeDirectoriesEntries);
@@ -2976,14 +2989,15 @@ std::vector<std::string> cmTarget::GetIncludeDirectories(const char *config)
cmsys::auto_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(
includeGenex);
- this->Internal->CachedLinkInterfaceIncludeDirectoriesEntries.push_back(
+ this->Internal
+ ->CachedLinkInterfaceIncludeDirectoriesEntries[configString].push_back(
new cmTargetInternals::IncludeDirectoriesEntry(cge,
it->Value));
}
}
processIncludeDirectories(this,
- this->Internal->CachedLinkInterfaceIncludeDirectoriesEntries,
+ this->Internal->CachedLinkInterfaceIncludeDirectoriesEntries[configString],
includes,
uniqueIncludes,
&dagChecker,
@@ -2993,7 +3007,7 @@ std::vector<std::string> cmTarget::GetIncludeDirectories(const char *config)
if (!this->Makefile->IsGeneratingBuildSystem())
{
deleteAndClear(
- this->Internal->CachedLinkInterfaceIncludeDirectoriesEntries);
+ this->Internal->CachedLinkInterfaceIncludeDirectoriesEntries);
}
else
{
-----------------------------------------------------------------------
Summary of changes:
Source/cmTarget.cxx | 22 ++++++++++++++++++----
1 files changed, 18 insertions(+), 4 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list