summaryrefslogtreecommitdiffstats
path: root/Tests/CTestUpdateCommon.cmake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2010-05-04 13:35:27 (GMT)
committerBrad King <brad.king@kitware.com>2010-05-04 13:40:04 (GMT)
commit67277bacca15047405a1185d2271ba81b553bdae (patch)
treed2eca7c94103e0006cc5e2c4cfa9911ab138d964 /Tests/CTestUpdateCommon.cmake
parentf20fd583d8fcc9527de997db3808a75ed9624b90 (diff)
downloadCMake-67277bacca15047405a1185d2271ba81b553bdae.zip
CMake-67277bacca15047405a1185d2271ba81b553bdae.tar.gz
CMake-67277bacca15047405a1185d2271ba81b553bdae.tar.bz2
Teach ctest_update about Git submodules
Git does not automatically checkout the matching version of a submodule when it checks out a new version of the parent project in the work tree. If the submodule reference changed in the parent project then we were reporting the submodule path as a local modification. Work around the problem in ctest_update using "git submodule update" after "git pull". For projects with no submodules this is a no-op. See issue #10662. Also add a submodule to the test project for CTest.UpdateGIT to test the work-around.
Diffstat (limited to 'Tests/CTestUpdateCommon.cmake')
-rw-r--r--Tests/CTestUpdateCommon.cmake4
1 files changed, 2 insertions, 2 deletions
diff --git a/Tests/CTestUpdateCommon.cmake b/Tests/CTestUpdateCommon.cmake
index 94c37fe..266f4b3 100644
--- a/Tests/CTestUpdateCommon.cmake
+++ b/Tests/CTestUpdateCommon.cmake
@@ -41,8 +41,8 @@ function(check_updates build)
# Compare expected and actual entries
set(EXTRA "${UPDATE_XML_ENTRIES}")
- list(REMOVE_ITEM EXTRA ${ARGN} ${UPDATE_MAYBE})
- set(MISSING "${ARGN}")
+ list(REMOVE_ITEM EXTRA ${ARGN} ${UPDATE_EXTRA} ${UPDATE_MAYBE})
+ set(MISSING "${ARGN}" ${UPDATE_EXTRA})
list(REMOVE_ITEM MISSING ${UPDATE_XML_ENTRIES})
if(NOT UPDATE_NOT_GLOBAL)