id = "qbs"
name = "Qbs"
homepage = "https://qbs.io/"
description = "An easy-to-use, cross-platform build tool"
executables = ["qbs"]
[dotfiles]
paths = [
"[configHome]/QtProject/qbs/",
"%APPDATA%/QtProject/qbs/",
"~/Library/Preferences/qbs/",
]
secret = []
[commands]
format = 1
label = "Qbs"
description = "Build a Qbs project. Pass configuration and property overrides (config:debug, cpp.optimization:none) in the extra arguments field. Other qbs commands are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false }
[[commands.subcommand]]
path = ["build"]
label = "Build a project"
description = "Build products in one or more configurations."
[[commands.subcommand.source]]
id = "manual"
kind = "manual"
url = "https://doc.qt.io/qbs/cli-build.html"
revision = "Qbs 3.1.0"
evidence = """
qbs build [options] [[config:configuration-name] [property:value] ...]
--all-products
--build-directory|-d <directory>
--dry-run|-n
[--file|-f <file>]
--jobs|-j <n>
--keep-going|-k
--less-verbose|-q
--log-level <level>
Possible values of <level> are:
error
warning
info (default value)
debug
trace
--more-verbose|-v
--no-install
--products|-p <name>[,<name>...]
--show-progress
--clean-install-root
"""
[[commands.subcommand.field]]
id = "file"
label = "Project file"
type = "path"
option = ["--file", "-f"]
path = { kind = "any", role = "input", must_exist = true }
sources = ["manual"]
[[commands.subcommand.field]]
id = "build_directory"
label = "Build directory"
type = "path"
option = ["--build-directory", "-d"]
path = { kind = "directory", role = "output", must_exist = false }
sources = ["manual"]
[[commands.subcommand.field]]
id = "products"
label = "Products"
description = "Comma-separated product names."
type = "string"
option = ["--products", "-p"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "jobs"
label = "Concurrent jobs"
type = "integer"
option = ["--jobs", "-j"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "all_products"
label = "All products"
type = "boolean"
option = ["--all-products"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "keep_going"
label = "Keep going on errors"
type = "boolean"
option = ["--keep-going", "-k"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "dry_run"
label = "Dry run"
type = "boolean"
option = ["--dry-run", "-n"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "no_install"
label = "Skip install"
type = "boolean"
option = ["--no-install"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "clean_install_root"
label = "Clean install root first"
type = "boolean"
option = ["--clean-install-root"]
effect = "delete"
sources = ["manual"]
[[commands.subcommand.field]]
id = "show_progress"
label = "Show progress"
type = "boolean"
option = ["--show-progress"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "log_level"
label = "Log level"
type = "enum"
option = ["--log-level"]
choices = [{ value = "error", label = "Error" }, { value = "warning", label = "Warning" }, { value = "info", label = "Info" }, { value = "debug", label = "Debug" }, { value = "trace", label = "Trace" }]
sources = ["manual"]
[[commands.subcommand.field]]
id = "more_verbose"
label = "More verbose"
type = "count"
option = ["--more-verbose", "-v"]
sources = ["manual"]
[[commands.subcommand.field]]
id = "overrides"
label = "Configuration and property overrides"
description = "For example config:debug cpp.optimization:none."
type = "string"
position = 0
multiple = true
sources = ["manual"]
[[commands.subcommand.task]]
id = "build"
label = "Build"
fields = ["file", "build_directory", "products", "jobs", "overrides"]
required = []
[[commands.subcommand.task]]
id = "debug-build"
label = "Debug build"
set = { overrides = ["config:debug"] }
fields = ["file", "build_directory", "jobs", "overrides"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["file", "build_directory", "products", "jobs", "overrides"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["all_products", "keep_going", "dry_run", "no_install", "clean_install_root", "show_progress", "log_level", "more_verbose"]