diff options
author | Ben Boeckel <ben.boeckel@kitware.com> | 2023-12-20 19:07:54 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2024-01-03 19:18:35 (GMT) |
commit | fd3c9876c6b37e79cff476ccb618b54548dc2d2c (patch) | |
tree | 8d1ed496e04bcc5706c513e858ea23c8a2055529 | |
parent | 158316dc0c0fb856feb67ca3cacd7681170b5e0a (diff) | |
download | CMake-fd3c9876c6b37e79cff476ccb618b54548dc2d2c.zip CMake-fd3c9876c6b37e79cff476ccb618b54548dc2d2c.tar.gz CMake-fd3c9876c6b37e79cff476ccb618b54548dc2d2c.tar.bz2 |
ExternalProject: revert `BYPRODUCTS` for download outputs
Xcode has been reported to not work at all with this when
ExternalProject projects share download files.
Revert commit 872daff159 (ExternalProject: declare byproducts for the
download step, 2023-09-21, v3.28.0-rc1~27^2) pending further
investigation.
Fixes: #25525
-rw-r--r-- | Help/release/3.28.rst | 6 | ||||
-rw-r--r-- | Modules/ExternalProject.cmake | 14 |
2 files changed, 5 insertions, 15 deletions
diff --git a/Help/release/3.28.rst b/Help/release/3.28.rst index f002cd2..d28024f 100644 --- a/Help/release/3.28.rst +++ b/Help/release/3.28.rst @@ -116,12 +116,6 @@ Modules Additionally, the :command:`ExternalProject_Add_Step` command has been updated to support the new ``JOB_SERVER_AWARE`` option. -* The :module:`ExternalProject` module now declares ``BYPRODUCTS`` for the - downloaded file for generated ``download`` steps. Previously, if multiple - external projects downloaded to the same file, hash verification could fail. - Now, when using the :ref:`Ninja Generators`, this scenario is detected and - Ninja will raise an error stating that multiple rules generate the same file. - * The :module:`FetchContent` module's :command:`FetchContent_Declare` command gained an ``EXCLUDE_FROM_ALL`` option, which propagates through to the :command:`add_subdirectory` call made by diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index 3ec0557..a5dceaa 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake @@ -2825,7 +2825,6 @@ function(_ep_add_download_command name) set(comment) set(work_dir) set(extra_repo_info) - set(byproduct_file) if(cmd_set) set(work_dir ${download_dir}) @@ -3106,16 +3105,14 @@ hash=${hash} get_filename_component(fname "${fname}" NAME) else() # Fall back to a default file name. The actual file name does not - # matter as long as it doesn't conflict with other projects because - # it is used only internally and our extraction tool inspects the - # file content directly. If it turns out the wrong URL was given - # that will be revealed during the build which is an easier place for - # users to diagnose than an error here anyway. - set(fname "${name}-archive.tar") + # matter because it is used only internally and our extraction tool + # inspects the file content directly. If it turns out the wrong URL + # was given that will be revealed during the build which is an easier + # place for users to diagnose than an error here anyway. + set(fname "archive.tar") endif() string(REPLACE ";" "-" fname "${fname}") set(file ${download_dir}/${fname}) - set(byproduct_file "${download_dir}/${fname}") get_property(timeout TARGET ${name} PROPERTY _EP_TIMEOUT) get_property(inactivity_timeout TARGET ${name} @@ -3292,7 +3289,6 @@ hash=${hash} COMMAND ${__cmdQuoted} WORKING_DIRECTORY \${work_dir} DEPENDS \${depends} - BYPRODUCTS \${byproduct_file} DEPENDEES mkdir ${log} ${uses_terminal} |