summaryrefslogtreecommitdiffstats
path: root/Help/command/execute_process.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Help/command/execute_process.rst')
-rw-r--r--Help/command/execute_process.rst48
1 files changed, 48 insertions, 0 deletions
diff --git a/Help/command/execute_process.rst b/Help/command/execute_process.rst
new file mode 100644
index 0000000..3f0ccc2
--- /dev/null
+++ b/Help/command/execute_process.rst
@@ -0,0 +1,48 @@
+execute_process
+---------------
+
+Execute one or more child processes.
+
+::
+
+ execute_process(COMMAND <cmd1> [args1...]]
+ [COMMAND <cmd2> [args2...] [...]]
+ [WORKING_DIRECTORY <directory>]
+ [TIMEOUT <seconds>]
+ [RESULT_VARIABLE <variable>]
+ [OUTPUT_VARIABLE <variable>]
+ [ERROR_VARIABLE <variable>]
+ [INPUT_FILE <file>]
+ [OUTPUT_FILE <file>]
+ [ERROR_FILE <file>]
+ [OUTPUT_QUIET]
+ [ERROR_QUIET]
+ [OUTPUT_STRIP_TRAILING_WHITESPACE]
+ [ERROR_STRIP_TRAILING_WHITESPACE])
+
+Runs the given sequence of one or more commands with the standard
+output of each process piped to the standard input of the next. A
+single standard error pipe is used for all processes. If
+WORKING_DIRECTORY is given the named directory will be set as the
+current working directory of the child processes. If TIMEOUT is given
+the child processes will be terminated if they do not finish in the
+specified number of seconds (fractions are allowed). If
+RESULT_VARIABLE is given the variable will be set to contain the
+result of running the processes. This will be an integer return code
+from the last child or a string describing an error condition. If
+OUTPUT_VARIABLE or ERROR_VARIABLE are given the variable named will be
+set with the contents of the standard output and standard error pipes
+respectively. If the same variable is named for both pipes their
+output will be merged in the order produced. If INPUT_FILE,
+OUTPUT_FILE, or ERROR_FILE is given the file named will be attached to
+the standard input of the first process, standard output of the last
+process, or standard error of all processes respectively. If
+OUTPUT_QUIET or ERROR_QUIET is given then the standard output or
+standard error results will be quietly ignored. If more than one
+OUTPUT_* or ERROR_* option is given for the same pipe the precedence
+is not specified. If no OUTPUT_* or ERROR_* options are given the
+output will be shared with the corresponding pipes of the CMake
+process itself.
+
+The execute_process command is a newer more powerful version of
+exec_program, but the old command has been kept for compatibility.