Merge topic 'cmp0168-populate-nondeclare-regression'

cbb727ca6b FetchContent: Don't update verify script timestamp if it doesn't change
795e7b44f2 Help: file(CONFIGURE) only updates output file timestamp if it changes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9799
This commit is contained in:
Craig Scott
2024-09-08 22:32:10 +00:00
committed by Kitware Robot
2 changed files with 6 additions and 2 deletions

View File

@@ -302,7 +302,9 @@ Writing
variable values referenced as ``@VAR@`` or ``${VAR}`` contained therein. The
substitution rules behave the same as the :command:`configure_file` command.
In order to match :command:`configure_file`'s behavior, generator expressions
are not supported for both ``OUTPUT`` and ``CONTENT``.
are not supported for both ``OUTPUT`` and ``CONTENT``, and the output file
is only modified and its timestamp updated if the content is changed or the
file previously didn't exist.
The arguments are:

View File

@@ -1213,7 +1213,9 @@ hash=${hash}
endif ()
set(comment "Performing download step (${steps}) for '${name}'")
# already verified by 'download_script'
file(WRITE "${verify_script}" "")
# We use file(CONFIGURE) instead of file(WRITE) to avoid updating the
# timestamp when the file already existed and was empty.
file(CONFIGURE OUTPUT "${verify_script}" CONTENT "")
# Rather than adding everything to the RepositoryInfo.txt file, it is
# more robust to just depend on the download script. That way, we will