[Cmake-commits] CMake branch, next, updated. v2.8.12.1-4980-g72fe126

Stephen Kelly steveire at gmail.com
Sat Nov 9 14:32:43 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  72fe12691777484ffc9eb2c9ad75d78e62c0a273 (commit)
       via  77a0fd5135e3f9cdd0a365ab3ce41a9393f41037 (commit)
       via  146493363ebcb7618e5da175f89b69fcc4f9bb16 (commit)
      from  7077ee095168d67c67b5755fde999918fcfc7538 (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=72fe12691777484ffc9eb2c9ad75d78e62c0a273
commit 72fe12691777484ffc9eb2c9ad75d78e62c0a273
Merge: 7077ee0 77a0fd5
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sat Nov 9 14:32:39 2013 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Sat Nov 9 14:32:39 2013 -0500

    Merge topic 'pp-transitive-property-handling' into next
    
    77a0fd5 Genex: Use a preprocessor foreach to follow transitive properties.
    1464933 Genex: Simplify the preprocessor looper for interface properties.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=77a0fd5135e3f9cdd0a365ab3ce41a9393f41037
commit 77a0fd5135e3f9cdd0a365ab3ce41a9393f41037
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 20:31:35 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=146493363ebcb7618e5da175f89b69fcc4f9bb16
commit 146493363ebcb7618e5da175f89b69fcc4f9bb16
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 20:31:35 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