summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Cole <david.cole@kitware.com>2011-11-09 18:31:05 (GMT)
committerDavid Cole <david.cole@kitware.com>2011-11-09 18:35:28 (GMT)
commit537020f9581d36c436d18e30f98d58f0ef5924cc (patch)
tree93fa26c78f7d4c92e37312dc500544f8577abbbd
parent51f442e6034a151e797f678e479073285b433d71 (diff)
downloadCMake-537020f9581d36c436d18e30f98d58f0ef5924cc.zip
CMake-537020f9581d36c436d18e30f98d58f0ef5924cc.tar.gz
CMake-537020f9581d36c436d18e30f98d58f0ef5924cc.tar.bz2
Tests: Nudge MFC test to pass on VS 6 dashboards (#11213)
InstallRequiredSystemLibraries does not install any dlls when used with VS 6 dashboards. Modify the ValidateBuild script to expect only 1 file when building with VS 6. Using "-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>" does not work when <INSTALL_DIR> evaluates to a long enough string. However, using "-DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>" does work, even with the longer strings. So: make sure to include the ":PATH" when using this construct with ExternalProject calls so that they may install to the proper location on VS 6 builds. All existing calls that match "CMAKE_INSTALL_PREFIX.*INSTALL_DIR" include the ":PATH" after this commit. By the way: https://twitter.com/DLRdave/status/134339505397309440
-rw-r--r--Tests/ExternalProject/Example/CMakeLists.txt2
-rw-r--r--Tests/MFC/CMakeLists.txt4
-rw-r--r--Tests/MFC/ValidateBuild.cmake.in12
3 files changed, 13 insertions, 5 deletions
diff --git a/Tests/ExternalProject/Example/CMakeLists.txt b/Tests/ExternalProject/Example/CMakeLists.txt
index 2cadd7d..69ebaaf 100644
--- a/Tests/ExternalProject/Example/CMakeLists.txt
+++ b/Tests/ExternalProject/Example/CMakeLists.txt
@@ -6,6 +6,6 @@ include(ExternalProject)
ExternalProject_Add(
cmake281
URL http://www.cmake.org/files/v2.8/cmake-2.8.1.tar.gz
- CMAKE_ARGS -D CMAKE_INSTALL_PREFIX=<INSTALL_DIR>
+ CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
BUILD_COMMAND ""
)
diff --git a/Tests/MFC/CMakeLists.txt b/Tests/MFC/CMakeLists.txt
index df3149a..62ff749 100644
--- a/Tests/MFC/CMakeLists.txt
+++ b/Tests/MFC/CMakeLists.txt
@@ -17,7 +17,7 @@ ExternalProject_Add(mfcShared
PATCH_COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.SharedMfcDll.txt
<SOURCE_DIR>/CMakeLists.txt
- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
+ CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
)
@@ -33,7 +33,7 @@ ExternalProject_Add(mfcStatic
PATCH_COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.StaticMfcLib.txt
<SOURCE_DIR>/CMakeLists.txt
- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
+ CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
)
diff --git a/Tests/MFC/ValidateBuild.cmake.in b/Tests/MFC/ValidateBuild.cmake.in
index 68de549..ed923f5 100644
--- a/Tests/MFC/ValidateBuild.cmake.in
+++ b/Tests/MFC/ValidateBuild.cmake.in
@@ -31,9 +31,17 @@ message(STATUS "===== mfcShared install tree =====")
file(GLOB_RECURSE files "${binary_dir}/mfcShared-prefix/bin/*.*")
message(STATUS "mfcShared files='${files}'")
list(LENGTH files len)
-if(len LESS 3)
+
+set(msvc6 "@MSVC60@")
+if("${msvc6}" STREQUAL "1")
+ set(expected_minimum_file_count 1)
+else()
+ set(expected_minimum_file_count 3)
+endif()
+
+if(len LESS ${expected_minimum_file_count})
message(FATAL_ERROR
- "len='${len}' is less than '3' (count of shared 'bin' files)")
+ "len='${len}' is less than '${expected_minimum_file_count}' (count of shared 'bin' files)")
endif()
foreach(f ${files})
message(STATUS "file '${f}'")