aboutsummaryrefslogtreecommitdiff
path: root/bpkg/common-options.cli
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-09-02 17:09:57 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-09-02 17:09:57 +0200
commit94c3574492b6db6ae8d5fbef717f8e6f92f1d402 (patch)
treed5cee1ec9d601fbf9da02f82b9ca8431880aea0b /bpkg/common-options.cli
parent317cf86dedbd72aacc673c6257cc178e76ee77e3 (diff)
Command line options/commands/help infrastructure
Diffstat (limited to 'bpkg/common-options.cli')
-rw-r--r--bpkg/common-options.cli48
1 files changed, 48 insertions, 0 deletions
diff --git a/bpkg/common-options.cli b/bpkg/common-options.cli
new file mode 100644
index 0000000..326cf64
--- /dev/null
+++ b/bpkg/common-options.cli
@@ -0,0 +1,48 @@
+// file : bpkg/common-options.cli
+// copyright : Copyright (c) 2014-2015 Code Synthesis Ltd
+// license : MIT; see accompanying LICENSE file
+
+include <cstdint>;
+
+namespace bpkg
+{
+ class common_options = 0
+ {
+ bool -v
+ {
+ "Print actual commands being executed. This is equivalent to
+ \cb{--verbose 1}."
+ };
+
+ std::uint16_t --verbose = 0
+ {
+ "<level>",
+ "Set the diagnostics verbosity to <level> which can be between 0
+ (disabled) and 5 (lots of information). @@ Need to document
+ further."
+ };
+
+ // The following option is "fake" in that it is actually handled by
+ // argv_file_scanner. We have it here for documentation.
+ //
+ std::string --options-file
+ {
+ "<file>",
+ "Read additional options from <file> with each option appearing on a
+ separate line optionally followed by space and an option value. Empty
+ lines and lines starting with \cb{#} are ignored. Option values can
+ be enclosed in double (\cb{\"}) or single (\cb{'}) quotes to preserve
+ leading and trailing whitespaces as well as to specify empty values.
+ If the value itself contains trailing or leading quotes, enclose it
+ with an extra pair of quotes, for example \cb{'\"x\"'}. Non-leading
+ and non-trailing quotes are interpreted as being part of the option
+ value.
+
+ The semantics of providing options in a file is equivalent to providing
+ the same set of options in the same order on the command line at the
+ point where the \cb{--options-file} option is specified except that
+ the shell escaping and quoting is not required. You can repeat this
+ option to specify more than one options file."
+ };
+ };
+}