Skip to content

Commit

Permalink
accept registry option as LazyPath
Browse files Browse the repository at this point in the history
This allows passing LazyPaths obtained from dependencies to
the vulkan-zig dependency, which streamlines using vulkan-zig
with Vulkan-Headers provided by the package manager.
  • Loading branch information
Snektron committed Dec 29, 2024
1 parent dd6e61d commit 05c8b68
Showing 1 changed file with 8 additions and 10 deletions.
18 changes: 8 additions & 10 deletions examples/build.zig
Original file line number Diff line number Diff line change
Expand Up @@ -19,18 +19,16 @@ pub fn build(b: *std.Build) void {
b.installArtifact(triangle_exe);
triangle_exe.linkSystemLibrary("glfw");

const vk_gen = b.dependency("vulkan_zig", .{}).artifact("vulkan-zig-generator");
const vk_generate_cmd = b.addRunArtifact(vk_gen);
const registry_path: std.Build.LazyPath = if (maybe_override_registry) |override_registry|
.{ .cwd_relative = override_registry }
else
registry;

if (maybe_override_registry) |override_registry| {
vk_generate_cmd.addFileArg(.{ .cwd_relative = override_registry });
} else {
vk_generate_cmd.addFileArg(registry);
}
const vulkan = b.dependency("vulkan_zig", .{
.registry = registry_path,
}).module("vulkan-zig");

triangle_exe.root_module.addAnonymousImport("vulkan", .{
.root_source_file = vk_generate_cmd.addOutputFileArg("vk.zig"),
});
triangle_exe.root_module.addImport("vulkan", vulkan);

const vert_cmd = b.addSystemCommand(&.{
"glslc",
Expand Down

0 comments on commit 05c8b68

Please sign in to comment.