summaryrefslogtreecommitdiffstats
path: root/Help/command/file.rst
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2021-03-29 13:31:31 (GMT)
committerKitware Robot <kwrobot@kitware.com>2021-03-29 13:32:09 (GMT)
commit75dd9b6c97a7b553d905c5bb3ef41cd38afc7315 (patch)
tree01fe846862c10d4454a4df3430f5d4b8f6f347af /Help/command/file.rst
parentb355358de359fa0c9b225715fbbfb7d34b362668 (diff)
parent769ff05483fa92e63466839854c4f3f0142a4fb3 (diff)
downloadCMake-75dd9b6c97a7b553d905c5bb3ef41cd38afc7315.zip
CMake-75dd9b6c97a7b553d905c5bb3ef41cd38afc7315.tar.gz
CMake-75dd9b6c97a7b553d905c5bb3ef41cd38afc7315.tar.bz2
Merge topic 'commands-file-permissions'
769ff05483 Help: Clarify permission-related command options 900184616a Cleanup: Fix misspelt name of local C++ variable 635431a0c9 Tests: Check host platform instead of target for running stat 4ceb0ca59e Tests: Remove redundant files for configure_file() tests Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5945
Diffstat (limited to 'Help/command/file.rst')
-rw-r--r--Help/command/file.rst26
1 files changed, 18 insertions, 8 deletions
diff --git a/Help/command/file.rst b/Help/command/file.rst
index 445a408..2b445c5 100644
--- a/Help/command/file.rst
+++ b/Help/command/file.rst
@@ -481,8 +481,8 @@ modified.
file(GENERATE OUTPUT output-file
<INPUT input-file|CONTENT content>
[CONDITION expression] [TARGET target]
- [FILE_PERMISSIONS <permissions>...]
- [NO_SOURCE_PERMISSIONS] [USE_SOURCE_PERMISSIONS]
+ [NO_SOURCE_PERMISSIONS | USE_SOURCE_PERMISSIONS |
+ FILE_PERMISSIONS <permissions>...]
[NEWLINE_STYLE [UNIX|DOS|WIN32|LF|CRLF] ])
Generate an output file for each build configuration supported by the current
@@ -524,16 +524,26 @@ from the input content to produce the output content. The options are:
require a target for evaluation (e.g. ``$<COMPILE_FEATURES:...>``,
``$<TARGET_PROPERTY:prop>``).
-``FILE_PERMISSIONS <permissions>...``
- Use user provided permissions for the generated file.
-
``NO_SOURCE_PERMISSIONS``
+ .. versionadded:: 3.20
+
The generated file permissions default to the standard 644 value
(-rw-r--r--).
``USE_SOURCE_PERMISSIONS``
- Transfer the file permissions of the original file to the generated file.
- This option expects INPUT option.
+ .. versionadded:: 3.20
+
+ Transfer the file permissions of the ``INPUT`` file to the generated file.
+ This is already the default behavior if none of the three permissions-related
+ keywords are given (``NO_SOURCE_PERMISSIONS``, ``USE_SOURCE_PERMISSIONS``
+ or ``FILE_PERMISSIONS``). The ``USE_SOURCE_PERMISSIONS`` keyword mostly
+ serves as a way of making the intended behavior clearer at the call site.
+ It is an error to specify this option without ``INPUT``.
+
+``FILE_PERMISSIONS <permissions>...``
+ .. versionadded:: 3.20
+
+ Use the specified permissions for the generated file.
``NEWLINE_STYLE <style>``
.. versionadded:: 3.20
@@ -738,9 +748,9 @@ Create the given directories and their parents as needed.
.. code-block:: cmake
file(<COPY|INSTALL> <files>... DESTINATION <dir>
+ [NO_SOURCE_PERMISSIONS | USE_SOURCE_PERMISSIONS]
[FILE_PERMISSIONS <permissions>...]
[DIRECTORY_PERMISSIONS <permissions>...]
- [NO_SOURCE_PERMISSIONS] [USE_SOURCE_PERMISSIONS]
[FOLLOW_SYMLINK_CHAIN]
[FILES_MATCHING]
[[PATTERN <pattern> | REGEX <regex>]