From 739f16653d823ea9519405da837cd57dcf204403 Mon Sep 17 00:00:00 2001 From: Brad King Date: Tue, 13 Nov 2012 10:52:05 -0500 Subject: [PATCH] Serialize tests for EXCLUDE_FROM_DEFAULT_BUILD The tests share a single build directory and so should not run in parallel. While at it, add the build dir to the test_clean target. --- Tests/CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 7f05121f0..1e8c2281e 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1417,6 +1417,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/ # The test (and tested property) works with .sln files, so it's skipped when: # * Using VS6, which doesn't use .sln files # * cmake --build is set up to use MSBuild, since the MSBuild invocation does not use the .sln file + set(_last_test "") foreach(config ${CMAKE_CONFIGURATION_TYPES}) add_test(NAME VSExcludeFromDefaultBuild-${config} COMMAND ${CMAKE_CTEST_COMMAND} --build-and-test @@ -1432,7 +1433,13 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/ -D "allConfigs=${CMAKE_CONFIGURATION_TYPES}" -D "dir=${CMake_BINARY_DIR}/Tests/VSExcludeFromDefaultBuild" -P "${CMake_SOURCE_DIR}/Tests/VSExcludeFromDefaultBuild/ResultTest.cmake") + if(_last_test) + set_property(TEST VSExcludeFromDefaultBuild-${config} PROPERTY DEPENDS ${_last_test}) + endif() + set(_last_test "VSExcludeFromDefaultBuild-${config}") endforeach() + unset(_last_test) + list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/VSExcludeFromDefaultBuild") endif() endif()