[Cmake-commits] CMake branch, next, updated. v3.0.0-4097-g0ee0028

Rolf Eike Beer eike at sf-mail.de
Thu Jul 3 12:14:05 EDT 2014


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  0ee0028503b8d94804fd4f22ee443621e9137d52 (commit)
       via  92af3664c922b4b3127700c426a01ab5fec097b8 (commit)
      from  436841e506cc7590c7558dcd0d38acb1532aaac3 (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=0ee0028503b8d94804fd4f22ee443621e9137d52
commit 0ee0028503b8d94804fd4f22ee443621e9137d52
Merge: 436841e 92af366
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Thu Jul 3 12:14:03 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Jul 3 12:14:03 2014 -0400

    Merge topic 'ExternalProject_test' into next
    
    92af3664 Tests: split the ExternalProject test


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=92af3664c922b4b3127700c426a01ab5fec097b8
commit 92af3664c922b4b3127700c426a01ab5fec097b8
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Thu Jul 3 18:11:49 2014 +0200
Commit:     Rolf Eike Beer <eike at sf-mail.de>
CommitDate: Thu Jul 3 18:12:08 2014 +0200

    Tests: split the ExternalProject test
    
    Move the subtests that test with local projects into their own test. The reason
    is that on slower or crowded machines the test may reach the limit of 25
    minutes and therefore fail while it would pass if it was given enough time.
    The split is roughly 3:1 with regard to the execution time, with the new
    ExternalProjectLocal test being the faster one.

diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index cb455e0..dc4f894 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1249,6 +1249,21 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
   set_tests_properties(ExternalProject PROPERTIES
     TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
 
+  add_test(ExternalProjectLocal ${CMAKE_CTEST_COMMAND}
+    --build-and-test
+    "${CMake_SOURCE_DIR}/Tests/ExternalProjectLocal"
+    "${CMake_BINARY_DIR}/Tests/ExternalProjectLocal"
+    ${build_generator_args}
+    --build-project ExternalProjectLocalTest
+    --build-exe-dir "${CMake_BINARY_DIR}/Tests/ExternalProjectLocal"
+    --force-new-ctest-process
+    --build-options ${build_options}
+    --test-command ${CMAKE_CTEST_COMMAND} -V
+    )
+  list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/ExternalProjectLocal")
+  set_tests_properties(ExternalProjectLocal PROPERTIES
+    TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
+
   add_test(ExternalProjectUpdateSetup ${CMAKE_CTEST_COMMAND}
     --build-and-test
     "${CMake_SOURCE_DIR}/Tests/ExternalProjectUpdate"
diff --git a/Tests/ExternalProject/CMakeLists.txt b/Tests/ExternalProject/CMakeLists.txt
index 0ed5561..2f74121 100644
--- a/Tests/ExternalProject/CMakeLists.txt
+++ b/Tests/ExternalProject/CMakeLists.txt
@@ -3,6 +3,8 @@ project(ExternalProjectTest NONE)
 
 include(ExternalProject)
 
+# Test ExternalProject, especially with checkouts from VCS
+
 find_package(CVS)
 find_package(Subversion)
 find_package(Git)
@@ -23,33 +25,6 @@ set(binary_base "${base}/Build")
 set_property(DIRECTORY PROPERTY EP_BASE ${base})
 set_property(DIRECTORY PROPERTY EP_STEP_TARGETS configure build test)
 
-if(NOT DEFINED can_build_tutorial_step5)
-  set(can_build_tutorial_step5 1)
-
-  # Tutorial Step5 cannot build correctly using Visual Studio 6
-  # on Windows 98 if the path of its build tree exceeds 72
-  # characters in length... So don't attempt to build it
-  # in a long path on Win98:
-  #
-  if(CMAKE_SYSTEM STREQUAL "Windows-4.10")
-    string(LENGTH "${binary_base}/TutorialStep5-Local" n)
-    if(n GREATER 72)
-      set(can_build_tutorial_step5 0)
-    endif()
-  endif()
-
-  # The ExternalProject builds of Tutorial Step5 cannot be built
-  # correctly 2nd and later times in an in-source build...
-  # (because the CMakeCache.txt from the real in-source build of
-  # the Tests/Tutorial/Step5 directory gets copied when we do
-  # the "source directory copy" step... but it still refers to
-  # its original path which yields a configure error.) So:
-  #
-  if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
-    set(can_build_tutorial_step5 0)
-  endif()
-endif()
-
 add_custom_target(NonExternalProjectTarget
   COMMAND ${CMAKE_COMMAND} -E echo NonExternalProjectTarget)
 
@@ -116,142 +91,6 @@ ExternalProject_Add(${proj}
 set_property(TARGET ${proj} PROPERTY FOLDER "")
 
 
-# Local DIR:
-#
-if(can_build_tutorial_step5)
-  set(proj TutorialStep5-Local)
-  ExternalProject_Add(${proj}
-    URL "${CMAKE_CURRENT_SOURCE_DIR}/../Tutorial/Step5"
-    CMAKE_CACHE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
-    CMAKE_ARGS -G ${CMAKE_GENERATOR} <SOURCE_DIR>
-    TEST_BEFORE_INSTALL 1
-    LOG_INSTALL 1
-  )
-  set_property(TARGET ${proj} PROPERTY FOLDER "Local")
-  ExternalProject_Get_Property(${proj} install_dir)
-  set(TutorialStep5_install_dir ${install_dir})
-
-  set(proj TutorialStep5-Local-TestAfterInstall)
-  ExternalProject_Add(${proj}
-    URL "${CMAKE_CURRENT_SOURCE_DIR}/../Tutorial/Step5"
-    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -G ${CMAKE_GENERATOR} <SOURCE_DIR>
-    TEST_AFTER_INSTALL 1
-    LOG_TEST 1
-  )
-  set_property(TARGET ${proj} PROPERTY FOLDER "Local")
-endif()
-
-
-# Local TAR:
-#
-set(proj TutorialStep1-LocalTAR)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.tar"
-  URL_MD5 a87c5b47c0201c09ddfe1d5738fdb1e3
-  LIST_SEPARATOR ::
-  PATCH_COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/Step1Patch.cmake
-  CMAKE_GENERATOR "${CMAKE_GENERATOR}"
-  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
-             -DTEST_LIST:STRING=A::B::C
-  INSTALL_COMMAND ""
-  LOG_CONFIGURE 1
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/TAR")
-
-set(proj TutorialStep1-LocalNoDirTAR)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.tar"
-  URL_MD5 d09e3d370c5c908fa035c30939ee438e
-  LIST_SEPARATOR @@
-  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -G ${CMAKE_GENERATOR} <SOURCE_DIR>
-             -DTEST_LIST:STRING=1@@2@@3
-  INSTALL_COMMAND ""
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/TAR")
-ExternalProject_Add_Step(${proj} mypatch
-  COMMAND ${CMAKE_COMMAND} -E echo "This is a custom external project step."
-  COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/Step1Patch.cmake
-  WORKING_DIRECTORY <SOURCE_DIR>
-  DEPENDEES download
-  DEPENDERS configure
-  )
-
-
-# Local TGZ:
-#
-set(proj TutorialStep1-LocalTGZ)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.tgz"
-  URL_MD5 38c648e817339c356f6be00eeed79bd0
-  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -G ${CMAKE_GENERATOR} <SOURCE_DIR>
-  INSTALL_COMMAND ""
-  LOG_BUILD 1
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/TGZ")
-
-set(proj TutorialStep1-LocalNoDirTGZ)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.tgz"
-  URL_HASH SHA256=496229e2a5ed620a37c385ad9406004a18026beab8b55dd2c4565d4b7f1d5383
-  CMAKE_GENERATOR "${CMAKE_GENERATOR}"
-  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
-  INSTALL_COMMAND ""
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/TGZ")
-
-
-# Local BZ2:
-#
-# (The bz2 tests are here just to verify that the bz2 decompression is executed
-#  during a test suite run... The configure and build commands are set to
-#  nothing to make the test quicker. To make this more complete, I should add
-#  a diff between this and the TGZ source tree since that one does build...)
-#
-set(proj TutorialStep1-LocalBZ2)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.tar.bz2"
-  CONFIGURE_COMMAND ""
-  BUILD_COMMAND ""
-  INSTALL_COMMAND ""
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/BZ2")
-
-set(proj TutorialStep1-LocalNoDirBZ2)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.tar.bz2"
-  CONFIGURE_COMMAND ""
-  BUILD_COMMAND ""
-  INSTALL_COMMAND ""
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/BZ2")
-
-
-# Local ZIP:
-#
-# (The zip tests are here just to verify that the zip decompression is executed
-#  during a test suite run... The configure and build commands are set to
-#  nothing to make the test quicker. To make this more complete, I should add
-#  a diff between this and the TGZ source tree since that one does build...)
-#
-set(proj TutorialStep1-LocalZIP)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.zip"
-  CONFIGURE_COMMAND ""
-  BUILD_COMMAND ""
-  INSTALL_COMMAND ""
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/ZIP")
-
-set(proj TutorialStep1-LocalNoDirZIP)
-ExternalProject_Add(${proj}
-  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.zip"
-  CONFIGURE_COMMAND ""
-  BUILD_COMMAND ""
-  INSTALL_COMMAND ""
-)
-set_property(TARGET ${proj} PROPERTY FOLDER "Local/ZIP")
-
-
 # CVS-based tests:
 #
 set(do_cvs_tests 0)
@@ -337,10 +176,6 @@ if(do_cvs_tests)
     INSTALL_COMMAND ""
     DEPENDS "SetupLocalCVSRepository"
     DEPENDS "EmptyNoOpProject"
-    DEPENDS "TutorialStep1-LocalTAR"
-    DEPENDS "TutorialStep1-LocalNoDirTAR"
-    DEPENDS "TutorialStep1-LocalTGZ"
-    DEPENDS "TutorialStep1-LocalNoDirTGZ"
     DEPENDS "TutorialStep1-CVS-20090626"
     DEPENDS "TutorialStep1-CVS-testtag1"
   )
@@ -612,29 +447,6 @@ enable_testing()
 #
 # BuildTree tests:
 #
-if(can_build_tutorial_step5)
-  add_test(TutorialStep5-Local-BuildTreeTest
-    "${binary_base}/TutorialStep5-Local/Tutorial" 42)
-  set_property(TEST TutorialStep5-Local-BuildTreeTest
-    APPEND PROPERTY LABELS Step5 BuildTree)
-endif()
-
-add_test(TutorialStep1-LocalTAR-BuildTreeTest
-  "${binary_base}/TutorialStep1-LocalTAR/EP-Tutorial" 36)
-set_property(TEST TutorialStep1-LocalTAR-BuildTreeTest
-  APPEND PROPERTY LABELS TAR)
-
-add_test(TutorialStep1-LocalNoDirTAR-BuildTreeTest
-  "${binary_base}/TutorialStep1-LocalNoDirTAR/EP-Tutorial" 25)
-
-add_test(TutorialStep1-LocalTGZ-BuildTreeTest
-  "${binary_base}/TutorialStep1-LocalTGZ/Tutorial" 16)
-set_property(TEST TutorialStep1-LocalTGZ-BuildTreeTest
-  APPEND PROPERTY LABELS TGZ)
-
-add_test(TutorialStep1-LocalNoDirTGZ-BuildTreeTest
-  "${binary_base}/TutorialStep1-LocalNoDirTGZ/Tutorial" 9)
-
 if(do_cvs_tests)
   add_test(TutorialStep1-CVS-20090626-BuildTreeTest
     "${binary_base}/TutorialStep1-CVS-20090626/Tutorial" 4)
@@ -669,17 +481,6 @@ if(do_git_tests)
 endif()
 
 
-# InstallTree tests:
-#
-if(can_build_tutorial_step5)
-  add_test(TutorialStep5-InstallTreeTest
-    "${TutorialStep5_install_dir}/bin/Tutorial" 49)
-  set_property(TEST TutorialStep5-InstallTreeTest
-    APPEND PROPERTY LABELS Step5 InstallTree)
-endif()
-
-
-message(STATUS "can_build_tutorial_step5='${can_build_tutorial_step5}'")
 message(STATUS "do_cvs_tests='${do_cvs_tests}'")
 message(STATUS "do_svn_tests='${do_svn_tests}'")
 message(STATUS "do_git_tests='${do_git_tests}' GIT_EXECUTABLE='${GIT_EXECUTABLE}'")
diff --git a/Tests/ExternalProjectLocal/CMakeLists.txt b/Tests/ExternalProjectLocal/CMakeLists.txt
new file mode 100644
index 0000000..f942197
--- /dev/null
+++ b/Tests/ExternalProjectLocal/CMakeLists.txt
@@ -0,0 +1,229 @@
+cmake_minimum_required(VERSION 2.8)
+project(ExternalProjectLocalTest NONE)
+
+include(ExternalProject)
+
+# Test ExternalProject with local projects
+
+option(ExternalProjectTest_USE_FOLDERS "Enable folder grouping in IDEs." ON)
+if(ExternalProjectTest_USE_FOLDERS)
+  set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+else()
+  set_property(GLOBAL PROPERTY USE_FOLDERS OFF)
+endif()
+
+set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER
+  "CMakePredefinedTargets-in-ExternalProjectTest")
+
+set(base "${CMAKE_BINARY_DIR}/CMakeExternals")
+set(binary_base "${base}/Build")
+set_property(DIRECTORY PROPERTY EP_BASE ${base})
+set_property(DIRECTORY PROPERTY EP_STEP_TARGETS configure build test)
+
+if(NOT DEFINED can_build_tutorial_step5)
+  set(can_build_tutorial_step5 1)
+
+  # Tutorial Step5 cannot build correctly using Visual Studio 6
+  # on Windows 98 if the path of its build tree exceeds 72
+  # characters in length... So don't attempt to build it
+  # in a long path on Win98:
+  #
+  if(CMAKE_SYSTEM STREQUAL "Windows-4.10")
+    string(LENGTH "${binary_base}/TutorialStep5-Local" n)
+    if(n GREATER 72)
+      set(can_build_tutorial_step5 0)
+    endif()
+  endif()
+
+  # The ExternalProject builds of Tutorial Step5 cannot be built
+  # correctly 2nd and later times in an in-source build...
+  # (because the CMakeCache.txt from the real in-source build of
+  # the Tests/Tutorial/Step5 directory gets copied when we do
+  # the "source directory copy" step... but it still refers to
+  # its original path which yields a configure error.) So:
+  #
+  if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
+    set(can_build_tutorial_step5 0)
+  endif()
+endif()
+
+# Local DIR:
+#
+if(can_build_tutorial_step5)
+  set(proj TutorialStep5-Local)
+  ExternalProject_Add(${proj}
+    URL "${CMAKE_CURRENT_SOURCE_DIR}/../Tutorial/Step5"
+    CMAKE_CACHE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
+    CMAKE_ARGS -G ${CMAKE_GENERATOR} <SOURCE_DIR>
+    TEST_BEFORE_INSTALL 1
+    LOG_INSTALL 1
+  )
+  set_property(TARGET ${proj} PROPERTY FOLDER "Local")
+  ExternalProject_Get_Property(${proj} install_dir)
+  set(TutorialStep5_install_dir ${install_dir})
+
+  set(proj TutorialStep5-Local-TestAfterInstall)
+  ExternalProject_Add(${proj}
+    URL "${CMAKE_CURRENT_SOURCE_DIR}/../Tutorial/Step5"
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -G ${CMAKE_GENERATOR} <SOURCE_DIR>
+    TEST_AFTER_INSTALL 1
+    LOG_TEST 1
+  )
+  set_property(TARGET ${proj} PROPERTY FOLDER "Local")
+endif()
+
+
+# Local TAR:
+#
+set(proj TutorialStep1-LocalTAR)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.tar"
+  URL_MD5 a87c5b47c0201c09ddfe1d5738fdb1e3
+  LIST_SEPARATOR ::
+  PATCH_COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/Step1Patch.cmake
+  CMAKE_GENERATOR "${CMAKE_GENERATOR}"
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
+             -DTEST_LIST:STRING=A::B::C
+  INSTALL_COMMAND ""
+  LOG_CONFIGURE 1
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/TAR")
+
+set(proj TutorialStep1-LocalNoDirTAR)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.tar"
+  URL_MD5 d09e3d370c5c908fa035c30939ee438e
+  LIST_SEPARATOR @@
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -G ${CMAKE_GENERATOR} <SOURCE_DIR>
+             -DTEST_LIST:STRING=1@@2@@3
+  INSTALL_COMMAND ""
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/TAR")
+ExternalProject_Add_Step(${proj} mypatch
+  COMMAND ${CMAKE_COMMAND} -E echo "This is a custom external project step."
+  COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/Step1Patch.cmake
+  WORKING_DIRECTORY <SOURCE_DIR>
+  DEPENDEES download
+  DEPENDERS configure
+  )
+
+
+# Local TGZ:
+#
+set(proj TutorialStep1-LocalTGZ)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.tgz"
+  URL_MD5 38c648e817339c356f6be00eeed79bd0
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -G ${CMAKE_GENERATOR} <SOURCE_DIR>
+  INSTALL_COMMAND ""
+  LOG_BUILD 1
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/TGZ")
+
+set(proj TutorialStep1-LocalNoDirTGZ)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.tgz"
+  URL_HASH SHA256=496229e2a5ed620a37c385ad9406004a18026beab8b55dd2c4565d4b7f1d5383
+  CMAKE_GENERATOR "${CMAKE_GENERATOR}"
+  CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
+  INSTALL_COMMAND ""
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/TGZ")
+
+
+# Local BZ2:
+#
+# (The bz2 tests are here just to verify that the bz2 decompression is executed
+#  during a test suite run... The configure and build commands are set to
+#  nothing to make the test quicker. To make this more complete, I should add
+#  a diff between this and the TGZ source tree since that one does build...)
+#
+set(proj TutorialStep1-LocalBZ2)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.tar.bz2"
+  CONFIGURE_COMMAND ""
+  BUILD_COMMAND ""
+  INSTALL_COMMAND ""
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/BZ2")
+
+set(proj TutorialStep1-LocalNoDirBZ2)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.tar.bz2"
+  CONFIGURE_COMMAND ""
+  BUILD_COMMAND ""
+  INSTALL_COMMAND ""
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/BZ2")
+
+
+# Local ZIP:
+#
+# (The zip tests are here just to verify that the zip decompression is executed
+#  during a test suite run... The configure and build commands are set to
+#  nothing to make the test quicker. To make this more complete, I should add
+#  a diff between this and the TGZ source tree since that one does build...)
+#
+set(proj TutorialStep1-LocalZIP)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1.zip"
+  CONFIGURE_COMMAND ""
+  BUILD_COMMAND ""
+  INSTALL_COMMAND ""
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/ZIP")
+
+set(proj TutorialStep1-LocalNoDirZIP)
+ExternalProject_Add(${proj}
+  URL "${CMAKE_CURRENT_SOURCE_DIR}/Step1NoDir.zip"
+  CONFIGURE_COMMAND ""
+  BUILD_COMMAND ""
+  INSTALL_COMMAND ""
+)
+set_property(TARGET ${proj} PROPERTY FOLDER "Local/ZIP")
+
+
+# Test the testable built/installed products:
+#
+enable_testing()
+
+
+# Do at least a smoke test of a built executable from each
+# project's build directory...
+#
+# BuildTree tests:
+#
+if(can_build_tutorial_step5)
+  add_test(TutorialStep5-Local-BuildTreeTest
+    "${binary_base}/TutorialStep5-Local/Tutorial" 42)
+  set_property(TEST TutorialStep5-Local-BuildTreeTest
+    APPEND PROPERTY LABELS Step5 BuildTree)
+endif()
+
+add_test(TutorialStep1-LocalTAR-BuildTreeTest
+  "${binary_base}/TutorialStep1-LocalTAR/EP-Tutorial" 36)
+set_property(TEST TutorialStep1-LocalTAR-BuildTreeTest
+  APPEND PROPERTY LABELS TAR)
+
+add_test(TutorialStep1-LocalNoDirTAR-BuildTreeTest
+  "${binary_base}/TutorialStep1-LocalNoDirTAR/EP-Tutorial" 25)
+
+add_test(TutorialStep1-LocalTGZ-BuildTreeTest
+  "${binary_base}/TutorialStep1-LocalTGZ/Tutorial" 16)
+set_property(TEST TutorialStep1-LocalTGZ-BuildTreeTest
+  APPEND PROPERTY LABELS TGZ)
+
+add_test(TutorialStep1-LocalNoDirTGZ-BuildTreeTest
+  "${binary_base}/TutorialStep1-LocalNoDirTGZ/Tutorial" 9)
+
+# InstallTree tests:
+#
+if(can_build_tutorial_step5)
+  add_test(TutorialStep5-InstallTreeTest
+    "${TutorialStep5_install_dir}/bin/Tutorial" 49)
+  set_property(TEST TutorialStep5-InstallTreeTest
+    APPEND PROPERTY LABELS Step5 InstallTree)
+endif()
+
+
+message(STATUS "can_build_tutorial_step5='${can_build_tutorial_step5}'")
diff --git a/Tests/ExternalProject/Step1.tar b/Tests/ExternalProjectLocal/Step1.tar
similarity index 100%
rename from Tests/ExternalProject/Step1.tar
rename to Tests/ExternalProjectLocal/Step1.tar
diff --git a/Tests/ExternalProject/Step1.tar.bz2 b/Tests/ExternalProjectLocal/Step1.tar.bz2
similarity index 100%
rename from Tests/ExternalProject/Step1.tar.bz2
rename to Tests/ExternalProjectLocal/Step1.tar.bz2
diff --git a/Tests/ExternalProject/Step1.tgz b/Tests/ExternalProjectLocal/Step1.tgz
similarity index 100%
rename from Tests/ExternalProject/Step1.tgz
rename to Tests/ExternalProjectLocal/Step1.tgz
diff --git a/Tests/ExternalProject/Step1.zip b/Tests/ExternalProjectLocal/Step1.zip
similarity index 100%
rename from Tests/ExternalProject/Step1.zip
rename to Tests/ExternalProjectLocal/Step1.zip
diff --git a/Tests/ExternalProject/Step1NoDir.tar b/Tests/ExternalProjectLocal/Step1NoDir.tar
similarity index 100%
rename from Tests/ExternalProject/Step1NoDir.tar
rename to Tests/ExternalProjectLocal/Step1NoDir.tar
diff --git a/Tests/ExternalProject/Step1NoDir.tar.bz2 b/Tests/ExternalProjectLocal/Step1NoDir.tar.bz2
similarity index 100%
rename from Tests/ExternalProject/Step1NoDir.tar.bz2
rename to Tests/ExternalProjectLocal/Step1NoDir.tar.bz2
diff --git a/Tests/ExternalProject/Step1NoDir.tgz b/Tests/ExternalProjectLocal/Step1NoDir.tgz
similarity index 100%
rename from Tests/ExternalProject/Step1NoDir.tgz
rename to Tests/ExternalProjectLocal/Step1NoDir.tgz
diff --git a/Tests/ExternalProject/Step1NoDir.zip b/Tests/ExternalProjectLocal/Step1NoDir.zip
similarity index 100%
rename from Tests/ExternalProject/Step1NoDir.zip
rename to Tests/ExternalProjectLocal/Step1NoDir.zip
diff --git a/Tests/ExternalProject/Step1Patch.cmake b/Tests/ExternalProjectLocal/Step1Patch.cmake
similarity index 100%
rename from Tests/ExternalProject/Step1Patch.cmake
rename to Tests/ExternalProjectLocal/Step1Patch.cmake

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

Summary of changes:
 Tests/CMakeLists.txt                               |   15 ++
 Tests/ExternalProject/CMakeLists.txt               |  203 +----------------
 Tests/ExternalProjectLocal/CMakeLists.txt          |  229 ++++++++++++++++++++
 .../Step1.tar                                      |  Bin 5632 -> 5632 bytes
 .../Step1.tar.bz2                                  |  Bin 904 -> 904 bytes
 .../Step1.tgz                                      |  Bin 791 -> 791 bytes
 .../Step1.zip                                      |  Bin 1074 -> 1074 bytes
 .../Step1NoDir.tar                                 |  Bin 5120 -> 5120 bytes
 .../Step1NoDir.tar.bz2                             |  Bin 852 -> 852 bytes
 .../Step1NoDir.tgz                                 |  Bin 770 -> 770 bytes
 .../Step1NoDir.zip                                 |  Bin 1038 -> 1038 bytes
 .../Step1Patch.cmake                               |    0
 12 files changed, 246 insertions(+), 201 deletions(-)
 create mode 100644 Tests/ExternalProjectLocal/CMakeLists.txt
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1.tar (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1.tar.bz2 (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1.tgz (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1.zip (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1NoDir.tar (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1NoDir.tar.bz2 (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1NoDir.tgz (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1NoDir.zip (100%)
 rename Tests/{ExternalProject => ExternalProjectLocal}/Step1Patch.cmake (100%)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list