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 <steve...@gmail.com> AuthorDate: Thu May 2 13:33:00 2013 -0400 Commit: CMake Topic Stage <kwro...@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 <steve...@gmail.com> AuthorDate: Thu May 2 16:52:48 2013 +0200 Commit: Stephen Kelly <steve...@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 _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits