| include(ExternalProject) |
| |
| # Force all steps to be re-run by removing timestamps from any previous run. |
| # This has to happen before we call ExternalProject_Add() because that command |
| # writes some files to the stamp directory for recording repository details. |
| set(STAMP_DIR ${CMAKE_BINARY_DIR}/multiCommand-prefix/src/multiCommand-stamp) |
| file(REMOVE_RECURSE "${STAMP_DIR}") |
| file(MAKE_DIRECTORY "${STAMP_DIR}") |
| |
| # Verify COMMAND keyword is recognized after various *_COMMAND options |
| ExternalProject_Add(multiCommand |
| DOWNLOAD_COMMAND "${CMAKE_COMMAND}" -E echo "download 1" |
| COMMAND "${CMAKE_COMMAND}" -E echo "download 2" |
| UPDATE_COMMAND "${CMAKE_COMMAND}" -E echo "update 1" |
| COMMAND "${CMAKE_COMMAND}" -E echo "update 2" |
| PATCH_COMMAND "${CMAKE_COMMAND}" -E echo "patch 1" |
| COMMAND "${CMAKE_COMMAND}" -E echo "patch 2" |
| CONFIGURE_COMMAND "${CMAKE_COMMAND}" -E echo "configure 1" |
| COMMAND "${CMAKE_COMMAND}" -E echo "configure 2" |
| BUILD_COMMAND "${CMAKE_COMMAND}" -E echo "build 1" |
| COMMAND "${CMAKE_COMMAND}" -E echo "build 2" |
| TEST_COMMAND "${CMAKE_COMMAND}" -E echo "test 1" |
| COMMAND "${CMAKE_COMMAND}" -E echo "test 2" |
| INSTALL_COMMAND "${CMAKE_COMMAND}" -E echo "install 1" |
| COMMAND "${CMAKE_COMMAND}" -E echo "install 2" |
| ) |