summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2024-01-04 16:34:58 (GMT)
committerKitware Robot <kwrobot@kitware.com>2024-01-04 16:35:10 (GMT)
commitcab0ec1f755b061449ecdc075e1404be4b0fd522 (patch)
treeb39d63b75e038c78d124dec21ad7c923ea7594b1
parenta0a5a5b85a20fd40985bd05d0a7ab45ec83a4c4e (diff)
parentfd3c9876c6b37e79cff476ccb618b54548dc2d2c (diff)
downloadCMake-cab0ec1f755b061449ecdc075e1404be4b0fd522.zip
CMake-cab0ec1f755b061449ecdc075e1404be4b0fd522.tar.gz
CMake-cab0ec1f755b061449ecdc075e1404be4b0fd522.tar.bz2
Merge topic 'revert-ExternalProject-download-byproducts' into release-3.28
fd3c9876c6 ExternalProject: revert `BYPRODUCTS` for download outputs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9097
-rw-r--r--Help/release/3.28.rst6
-rw-r--r--Modules/ExternalProject.cmake14
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}