diff options
author | Brad King <brad.king@kitware.com> | 2022-11-17 18:49:25 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2022-11-17 20:05:07 (GMT) |
commit | d34986036fdc0dfa85a2d85a4fe5bce0368b1187 (patch) | |
tree | 21a8dc38d22ae89a1fc93459f924116b6f1b6ce5 /Modules/ExternalData.cmake | |
parent | efa9eec0402adacc7ac8b0dc17660a8bd968b06a (diff) | |
download | CMake-d34986036fdc0dfa85a2d85a4fe5bce0368b1187.zip CMake-d34986036fdc0dfa85a2d85a4fe5bce0368b1187.tar.gz CMake-d34986036fdc0dfa85a2d85a4fe5bce0368b1187.tar.bz2 |
ExternalData: Improve robustness on Windows to copy a data object to a file
When an external data object was recently created on disk, perhaps
fetched by the current process or another process, it may be
inaccessible on Windows for a short time. Tell our `file(COPY_FILE)`
call to retry a few times to copy the object to the final file path.
Hopefully this will resolve our long-standing spurious failures of the
`Module.ExternalData` test on Windows.
Diffstat (limited to 'Modules/ExternalData.cmake')
-rw-r--r-- | Modules/ExternalData.cmake | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Modules/ExternalData.cmake b/Modules/ExternalData.cmake index 189374b..6826c7b 100644 --- a/Modules/ExternalData.cmake +++ b/Modules/ExternalData.cmake @@ -945,7 +945,7 @@ function(_ExternalData_link_or_copy src dst) file(CREATE_LINK "${tgt}" "${tmp}" RESULT result COPY_ON_ERROR SYMBOLIC) else() # Create a copy. - file(COPY_FILE "${src}" "${tmp}" RESULT result) + file(COPY_FILE "${src}" "${tmp}" RESULT result INPUT_MAY_BE_RECENT) endif() if(result) file(REMOVE "${tmp}") |