ona/build.zig

51 lines
1.1 KiB
Zig
Raw Normal View History

2023-04-19 01:25:35 +02:00
const std = @import("std");
2023-05-28 03:26:41 +02:00
pub fn build(b: *std.Build) void {
const coral_module = b.createModule(.{.source_file = .{.path = "./source/coral/coral.zig"}});
2023-04-19 01:25:35 +02:00
2023-05-28 03:26:41 +02:00
const ona_module = b.createModule(.{
2023-04-19 01:25:35 +02:00
.source_file = .{.path = "./source/ona/ona.zig"},
.dependencies = &.{
.{
.name = "coral",
.module = coral_module,
2023-04-19 01:25:35 +02:00
},
},
});
2023-05-28 03:26:41 +02:00
const cross_target = b.standardTargetOptions(.{});
const optimize_mode = std.builtin.Mode.Debug;
// Ona runner.
2023-04-19 01:25:35 +02:00
{
2023-05-28 03:26:41 +02:00
const ona_exe = b.addExecutable(.{
2023-04-19 01:25:35 +02:00
.name = "ona-runner",
.root_source_file = .{.path = "./source/runner.zig"},
2023-05-28 03:26:41 +02:00
.target = cross_target,
.optimize = optimize_mode,
2023-04-19 01:25:35 +02:00
});
ona_exe.addModule("coral", coral_module);
ona_exe.addModule("ona", ona_module);
// ona_exe.addIncludeDir("./ext");
ona_exe.linkSystemLibrary("SDL2");
ona_exe.linkLibC();
2023-05-28 03:26:41 +02:00
b.installArtifact(ona_exe);
}
// Test step.
{
const exe_tests = b.addTest(.{
.root_source_file = .{.path = "source/test.zig"},
.target = cross_target,
.optimize = optimize_mode,
});
const test_step = b.step("test", "Run unit tests");
test_step.dependOn(&exe_tests.step);
2023-04-19 01:25:35 +02:00
}
}