diff options
| author | Brad King <brad.king@kitware.com> | 2016-11-14 10:44:04 -0500 |
|---|---|---|
| committer | Brad King <brad.king@kitware.com> | 2016-11-15 08:45:04 -0500 |
| commit | 4deaa25f46bbe021648d837a936be64117922157 (patch) | |
| tree | 79be395a84a8183e01d9e84da7f9b7ed809e3696 | |
| parent | 4a4be0301bd9c6062738e87892cbe5bd8d900a49 (diff) | |
| download | cmake-4deaa25f46bbe021648d837a936be64117922157.tar.gz | |
ExternalProject: Fix UPDATE_DISCONNECTED with empty update steps
When `UPDATE_DISCONNECTED` is enabled the post-update steps
unconditionally depend on a `skip-update` step instead of `update`.
Make `skip-update` available whenever `UPDATE_DISCONNECTED` is enabled,
whether there is a real update step or not.
Closes: #16428
| -rw-r--r-- | Modules/ExternalProject.cmake | 4 | ||||
| -rw-r--r-- | Tests/ExternalProjectLocal/CMakeLists.txt | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 1ba4a8ff09..b15b3f7e27 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -2165,12 +2165,12 @@ Update to Mercurial >= 2.1.1. ${uses_terminal} ) - if(always AND update_disconnected) + if(update_disconnected) _ep_get_step_stampfile(${name} skip-update skip-update_stamp_file) string(REPLACE "Performing" "Skipping" comment "${comment}") ExternalProject_Add_Step(${name} skip-update COMMENT ${comment} - ALWAYS 1 + ALWAYS ${always} EXCLUDE_FROM_MAIN 1 WORKING_DIRECTORY ${work_dir} DEPENDEES download diff --git a/Tests/ExternalProjectLocal/CMakeLists.txt b/Tests/ExternalProjectLocal/CMakeLists.txt index 17f163080f..5b941630a7 100644 --- a/Tests/ExternalProjectLocal/CMakeLists.txt +++ b/Tests/ExternalProjectLocal/CMakeLists.txt @@ -131,6 +131,7 @@ ExternalProject_Add(${proj} CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -G ${CMAKE_GENERATOR} <SOURCE_DIR> INSTALL_COMMAND "" LOG_BUILD 1 + UPDATE_DISCONNECTED 1 ) set_property(TARGET ${proj} PROPERTY FOLDER "Local/TGZ") |
