summaryrefslogtreecommitdiff
path: root/build.zig
blob: c6aaa70318ec1d1f1773a28bb73d191695822d50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
const std = @import( "std" );

pub fn build( b: *std.Build ) void {
  const target = b.standardTargetOptions( .{} );
  const optimize = b.standardOptimizeOption( .{} );
  const exe_mod = b.createModule(.{
    .root_source_file = b.path( "src/main.zig" ),
    .target = target,
    .optimize = optimize,
  });

  const exe = b.addExecutable(.{
    .name = "zjisho",
    .root_module = exe_mod,
  } );

  b.installArtifact( exe );
  const run_cmd = b.addRunArtifact( exe );
  const check_exe = b.addExecutable(.{
    .name = "zjisho",
    .root_module = exe_mod,
  });

  const check = b.step( "check", "check compile result" );
  check.dependOn( &check_exe.step );

  run_cmd.step.dependOn( b.getInstallStep( ));

  if ( b.args ) |args| {
    run_cmd.addArgs( args );
  }

  const run_step = b.step( "run", "Run the app" );
  run_step.dependOn( &run_cmd.step );

  const exe_unit_tests = b.addTest(.{
    .root_module = exe_mod,
  });

  const run_exe_unit_tests = b.addRunArtifact( exe_unit_tests );
  const test_step = b.step( "test", "Run unit tests" );
  test_step.dependOn( &run_exe_unit_tests.step );
}