zig

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

commit 3c221463fd89caf08ee1bd24ea03d49e0c6e7f07 (tree)
parent 544397ce6d2926858217eb013dfcfcd0a5b3e3c6
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Thu, 18 Apr 2024 16:38:11 -0700

Merge pull request #19689 from nektro/nektro-patch-29794

std: fix and add test for Build.dependencyFromBuildZig
Diffstat:
Mlib/std/Build.zig | 2+-
Mtest/standalone/build.zig.zon | 3+++
Atest/standalone/dependencyFromBuildZig/build.zig | 12++++++++++++
Atest/standalone/dependencyFromBuildZig/build.zig.zon | 10++++++++++
Atest/standalone/dependencyFromBuildZig/other/add.zig | 3+++
Atest/standalone/dependencyFromBuildZig/other/build.zig | 7+++++++
Atest/standalone/dependencyFromBuildZig/other/build.zig.zon | 6++++++
7 files changed, 42 insertions(+), 1 deletion(-)

diff --git a/lib/std/Build.zig b/lib/std/Build.zig @@ -1975,7 +1975,7 @@ pub fn dependencyFromBuildZig( const dep_name = for (b.available_deps) |dep| { if (mem.eql(u8, dep[1], pkg_hash)) break dep[1]; } else break :find_dep; - return dependencyInner(b, dep_name, pkg.build_root, pkg.build_zig, pkg.deps, args); + return dependencyInner(b, dep_name, pkg.build_root, pkg.build_zig, pkg_hash, pkg.deps, args); } const full_path = b.pathFromRoot("build.zig.zon"); diff --git a/test/standalone/build.zig.zon b/test/standalone/build.zig.zon @@ -158,6 +158,9 @@ .install_headers = .{ .path = "install_headers", }, + .dependencyFromBuildZig = .{ + .path = "dependencyFromBuildZig", + }, }, .paths = .{ "build.zig", diff --git a/test/standalone/dependencyFromBuildZig/build.zig b/test/standalone/dependencyFromBuildZig/build.zig @@ -0,0 +1,12 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const test_step = b.step("test", "Test it"); + b.default_step = test_step; + + const dep1 = b.dependency("other", .{}); + + const dep2 = b.dependencyFromBuildZig(@import("other"), .{}); + + std.debug.assert(dep1.module("add") == dep2.module("add")); +} diff --git a/test/standalone/dependencyFromBuildZig/build.zig.zon b/test/standalone/dependencyFromBuildZig/build.zig.zon @@ -0,0 +1,10 @@ +.{ + .name = "dependencyFromBuildZig", + .version = "0.0.0", + .dependencies = .{ + .other = .{ + .path = "other", + }, + }, + .paths = .{""}, +} diff --git a/test/standalone/dependencyFromBuildZig/other/add.zig b/test/standalone/dependencyFromBuildZig/other/add.zig @@ -0,0 +1,3 @@ +pub fn add(x: u32, y: u32) u32 { + return x + y; +} diff --git a/test/standalone/dependencyFromBuildZig/other/build.zig b/test/standalone/dependencyFromBuildZig/other/build.zig @@ -0,0 +1,7 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + _ = b.addModule("add", .{ + .root_source_file = b.path("add.add.zig"), + }); +} diff --git a/test/standalone/dependencyFromBuildZig/other/build.zig.zon b/test/standalone/dependencyFromBuildZig/other/build.zig.zon @@ -0,0 +1,6 @@ +.{ + .name = "other", + .version = "0.0.0", + .dependencies = .{}, + .paths = .{""}, +}