[Cmake-commits] CMake branch, next, updated. v2.8.12.1-4971-gcce5e16

Stephen Kelly steveire at gmail.com
Sat Nov 9 13:54:04 EST 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  cce5e16d9dce910323c96e028e18cde21d41a2cd (commit)
       via  26f1a916260203380d2a7305a31e05a9ed63204f (commit)
       via  6ceb0973a2e4b40f99c317ce1f2815a1af8d9d4e (commit)
      from  e93cdd6fae800ef1e7c037fcefda560648543ddd (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=cce5e16d9dce910323c96e028e18cde21d41a2cd
commit cce5e16d9dce910323c96e028e18cde21d41a2cd
Merge: e93cdd6 26f1a91
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sat Nov 9 13:54:00 2013 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Sat Nov 9 13:54:00 2013 -0500

    Merge topic 'pp-transitive-property-handling' into next
    
    26f1a91 Genex: Use a preprocessor foreach to follow transitive properties.
    6ceb097 Genex: Simplify the preprocessor looper for interface properties.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=26f1a916260203380d2a7305a31e05a9ed63204f
commit 26f1a916260203380d2a7305a31e05a9ed63204f
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Fri Oct 25 15:55:40 2013 +0200
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sat Nov 9 19:34:49 2013 +0100

    Genex: Use a preprocessor foreach to follow transitive properties.

diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx
index 2d26053..2ae5a22 100644
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@ -893,26 +893,21 @@ static const struct TargetPropertyNode : public cmGeneratorExpressionNode
 
     std::string interfacePropertyName;
 
-    if (propertyName == "INTERFACE_INCLUDE_DIRECTORIES"
-        || propertyName == "INCLUDE_DIRECTORIES")
-      {
-      interfacePropertyName = "INTERFACE_INCLUDE_DIRECTORIES";
-      }
-    else if (propertyName == "INTERFACE_SYSTEM_INCLUDE_DIRECTORIES")
-      {
-      interfacePropertyName = "INTERFACE_SYSTEM_INCLUDE_DIRECTORIES";
-      }
-    else if (propertyName == "INTERFACE_COMPILE_DEFINITIONS"
-        || propertyName == "COMPILE_DEFINITIONS"
-        || strncmp(propertyName.c_str(), "COMPILE_DEFINITIONS_", 20) == 0)
+#define POPULATE_INTERFACE_PROPERTY_NAME(prop) \
+    if (propertyName == #prop || propertyName == "INTERFACE_" #prop) \
+      { \
+      interfacePropertyName = "INTERFACE_" #prop; \
+      } \
+    else
+
+    CM_FOR_EACH_TRANSITIVE_PROPERTY_NAME(POPULATE_INTERFACE_PROPERTY_NAME)
+      // Note that the above macro terminates with an else
+    /* else */ if (strncmp(propertyName.c_str(),
+                           "COMPILE_DEFINITIONS_", 20) == 0)
       {
       interfacePropertyName = "INTERFACE_COMPILE_DEFINITIONS";
       }
-    else if (propertyName == "INTERFACE_COMPILE_OPTIONS"
-        || propertyName == "COMPILE_OPTIONS")
-      {
-      interfacePropertyName = "INTERFACE_COMPILE_OPTIONS";
-      }
+#undef POPULATE_INTERFACE_PROPERTY_NAME
 
     cmTarget const* headTarget = context->HeadTarget
                                ? context->HeadTarget : target;

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6ceb0973a2e4b40f99c317ce1f2815a1af8d9d4e
commit 6ceb0973a2e4b40f99c317ce1f2815a1af8d9d4e
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Tue Oct 29 09:22:32 2013 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sat Nov 9 19:34:48 2013 +0100

    Genex: Simplify the preprocessor looper for interface properties.
    
    By removing the INTERFACE_ prefix, we can use this in more contexts.

diff --git a/Source/cmExportTryCompileFileGenerator.cxx b/Source/cmExportTryCompileFileGenerator.cxx
index b70fed6..d9bc04c 100644
--- a/Source/cmExportTryCompileFileGenerator.cxx
+++ b/Source/cmExportTryCompileFileGenerator.cxx
@@ -32,7 +32,7 @@ bool cmExportTryCompileFileGenerator::GenerateMainFile(std::ostream& os)
       ImportPropertyMap properties;
 
 #define FIND_TARGETS(PROPERTY) \
-      this->FindTargets(#PROPERTY, te, emittedDeps);
+      this->FindTargets("INTERFACE_" #PROPERTY, te, emittedDeps);
 
       CM_FOR_EACH_TRANSITIVE_PROPERTY_NAME(FIND_TARGETS)
 
diff --git a/Source/cmGeneratorExpressionDAGChecker.h b/Source/cmGeneratorExpressionDAGChecker.h
index 0b7ef02..c8594e7 100644
--- a/Source/cmGeneratorExpressionDAGChecker.h
+++ b/Source/cmGeneratorExpressionDAGChecker.h
@@ -23,10 +23,10 @@
   F(EvaluatingCompileOptions)
 
 #define CM_FOR_EACH_TRANSITIVE_PROPERTY_NAME(F) \
-  F(INTERFACE_INCLUDE_DIRECTORIES) \
-  F(INTERFACE_SYSTEM_INCLUDE_DIRECTORIES) \
-  F(INTERFACE_COMPILE_DEFINITIONS) \
-  F(INTERFACE_COMPILE_OPTIONS)
+  F(INCLUDE_DIRECTORIES) \
+  F(SYSTEM_INCLUDE_DIRECTORIES) \
+  F(COMPILE_DEFINITIONS) \
+  F(COMPILE_OPTIONS)
 
 //----------------------------------------------------------------------------
 struct cmGeneratorExpressionDAGChecker
diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx
index 107ef73..2d26053 100644
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@ -652,7 +652,7 @@ static const struct JoinNode : public cmGeneratorExpressionNode
 } joinNode;
 
 #define TRANSITIVE_PROPERTY_NAME(PROPERTY) \
-  , #PROPERTY
+  , "INTERFACE_" #PROPERTY
 
 //----------------------------------------------------------------------------
 static const char* targetPropertyTransitiveWhitelist[] = {

-----------------------------------------------------------------------

Summary of changes:
 Source/cmExportTryCompileFileGenerator.cxx |    2 +-
 Source/cmGeneratorExpressionDAGChecker.h   |    8 +++---
 Source/cmGeneratorExpressionEvaluator.cxx  |   31 +++++++++++----------------
 3 files changed, 18 insertions(+), 23 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list