浏览代码

Help: Clarify execute_process COMMAND argument behavior

State in the execute_process how COMMAND arguments are passed to
the child.  Add a note at the end about how the command differs
from add_custom_*().

Suggested-by: Alan W. Irwin
Brad King 12 年之前
父节点
当前提交
3bb6266492
共有 1 个文件被更改,包括 14 次插入0 次删除
  1. 14 0
      Help/command/execute_process.rst

+ 14 - 0
Help/command/execute_process.rst

@@ -26,6 +26,16 @@ A single standard error pipe is used for all processes.
 
 Options:
 
+COMMAND
+ A child process command line.
+
+ CMake executes the child process using operating system APIs directly.
+ All arguments are passed VERBATIM to the child process.
+ No intermediate shell is used, so shell operators such as ``>``
+ are treated as normal arguments.
+ (Use the ``INPUT_*``, ``OUTPUT_*``, and ``ERROR_*`` options to
+ redirect stdin, stdout, and stderr.)
+
 WORKING_DIRECTORY
  The named directory will be set as the current working directory of
  the child processes.
@@ -59,3 +69,7 @@ be shared with the corresponding pipes of the CMake process itself.
 
 The :command:`execute_process` command is a newer more powerful version of
 :command:`exec_program`, but the old command has been kept for compatibility.
+Both commands run while CMake is processing the project prior to build
+system generation.  Use :command:`add_custom_target` and
+:command:`add_custom_command` to create custom commands that run at
+build time.