[Cmake-commits] CMake branch, next, updated. v2.8.11.1-2766-g2784a41

Stephen Kelly steveire at gmail.com
Wed Jun 26 20:09:35 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  2784a4119b147f70cbb7c4c0c42763ba99fed423 (commit)
       via  f87758f81ac6719895f29009fd8db513e4858218 (commit)
      from  c3ebed08e45ea4f8ea9c755740050a83f5764361 (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=2784a4119b147f70cbb7c4c0c42763ba99fed423
commit 2784a4119b147f70cbb7c4c0c42763ba99fed423
Merge: c3ebed0 f87758f
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Wed Jun 26 20:09:31 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Jun 26 20:09:31 2013 -0400

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


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f87758f81ac6719895f29009fd8db513e4858218
commit f87758f81ac6719895f29009fd8db513e4858218
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Thu Jun 27 02:09:09 2013 +0200
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Thu Jun 27 02:09:09 2013 +0200

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

diff --git a/Source/cmDocumentGeneratorExpressions.h b/Source/cmDocumentGeneratorExpressions.h
index 4caaabf..7358a36 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 72927db..037ef31 100644
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@ -396,101 +396,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";
-      }
-
-    return cmSystemTools::VersionCompare(cmSystemTools::OP_EQUAL,
-                                      parameters.begin()->c_str(),
-                                      compilerVersion) ? "1" : "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() {}
@@ -1342,10 +1247,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 046f5a1..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) == 0
-      && strcmp(EXPECTED_CXX_COMPILER_VERSION, TEST_CXX_COMPILER_VERSION) == 0
-      && TEST_C_COMPILER_VERSION_EQUALITY == 1
-      && TEST_CXX_COMPILER_VERSION_EQUALITY == 1) ? 0 : 1;
-#endif
   return 0;
 }

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

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


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list