aboutsummaryrefslogtreecommitdiff
path: root/lib/build_runner.zig
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2022-09-16 23:49:00 +0300
committerGitHub <noreply@github.com>2022-09-16 23:49:00 +0300
commitb2aedb07096fa4ed8766d3aa87e70704cee68265 (patch)
tree415ec2d04881991f541477ec0d0c1d96a21d056d /lib/build_runner.zig
parent8edd7219c0d5cc5799ae26ee8299b4d4114f7aed (diff)
parent31daea74d23be813737892a166cc16ade1272a1a (diff)
downloadzig-b2aedb07096fa4ed8766d3aa87e70704cee68265.tar.gz
zig-b2aedb07096fa4ed8766d3aa87e70704cee68265.zip
Merge pull request #12796 from Vexu/referenced-by-v2
stage2: add referenced by trace to compile errors attempt #2 (+ some fixes)
Diffstat (limited to 'lib/build_runner.zig')
-rw-r--r--lib/build_runner.zig12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/build_runner.zig b/lib/build_runner.zig
index 523723ddf2..f47822f0b7 100644
--- a/lib/build_runner.zig
+++ b/lib/build_runner.zig
@@ -185,6 +185,16 @@ pub fn main() !void {
builder.use_stage1 = true;
} else if (mem.eql(u8, arg, "-fno-stage1")) {
builder.use_stage1 = false;
+ } else if (mem.eql(u8, arg, "-freference-trace")) {
+ builder.reference_trace = 256;
+ } else if (mem.startsWith(u8, arg, "-freference-trace=")) {
+ const num = arg["-freference-trace=".len..];
+ builder.reference_trace = std.fmt.parseUnsigned(u32, num, 10) catch |err| {
+ std.debug.print("unable to parse reference_trace count '{s}': {s}", .{ num, @errorName(err) });
+ process.exit(1);
+ };
+ } else if (mem.eql(u8, arg, "-fno-reference-trace")) {
+ builder.reference_trace = null;
} else if (mem.eql(u8, arg, "--")) {
builder.args = argsRest(args, arg_idx);
break;
@@ -308,6 +318,8 @@ fn usage(builder: *Builder, already_ran_build: bool, out_stream: anytype) !void
\\Advanced Options:
\\ -fstage1 Force using bootstrap compiler as the codegen backend
\\ -fno-stage1 Prevent using bootstrap compiler as the codegen backend
+ \\ -freference-trace[=num] How many lines of reference trace should be shown per compile error
+ \\ -fno-reference-trace Disable reference trace
\\ --build-file [file] Override path to build.zig
\\ --cache-dir [path] Override path to local Zig cache directory
\\ --global-cache-dir [path] Override path to global Zig cache directory