[Cmake-commits] CMake branch, next, updated. v2.8.10.1-1007-g5e7567d

Stephen Kelly steveire at gmail.com
Sat Nov 24 08:45:40 EST 2012


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  5e7567dd588dd1005b6469f64bf61e43010949c4 (commit)
       via  c955d936dc6cc9d2427b23514c9e78343f80915c (commit)
       via  bf12a0be8383ea82da8f99dffaa48cc8ec25df90 (commit)
       via  4265ce4af3dfa72439cfa2ee47eeb47e8b47f2bc (commit)
      from  4672f15930d767b611eec2fbed1bce06110f902a (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=5e7567dd588dd1005b6469f64bf61e43010949c4
commit 5e7567dd588dd1005b6469f64bf61e43010949c4
Merge: 4672f15 c955d93
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sat Nov 24 08:45:38 2012 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Sat Nov 24 08:45:38 2012 -0500

    Merge topic 'tll-set-include-and-defines-requirements' into next
    
    c955d93 Split the GeneratorExpression test into parts.
    bf12a0b Add workaround for broken std::remove on some Borland.
    4265ce4 Add some newlines to generated files.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c955d936dc6cc9d2427b23514c9e78343f80915c
commit c955d936dc6cc9d2427b23514c9e78343f80915c
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sat Nov 24 14:40:01 2012 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sat Nov 24 14:44:42 2012 +0100

    Split the GeneratorExpression test into parts.
    
    Some shells can't run the custom command as it is getting too long.

diff --git a/Tests/GeneratorExpression/CMakeLists.txt b/Tests/GeneratorExpression/CMakeLists.txt
index 6ab58d7..66c190a 100644
--- a/Tests/GeneratorExpression/CMakeLists.txt
+++ b/Tests/GeneratorExpression/CMakeLists.txt
@@ -1,7 +1,7 @@
 cmake_minimum_required (VERSION 2.8.8)
 project(GeneratorExpression NONE)
 
-add_custom_target(check ALL
+add_custom_target(check-part1 ALL
   COMMAND ${CMAKE_COMMAND}
     -Dtest_0=$<0:nothing>
     -Dtest_0_with_comma=$<0:-Wl,--no-undefined>
@@ -57,6 +57,13 @@ add_custom_target(check ALL
     -Dtest_colons_3=$<1:Qt5::Core>
     -Dtest_colons_4=$<1:C:\\CMake>
     -Dtest_colons_5=$<1:C:/CMake>
+    -P ${CMAKE_CURRENT_SOURCE_DIR}/check-part1.cmake
+  COMMAND ${CMAKE_COMMAND} -E echo "check done (part 1 of 2)"
+  VERBATIM
+  )
+
+add_custom_target(check-part2 ALL
+  COMMAND ${CMAKE_COMMAND}
     -Dtest_incomplete_1=$<
     -Dtest_incomplete_2=$<something
     -Dtest_incomplete_3=$<something:
@@ -81,7 +88,7 @@ add_custom_target(check ALL
     -Dtest_build_interface=$<BUILD_INTERFACE:build>
     -Dtest_install_interface=$<INSTALL_INTERFACE:install>
     -Dtest_export_namespace=$<EXPORT_NAMESPACE>x
-    -P ${CMAKE_CURRENT_SOURCE_DIR}/check.cmake
-  COMMAND ${CMAKE_COMMAND} -E echo "check done"
+    -P ${CMAKE_CURRENT_SOURCE_DIR}/check-part2.cmake
+  COMMAND ${CMAKE_COMMAND} -E echo "check done (part 2 of 2)"
   VERBATIM
   )
diff --git a/Tests/GeneratorExpression/check-common.cmake b/Tests/GeneratorExpression/check-common.cmake
new file mode 100644
index 0000000..8ffebd7
--- /dev/null
+++ b/Tests/GeneratorExpression/check-common.cmake
@@ -0,0 +1,5 @@
+macro(check var val)
+  if(NOT "${${var}}" STREQUAL "${val}")
+    message(SEND_ERROR "${var} is \"${${var}}\", not \"${val}\"")
+  endif()
+endmacro()
diff --git a/Tests/GeneratorExpression/check-part1.cmake b/Tests/GeneratorExpression/check-part1.cmake
new file mode 100644
index 0000000..7abfa82
--- /dev/null
+++ b/Tests/GeneratorExpression/check-part1.cmake
@@ -0,0 +1,56 @@
+
+include(${CMAKE_CURRENT_LIST_DIR}/check-common.cmake)
+
+message(STATUS "config=[${config}]")
+check(test_0 "")
+check(test_0_with_comma "")
+check(test_1 "content")
+check(test_1_with_comma "-Wl,--no-undefined")
+check(test_and_0 "0")
+check(test_and_0_0 "0")
+check(test_and_0_1 "0")
+check(test_and_1 "1")
+check(test_and_1_0 "0")
+check(test_and_1_1 "1")
+check(test_and_0_invalidcontent "0")
+check(test_config_0 "0")
+check(test_config_1 "1")
+foreach(c debug release relwithdebinfo minsizerel)
+  if(NOT "${test_config_${c}}" MATCHES "^(0+|1+)$")
+    message(SEND_ERROR "test_config_${c} is \"${test_config_${c}}\", not all 0 or all 1")
+  endif()
+endforeach()
+check(test_not_0 "1")
+check(test_not_1 "0")
+check(test_or_0 "0")
+check(test_or_0_0 "0")
+check(test_or_0_1 "1")
+check(test_or_1 "1")
+check(test_or_1_0 "1")
+check(test_or_1_1 "1")
+check(test_or_1_invalidcontent "1")
+check(test_bool_notfound "0")
+check(test_bool_foo_notfound "0")
+check(test_bool_true "1")
+check(test_bool_false "0")
+check(test_bool_on "1")
+check(test_bool_off "0")
+check(test_bool_no "0")
+check(test_bool_n "0")
+check(test_bool_empty "0")
+check(test_strequal_yes_yes "1")
+check(test_strequal_yes_yes_cs "0")
+check(test_strequal_yes_no "0")
+check(test_strequal_no_yes "0")
+check(test_strequal_angle_r "1")
+check(test_strequal_comma "1")
+check(test_strequal_angle_r_comma "0")
+check(test_strequal_both_empty "1")
+check(test_strequal_one_empty "0")
+check(test_angle_r ">")
+check(test_comma ",")
+check(test_colons_1 ":")
+check(test_colons_2 "::")
+check(test_colons_3 "Qt5::Core")
+check(test_colons_4 "C:\\\\CMake")
+check(test_colons_5 "C:/CMake")
diff --git a/Tests/GeneratorExpression/check-part2.cmake b/Tests/GeneratorExpression/check-part2.cmake
new file mode 100644
index 0000000..4201345
--- /dev/null
+++ b/Tests/GeneratorExpression/check-part2.cmake
@@ -0,0 +1,27 @@
+
+include(${CMAKE_CURRENT_LIST_DIR}/check-common.cmake)
+
+check(test_incomplete_1 "$<")
+check(test_incomplete_2 "$<something")
+check(test_incomplete_3 "$<something:")
+check(test_incomplete_4 "$<something:,")
+check(test_incomplete_5 "$something:,>")
+check(test_incomplete_6 "<something:,>")
+check(test_incomplete_7 "$<something::")
+check(test_incomplete_8 "$<something:,")
+check(test_incomplete_9 "$<something:,,")
+check(test_incomplete_10 "$<something:,:")
+check(test_incomplete_11 "$<something,,")
+check(test_incomplete_12 "$<,,")
+check(test_incomplete_13 "$<somespecialthing")
+check(test_incomplete_14 "$<>")
+check(test_incomplete_15 "$<some$<thing")
+check(test_incomplete_16 "$<BOOL:something")
+check(test_incomplete_17 "some$thing")
+check(test_incomplete_18 "$<1:some,thing")
+check(test_incomplete_19 "$<1:some,thing>")
+check(test_incomplete_20 "$<CONFIGURATION>")
+check(test_incomplete_21 "$<BOOL:something>")
+check(test_build_interface "build")
+check(test_install_interface "")
+check(test_export_namespace "x")
diff --git a/Tests/GeneratorExpression/check.cmake b/Tests/GeneratorExpression/check.cmake
deleted file mode 100644
index 019dd0b..0000000
--- a/Tests/GeneratorExpression/check.cmake
+++ /dev/null
@@ -1,83 +0,0 @@
-macro(check var val)
-  if(NOT "${${var}}" STREQUAL "${val}")
-    message(SEND_ERROR "${var} is \"${${var}}\", not \"${val}\"")
-  endif()
-endmacro()
-
-message(STATUS "config=[${config}]")
-check(test_0 "")
-check(test_0_with_comma "")
-check(test_1 "content")
-check(test_1_with_comma "-Wl,--no-undefined")
-check(test_and_0 "0")
-check(test_and_0_0 "0")
-check(test_and_0_1 "0")
-check(test_and_1 "1")
-check(test_and_1_0 "0")
-check(test_and_1_1 "1")
-check(test_and_0_invalidcontent "0")
-check(test_config_0 "0")
-check(test_config_1 "1")
-foreach(c debug release relwithdebinfo minsizerel)
-  if(NOT "${test_config_${c}}" MATCHES "^(0+|1+)$")
-    message(SEND_ERROR "test_config_${c} is \"${test_config_${c}}\", not all 0 or all 1")
-  endif()
-endforeach()
-check(test_not_0 "1")
-check(test_not_1 "0")
-check(test_or_0 "0")
-check(test_or_0_0 "0")
-check(test_or_0_1 "1")
-check(test_or_1 "1")
-check(test_or_1_0 "1")
-check(test_or_1_1 "1")
-check(test_or_1_invalidcontent "1")
-check(test_bool_notfound "0")
-check(test_bool_foo_notfound "0")
-check(test_bool_true "1")
-check(test_bool_false "0")
-check(test_bool_on "1")
-check(test_bool_off "0")
-check(test_bool_no "0")
-check(test_bool_n "0")
-check(test_bool_empty "0")
-check(test_strequal_yes_yes "1")
-check(test_strequal_yes_yes_cs "0")
-check(test_strequal_yes_no "0")
-check(test_strequal_no_yes "0")
-check(test_strequal_angle_r "1")
-check(test_strequal_comma "1")
-check(test_strequal_angle_r_comma "0")
-check(test_strequal_both_empty "1")
-check(test_strequal_one_empty "0")
-check(test_angle_r ">")
-check(test_comma ",")
-check(test_colons_1 ":")
-check(test_colons_2 "::")
-check(test_colons_3 "Qt5::Core")
-check(test_colons_4 "C:\\\\CMake")
-check(test_colons_5 "C:/CMake")
-check(test_incomplete_1 "$<")
-check(test_incomplete_2 "$<something")
-check(test_incomplete_3 "$<something:")
-check(test_incomplete_4 "$<something:,")
-check(test_incomplete_5 "$something:,>")
-check(test_incomplete_6 "<something:,>")
-check(test_incomplete_7 "$<something::")
-check(test_incomplete_8 "$<something:,")
-check(test_incomplete_9 "$<something:,,")
-check(test_incomplete_10 "$<something:,:")
-check(test_incomplete_11 "$<something,,")
-check(test_incomplete_12 "$<,,")
-check(test_incomplete_13 "$<somespecialthing")
-check(test_incomplete_14 "$<>")
-check(test_incomplete_15 "$<some$<thing")
-check(test_incomplete_16 "$<BOOL:something")
-check(test_incomplete_17 "some$thing")
-check(test_incomplete_18 "$<1:some,thing")
-check(test_incomplete_19 "$<1:some,thing>")
-check(test_incomplete_20 "$<CONFIGURATION>")
-check(test_incomplete_21 "$<BOOL:something>")
-check(test_build_interface "build")
-check(test_install_interface "")
-check(test_export_namespace "x")

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bf12a0be8383ea82da8f99dffaa48cc8ec25df90
commit bf12a0be8383ea82da8f99dffaa48cc8ec25df90
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sat Nov 24 12:04:01 2012 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sat Nov 24 14:44:39 2012 +0100

    Add workaround for broken std::remove on some Borland.
    
    I don't have enough information about which versions of Borland
    are affected, but if this workaround works, then it could be
    put elsewhere such as cmsys.
    
    http://qc.embarcadero.com/wc/qcmain.aspx?d=4957
    http://www.gamedev.net/topic/366171-stdremove/
    http://www.delphigroups.info/3/5/7456.html
    http://bytes.com/topic/c/answers/59791-std-remove-syntax
    http://forums.devx.com/showthread.php?94489-About-std-remove

diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 717ebbb..55c47c8 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -2547,6 +2547,27 @@ void cmTarget::PrependTLLIncludeDirectories(const std::string &includes)
                                                   );
 }
 
+// A Borland machine on the dashboard has a faulty std::remove.
+template <typename ForwardIterator, typename T>
+ForwardIterator cmStdRemove(ForwardIterator first,
+                            ForwardIterator last,
+                            const T& value)
+{
+#ifdef __BORLANDC__
+  ForwardIterator result = first;
+  for ( ; first != last; ++first)
+    {
+    if (!(*first == value))
+      {
+      *result++ = *first;
+      }
+    }
+  return result;
+#else
+  return std::remove<ForwardIterator, T>(first, last, value);
+#endif
+}
+
 //----------------------------------------------------------------------------
 std::vector<std::string> cmTarget::GetIncludeDirectories(const char *config)
 {
@@ -2599,7 +2620,7 @@ std::vector<std::string> cmTarget::GetIncludeDirectories(const char *config)
               }
               // Fall through to OLD behavior
             case cmPolicies::OLD:
-              includes.erase(std::remove(includes.begin(),
+              includes.erase(cmStdRemove(includes.begin(),
                                          includes.end(), *li),
                              includes.end());
               fromTll.erase(*li);

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4265ce4af3dfa72439cfa2ee47eeb47e8b47f2bc
commit 4265ce4af3dfa72439cfa2ee47eeb47e8b47f2bc
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sat Nov 24 11:26:12 2012 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sat Nov 24 11:26:12 2012 +0100

    Add some newlines to generated files.
    
    This might fix the error at
    
    http://open.cdash.org/testDetails.php?test=167546009&build=2679466

diff --git a/Tests/IncludeDirectories/TargetIncludeDirectories/CMakeLists.txt b/Tests/IncludeDirectories/TargetIncludeDirectories/CMakeLists.txt
index 4e79d1f..2a0d1a8 100644
--- a/Tests/IncludeDirectories/TargetIncludeDirectories/CMakeLists.txt
+++ b/Tests/IncludeDirectories/TargetIncludeDirectories/CMakeLists.txt
@@ -51,13 +51,13 @@ create_header(fiy)
 create_header(foh)
 create_header(fum)
 
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/lib1.cpp" "#include \"fee.h\"")
+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/lib1.cpp" "#include \"fee.h\"\n")
 add_library(lib1 "${CMAKE_CURRENT_BINARY_DIR}/lib1.cpp")
 set_property(TARGET lib1 APPEND PROPERTY INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/fee")
 set_property(TARGET lib1 APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/fiy")
 set_property(TARGET lib1 APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<$<STREQUAL:$<TARGET_PROPERTY:TYPE>,EXECUTABLE>:${CMAKE_CURRENT_BINARY_DIR}/foh>")
 
-file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/lib2.cpp" "#include \"fiy.h\"")
+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/lib2.cpp" "#include \"fiy.h\"\n")
 add_library(lib2 "${CMAKE_CURRENT_BINARY_DIR}/lib2.cpp")
 set_property(TARGET lib2 APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/fum;$<TARGET_PROPERTY:lib1,INTERFACE_INCLUDE_DIRECTORIES>")
 set_property(TARGET lib2 APPEND PROPERTY INCLUDE_DIRECTORIES "$<TARGET_PROPERTY:lib1,INTERFACE_INCLUDE_DIRECTORIES>")

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

Summary of changes:
 Source/cmTarget.cxx                                |   23 +++++-
 Tests/GeneratorExpression/CMakeLists.txt           |   13 +++-
 Tests/GeneratorExpression/check-common.cmake       |    5 +
 Tests/GeneratorExpression/check-part1.cmake        |   56 +++++++++++++
 Tests/GeneratorExpression/check-part2.cmake        |   27 +++++++
 Tests/GeneratorExpression/check.cmake              |   83 --------------------
 .../TargetIncludeDirectories/CMakeLists.txt        |    4 +-
 7 files changed, 122 insertions(+), 89 deletions(-)
 create mode 100644 Tests/GeneratorExpression/check-common.cmake
 create mode 100644 Tests/GeneratorExpression/check-part1.cmake
 create mode 100644 Tests/GeneratorExpression/check-part2.cmake
 delete mode 100644 Tests/GeneratorExpression/check.cmake


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list