-
Notifications
You must be signed in to change notification settings - Fork 0
Reference | Settings
Settings are specified as operations inside the xakeScript computation expression.
do xakeScript {
filelog "build.log" Diag
consolelog Verbosity.Quiet
var "NETFX" "4.5"
want ["build"]
varschema vars
rules [ ... ]
}Adds multiple rules at once. Can be used multiple times.
rules [
"main" <== ["build"]
"clean" => rm {dir "out"}
]Adds a single rule.
rule ("clean" => rm {dir "out"})Shorthand for adding a phony rule.
phony "hello" (recipe { do! trace Message "Hi!" })Defines the default target list. Overridden by command-line targets if any are specified.
want ["main"]Sets the target list unconditionally, ignoring command-line targets.
wantOverride ["build"; "test"]Defines a script variable value.
var "VERSION" "1.0.0"Registers a typed variable schema for --help output and recipe binding. See Variables.
varschema varsSets the log file name and verbosity level.
filelog "build.log" Diag
filelog "errors.log" Verbosity.ChattySets the console output verbosity. Default is Normal.
consolelog Verbosity.Diag
consolelog Verbosity.QuietSets the project root directory. All relative paths in rules and filesets resolve from this directory. Defaults to the current working directory.
rootdir "/tmp/build"Enables dry-run mode — Xake displays the dependency graph and time estimates without executing rules. Same as --dryrun CLI flag.
dryrunDisables the .xake build database. Every target always rebuilds. Useful for engine mode or CI builds where persistence is not needed.
noPersistRegisters targets to execute during XakeEngine.StopAsync. See Engine.
teardown ["cleanup"; "report"]| Level | Description |
|---|---|
Silent |
No output |
Quiet |
Errors only |
Normal |
Default — errors, warnings, commands |
Loud |
Adds info messages |
Chatty |
Adds debug messages |
Diag |
Everything including verbose traces |