[Cmake-commits] CMake branch, next, updated. v2.8.11.1-2661-g7bdddaf

Stephen Kelly steveire at gmail.com
Wed Jun 19 03:59:18 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  7bdddaf768f3c32322b7b7600ab7ff65943e27b8 (commit)
       via  6f2275f8ded53ac237bae39292b05afe9240796c (commit)
      from  aa9cd38cca21e92317a75266af26ec60667f21cf (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=7bdddaf768f3c32322b7b7600ab7ff65943e27b8
commit 7bdddaf768f3c32322b7b7600ab7ff65943e27b8
Merge: aa9cd38 6f2275f
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Wed Jun 19 03:59:12 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Jun 19 03:59:12 2013 -0400

    Merge topic 'version-compare-genex' into next
    
    6f2275f Revert "Add generator expressions for compiler versions."


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6f2275f8ded53ac237bae39292b05afe9240796c
commit 6f2275f8ded53ac237bae39292b05afe9240796c
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Wed Jun 19 09:58:33 2013 +0200
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Wed Jun 19 09:58:33 2013 +0200

    Revert "Add generator expressions for compiler versions."
    
    This reverts commit e5df6630d75ca6003897490426b2a6d2e61ed73c.

diff --git a/Source/cmDocumentGeneratorExpressions.h b/Source/cmDocumentGeneratorExpressions.h
index a6c610b..84f4af5 100644
--- a/Source/cmDocumentGeneratorExpressions.h
+++ b/Source/cmDocumentGeneratorExpressions.h
@@ -54,14 +54,6 @@
   "else '0'.\n"                                                         \
   "  $<VERSION_EQUAL:v1,v2>    = '1' if v1 is the same version as v2, " \
   "else '0'.\n"                                                         \
-  "  $<C_COMPILER_VERSION>     = The CMake-id of the C compiler "       \
-  "used.\n"                                                             \
-  "  $<C_COMPILER_VERSION:ver> = '1' if the CMake-id of the C "         \
-  "compiler matches ver, otherwise '0'.\n"                              \
-  "  $<CXX_COMPILER_VERSION>   = The CMake-id of the CXX compiler "     \
-  "used.\n"                                                             \
-  "  $<CXX_COMPILER_VERSION:ver> = '1' if the CMake-id of the CXX "     \
-  "compiler matches ver, otherwise '0'.\n"                              \
   "  $<TARGET_FILE:tgt>        = main file (.exe, .so.1.2, .a)\n"       \
   "  $<TARGET_LINKER_FILE:tgt> = file used to link (.a, .lib, .so)\n"   \
   "  $<TARGET_SONAME_FILE:tgt> = file with soname (.so.3)\n"            \
diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx
index 1e79758..1804691 100644
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@ -399,105 +399,6 @@ static const struct VersionEqualNode : public cmGeneratorExpressionNode
 } versionEqualNode;
 
 //----------------------------------------------------------------------------
-struct CompilerVersionNode : public cmGeneratorExpressionNode
-{
-  CompilerVersionNode() {}
-
-  virtual int NumExpectedParameters() const { return ZeroOrMoreParameters; }
-
-  std::string EvaluateWithLanguage(const std::vector<std::string> &parameters,
-                       cmGeneratorExpressionContext *context,
-                       const GeneratorExpressionContent *content,
-                       cmGeneratorExpressionDAGChecker *,
-                       const std::string &lang) const
-  {
-    const char *compilerVersion = context->Makefile ?
-                              context->Makefile->GetSafeDefinition((
-                        "CMAKE_" + lang + "_COMPILER_VERSION").c_str()) : "";
-    if (parameters.size() == 0)
-      {
-      return compilerVersion ? compilerVersion : "";
-      }
-
-    cmsys::RegularExpression compilerIdValidator;
-    compilerIdValidator.compile("^[0-9\\.]*$");
-    if (!compilerIdValidator.find(parameters.begin()->c_str()))
-      {
-      reportError(context, content->GetOriginalExpression(),
-                  "Expression syntax not recognized.");
-      return std::string();
-      }
-    if (!compilerVersion)
-      {
-      return parameters.front().empty() ? "1" : "0";
-      }
-
-    if (cmSystemTools::VersionCompare(cmSystemTools::OP_EQUAL,
-                                      parameters.begin()->c_str(),
-                                      compilerVersion) == 0)
-      {
-      return "1";
-      }
-    return "0";
-  }
-};
-
-//----------------------------------------------------------------------------
-static const struct CCompilerVersionNode : public CompilerVersionNode
-{
-  CCompilerVersionNode() {}
-
-  std::string Evaluate(const std::vector<std::string> &parameters,
-                       cmGeneratorExpressionContext *context,
-                       const GeneratorExpressionContent *content,
-                       cmGeneratorExpressionDAGChecker *dagChecker) const
-  {
-    if (parameters.size() != 0 && parameters.size() != 1)
-      {
-      reportError(context, content->GetOriginalExpression(),
-          "$<C_COMPILER_VERSION> expression requires one or two parameters");
-      return std::string();
-      }
-    if (!context->HeadTarget)
-      {
-      reportError(context, content->GetOriginalExpression(),
-          "$<C_COMPILER_VERSION> may only be used with targets.  It may not "
-          "be used with add_custom_command.");
-      }
-    return this->EvaluateWithLanguage(parameters, context, content,
-                                      dagChecker, "C");
-  }
-} cCompilerVersionNode;
-
-//----------------------------------------------------------------------------
-static const struct CxxCompilerVersionNode : public CompilerVersionNode
-{
-  CxxCompilerVersionNode() {}
-
-  std::string Evaluate(const std::vector<std::string> &parameters,
-                       cmGeneratorExpressionContext *context,
-                       const GeneratorExpressionContent *content,
-                       cmGeneratorExpressionDAGChecker *dagChecker) const
-  {
-    if (parameters.size() != 0 && parameters.size() != 1)
-      {
-      reportError(context, content->GetOriginalExpression(),
-          "$<CXX_COMPILER_VERSION> expression requires one or two "
-          "parameters");
-      return std::string();
-      }
-    if (!context->HeadTarget)
-      {
-      reportError(context, content->GetOriginalExpression(),
-          "$<CXX_COMPILER_VERSION> may only be used with targets.  It may "
-          "not be used with add_custom_command.");
-      }
-    return this->EvaluateWithLanguage(parameters, context, content,
-                                      dagChecker, "CXX");
-  }
-} cxxCompilerVersionNode;
-
-//----------------------------------------------------------------------------
 static const struct ConfigurationNode : public cmGeneratorExpressionNode
 {
   ConfigurationNode() {}
@@ -1328,10 +1229,6 @@ cmGeneratorExpressionNode* GetNode(const std::string &identifier)
     return &versionLessNode;
   else if (identifier == "VERSION_EQUAL")
     return &versionEqualNode;
-  else if (identifier == "C_COMPILER_VERSION")
-    return &cCompilerVersionNode;
-  else if (identifier == "CXX_COMPILER_VERSION")
-    return &cxxCompilerVersionNode;
   else if (identifier == "CONFIGURATION")
     return &configurationNode;
   else if (identifier == "CONFIG")
diff --git a/Tests/CompileOptions/CMakeLists.txt b/Tests/CompileOptions/CMakeLists.txt
index 4de2883..6d8a96a 100644
--- a/Tests/CompileOptions/CMakeLists.txt
+++ b/Tests/CompileOptions/CMakeLists.txt
@@ -5,27 +5,12 @@ project(CompileOptions)
 add_library(testlib other.cpp)
 
 add_executable(CompileOptions main.cpp)
-
-macro(get_compiler_test_genex string lang)
-  set(${string} "-DTEST_${lang}_COMPILER_VERSION=\\\"$<${lang}_COMPILER_VERSION>\\\"")
-  set(${string} "${${string}};-DTEST_${lang}_COMPILER_VERSION_EQUALITY=$<${lang}_COMPILER_VERSION:${CMAKE_${lang}_COMPILER_VERSION}>")
-endmacro()
-
-get_compiler_test_genex(c_tests C)
-get_compiler_test_genex(cxx_tests CXX)
-
-set_property(TARGET CompileOptions PROPERTY
-  COMPILE_OPTIONS
-    "$<$<C_COMPILER_ID:GNU>:${c_tests}>"
-    "$<$<CXX_COMPILER_ID:GNU>:-DTEST_DEFINE;${cxx_tests}>"
-)
+set_property(TARGET CompileOptions PROPERTY COMPILE_OPTIONS "$<$<CXX_COMPILER_ID:GNU>:-DTEST_DEFINE>")
 target_link_libraries(CompileOptions testlib)
 
 if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
   target_compile_definitions(CompileOptions
     PRIVATE
       "DO_GNU_TESTS"
-      "EXPECTED_C_COMPILER_VERSION=\"${CMAKE_C_COMPILER_VERSION}\""
-      "EXPECTED_CXX_COMPILER_VERSION=\"${CMAKE_CXX_COMPILER_VERSION}\""
   )
 endif()
diff --git a/Tests/CompileOptions/main.cpp b/Tests/CompileOptions/main.cpp
index aa45893..0d39050 100644
--- a/Tests/CompileOptions/main.cpp
+++ b/Tests/CompileOptions/main.cpp
@@ -5,15 +5,7 @@
 #  endif
 #endif
 
-#include <cstring>
-
 int main(int argc, char **argv)
 {
-#ifdef DO_GNU_TESTS
-  return strcmp(EXPECTED_C_COMPILER_VERSION, TEST_C_COMPILER_VERSION)
-      && strcmp(EXPECTED_CXX_COMPILER_VERSION, TEST_CXX_COMPILER_VERSION)
-      && TEST_C_COMPILER_VERSION_EQUALITY
-      && TEST_CXX_COMPILER_VERSION_EQUALITY;
-#endif
   return 0;
 }

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

Summary of changes:
 Source/cmDocumentGeneratorExpressions.h   |    8 --
 Source/cmGeneratorExpressionEvaluator.cxx |  103 -----------------------------
 Tests/CompileOptions/CMakeLists.txt       |   17 +-----
 Tests/CompileOptions/main.cpp             |    8 --
 4 files changed, 1 insertions(+), 135 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list