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

Reply via email to