This repository has no description
1.3 kB
41 lines
1const std = @import("std");
2
3pub fn build(b: *std.Build) void {
4 const target = b.standardTargetOptions(.{});
5 const optimize = b.standardOptimizeOption(.{});
6
7 const zat = b.dependency("zat", .{ .target = target, .optimize = optimize });
8
9 const pensieve_mod = b.createModule(.{
10 .root_source_file = b.path("src/root.zig"),
11 .target = target,
12 .optimize = optimize,
13 .imports = &.{
14 .{ .name = "zat", .module = zat.module("zat") },
15 },
16 });
17
18 const exe_mod = b.createModule(.{
19 .root_source_file = b.path("src/main.zig"),
20 .target = target,
21 .optimize = optimize,
22 .imports = &.{
23 .{ .name = "pensieve", .module = pensieve_mod },
24 .{ .name = "zat", .module = zat.module("zat") },
25 },
26 });
27
28 const exe = b.addExecutable(.{
29 .name = "pensieve",
30 .root_module = exe_mod,
31 });
32 b.installArtifact(exe);
33
34 const run = b.addRunArtifact(exe);
35 if (b.args) |args| run.addArgs(args);
36 b.step("run", "Run pensieve").dependOn(&run.step);
37
38 const tests = b.addTest(.{ .root_module = pensieve_mod });
39 const run_tests = b.addRunArtifact(tests);
40 b.step("test", "Run tests").dependOn(&run_tests.step);
41}