zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit ef92c156b5ce1fade3106fc0d79af36bb4409246 (tree)
parent f925e1379aa53228610df9b7ffc3d87dbcce0dbb
Author: Matthew Lugg <mlugg@mlugg.co.uk>
Date:   Wed, 21 May 2025 10:33:30 +0100

Merge pull request #23946 from mlugg/build-step-run-cwd

std.Build.Step.Run: inherit build runner cwd
Diffstat:
Mlib/std/Build/Step/Run.zig | 3---
Mtest/standalone/options/build.zig | 2+-
Mtest/tests.zig | 27+++++++++++++++++----------
3 files changed, 18 insertions(+), 14 deletions(-)

diff --git a/lib/std/Build/Step/Run.zig b/lib/std/Build/Step/Run.zig @@ -1334,9 +1334,6 @@ fn spawnChildAndCollect( var child = std.process.Child.init(argv, arena); if (run.cwd) |lazy_cwd| { child.cwd = lazy_cwd.getPath2(b, &run.step); - } else { - child.cwd = b.build_root.path; - child.cwd_dir = b.build_root.handle; } child.env_map = run.env_map orelse &b.graph.env_map; child.request_resource_usage_statistics = true; diff --git a/test/standalone/options/build.zig b/test/standalone/options/build.zig @@ -8,7 +8,7 @@ pub fn build(b: *std.Build) void { }) }); const options = b.addOptions(); - main.addOptions("build_options", options); + main.root_module.addOptions("build_options", options); options.addOption(bool, "bool_true", b.option(bool, "bool_true", "t").?); options.addOption(bool, "bool_false", b.option(bool, "bool_false", "f").?); options.addOption(u32, "int", b.option(u32, "int", "i").?); diff --git a/test/tests.zig b/test/tests.zig @@ -1657,16 +1657,23 @@ pub fn addCliTests(b: *std.Build) *Step { } { - // TODO this should move to become a CLI test rather than standalone - // cases.addBuildFile("test/standalone/options/build.zig", .{ - // .extra_argv = &.{ - // "-Dbool_true", - // "-Dbool_false=false", - // "-Dint=1234", - // "-De=two", - // "-Dstring=hello", - // }, - // }); + const run_test = b.addSystemCommand(&.{ + b.graph.zig_exe, + "build", + "test", + "-Dbool_true", + "-Dbool_false=false", + "-Dint=1234", + "-De=two", + "-Dstring=hello", + }); + run_test.addArg("--build-file"); + run_test.addFileArg(b.path("test/standalone/options/build.zig")); + run_test.addArg("--cache-dir"); + run_test.addFileArg(.{ .cwd_relative = b.cache_root.join(b.allocator, &.{}) catch @panic("OOM") }); + run_test.setName("test build options"); + + step.dependOn(&run_test.step); } return step;