aboutsummaryrefslogtreecommitdiff
path: root/build2/b.cli
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-12-16 09:43:38 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-12-16 09:43:38 +0200
commit630dc4ccf3207f7cdd5b410582e1e572081b80e8 (patch)
treedc6b4dfb5608799fc63f4f1b6f6fceee8530cb0c /build2/b.cli
parentb3df2f69ff340e2c5c6d215bea6689594f0a3d80 (diff)
Add support for structured result output (--structured-result)
Diffstat (limited to 'build2/b.cli')
-rw-r--r--build2/b.cli26
1 files changed, 25 insertions, 1 deletions
diff --git a/build2/b.cli b/build2/b.cli
index 724a676..d7634c0 100644
--- a/build2/b.cli
+++ b/build2/b.cli
@@ -21,7 +21,7 @@ namespace build2
\h|DESCRIPTION|
- The \cb{build2} driver performs a set of meta-operations on operations on
+ The \cb{build2} driver executes a set of meta-operations on operations on
targets according to the build specification, or <buildspec> for short.
This process can be controlled by specifying driver <options> and build
system <variables>.
@@ -424,6 +424,30 @@ namespace build2
\c{-j 0} for default concurrency)."
}
+ bool --structured-result
+ {
+ "Write the result of execution in a structured form. In this mode,
+ instead of printing to \cb{STDERR} diagnostics messages about the
+ outcome of executing actions on targets, the driver writes to
+ \cb{STDOUT} a structured result description one line per the
+ buildspec action/target pair. Each line has the following format:
+
+ \c{\i{state} \i{meta-operation} \i{operation} \i{target}}
+
+ Where \ci{state} can be one of \cb{unchanged}, \cb{changed}, or
+ \cb{failed}. If the action is a pre or post operation, then the
+ outer operation is specified in parenthesis. For example:
+
+ \
+ unchanged perform update(test) dir{./}
+ changed perform test dir{./}
+ \
+
+ Currently only the \cb{perform} meta-operation supports the structured
+ result output.
+ "
+ }
+
bool --match-only
{
"Match the rules but do not execute the operation. This mode is primarily