diff options
| author | Billy Robert O'Neal III <bion@microsoft.com> | 2020-08-28 16:31:27 -0700 |
|---|---|---|
| committer | Billy Robert O'Neal III <bion@microsoft.com> | 2020-08-28 16:31:27 -0700 |
| commit | c828f3634723996e6031fb2e3c3d1ac3f4de0cad (patch) | |
| tree | b3fe00a043d5b9351868a0d1f8aead41bb52d2be /scripts/cmake/vcpkg_execute_required_process.cmake | |
| parent | 6635a2fa596ca457565eebc2a45664309cd24d77 (diff) | |
| parent | f3f329a048eaff759c1992c458f2e12351486bc7 (diff) | |
| download | vcpkg-update-geos-381.tar.gz vcpkg-update-geos-381.zip | |
Merge remote-tracking branch 'origin/master' into HEADupdate-geos-381
Diffstat (limited to 'scripts/cmake/vcpkg_execute_required_process.cmake')
| -rw-r--r-- | scripts/cmake/vcpkg_execute_required_process.cmake | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/scripts/cmake/vcpkg_execute_required_process.cmake b/scripts/cmake/vcpkg_execute_required_process.cmake index f25a5b55e..af5ab1e9e 100644 --- a/scripts/cmake/vcpkg_execute_required_process.cmake +++ b/scripts/cmake/vcpkg_execute_required_process.cmake @@ -8,6 +8,7 @@ ## COMMAND <${PERL}> [<arguments>...] ## WORKING_DIRECTORY <${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg> ## LOGNAME <build-${TARGET_TRIPLET}-dbg> +## [TIMEOUT <seconds>] ## ) ## ``` ## ## Parameters @@ -24,6 +25,9 @@ ## ### LOGNAME ## The prefix to use for the log files. ## +## ### TIMEOUT +## Optional timeout after which to terminate the command. +## ## This should be a unique name for different triplets so that the logs don't conflict when building multiple at once. ## ## ## Examples @@ -34,10 +38,16 @@ ## * [qt5](https://github.com/Microsoft/vcpkg/blob/master/ports/qt5/portfile.cmake) include(vcpkg_prettify_command) function(vcpkg_execute_required_process) - cmake_parse_arguments(vcpkg_execute_required_process "ALLOW_IN_DOWNLOAD_MODE" "WORKING_DIRECTORY;LOGNAME" "COMMAND" ${ARGN}) + cmake_parse_arguments(vcpkg_execute_required_process "ALLOW_IN_DOWNLOAD_MODE" "WORKING_DIRECTORY;LOGNAME;TIMEOUT" "COMMAND" ${ARGN}) set(LOG_OUT "${CURRENT_BUILDTREES_DIR}/${vcpkg_execute_required_process_LOGNAME}-out.log") set(LOG_ERR "${CURRENT_BUILDTREES_DIR}/${vcpkg_execute_required_process_LOGNAME}-err.log") + if(vcpkg_execute_required_process_TIMEOUT) + set(TIMEOUT_PARAM "TIMEOUT;${vcpkg_execute_required_process_TIMEOUT}") + else() + set(TIMEOUT_PARAM "") + endif() + set(execute_process_function execute_process) if (DEFINED VCPKG_DOWNLOAD_MODE AND NOT vcpkg_execute_required_process_ALLOW_IN_DOWNLOAD_MODE) message(FATAL_ERROR @@ -52,7 +62,8 @@ Halting portfile execution. OUTPUT_FILE ${LOG_OUT} ERROR_FILE ${LOG_ERR} RESULT_VARIABLE error_code - WORKING_DIRECTORY ${vcpkg_execute_required_process_WORKING_DIRECTORY}) + WORKING_DIRECTORY ${vcpkg_execute_required_process_WORKING_DIRECTORY} + ${TIMEOUT_PARAM}) if(error_code) set(LOGS) file(READ "${LOG_OUT}" out_contents) |
