╭ build.zig ────────────────────────────────────────────────────╮ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ╰───────────────────────────────────────────────────────────────╯
╭────╮ ╭ clone ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ╮ │http│ ssh │ │ ╰────╯ ╰ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ╯
1 const std = @import("std"); 2 3 pub fn build(b: *std.Build) void { 4 const target = b.standardTargetOptions(.{}); 5 const optimize = b.standardOptimizeOption(.{}); 6 7 const install_main_exe = blk: { 8 const exe = b.addExecutable(.{ 9 .name = "haxy", 10 .root_module = b.createModule(.{ 11 .root_source_file = b.path("src/main.zig"), 12 .target = target, 13 .optimize = optimize, 14 }), 15 }); 16 exe.root_module.addImport("xit", b.dependency("xit", .{}).module("xit")); 17 18 const install_exe = b.addInstallArtifact(exe, .{}); 19 b.getInstallStep().dependOn(&install_exe.step); 20 21 const run_cmd = b.addRunArtifact(exe); 22 23 run_cmd.step.dependOn(b.getInstallStep()); 24 25 if (b.args) |args| { 26 run_cmd.addArgs(args); 27 } 28 29 const run_step = b.step("run", "Run the app"); 30 run_step.dependOn(&run_cmd.step); 31 32 break :blk install_exe; 33 }; 34 35 { 36 const unit_tests = b.addTest(.{ 37 .root_module = b.createModule(.{ 38 .root_source_file = b.path("src/test.zig"), 39 .target = target, 40 .optimize = optimize, 41 }), 42 }); 43 unit_tests.root_module.addImport("xit", b.dependency("xit", .{}).module("xit")); 44 45 const run_unit_tests = b.addRunArtifact(unit_tests); 46 run_unit_tests.has_side_effects = true; 47 const test_step = b.step("test", "Run unit tests"); 48 test_step.dependOn(&install_main_exe.step); 49 test_step.dependOn(&run_unit_tests.step); 50 } 51 52 { 53 const unit_tests = b.addTest(.{ 54 .root_module = b.createModule(.{ 55 .root_source_file = b.path("src/testnet.zig"), 56 .target = target, 57 .optimize = optimize, 58 }), 59 }); 60 unit_tests.root_module.addImport("xit", b.dependency("xit", .{}).module("xit")); 61 62 const run_unit_tests = b.addRunArtifact(unit_tests); 63 run_unit_tests.has_side_effects = true; 64 const test_step = b.step("testnet", "Run network unit tests"); 65 test_step.dependOn(&install_main_exe.step); 66 test_step.dependOn(&run_unit_tests.step); 67 } 68 } 69