67 lines
2.1 KiB
Zig
67 lines
2.1 KiB
Zig
const std = @import("std");
|
|
|
|
pub fn build(b: *std.Build) void {
|
|
const target = b.standardTargetOptions(.{});
|
|
const optimize = b.standardOptimizeOption(.{});
|
|
|
|
const libxkbcommon = b.dependency("libxkbcommon", .{
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
|
|
const module = b.addModule("wayland", .{
|
|
.root_source_file = .{ .path = "src/main.zig" },
|
|
.imports = &.{
|
|
.{ .name = "xkbcommon", .module = libxkbcommon.module("xkbcommon") },
|
|
},
|
|
});
|
|
|
|
const lib = b.addStaticLibrary(.{
|
|
.name = "zig-wayland-wire",
|
|
.root_source_file = .{ .path = "src/main.zig" },
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
b.installArtifact(lib);
|
|
|
|
const main_tests = b.addTest(.{
|
|
.root_source_file = .{ .path = "src/main.zig" },
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
|
|
const run_main_tests = b.addRunArtifact(main_tests);
|
|
|
|
const test_step = b.step("test", "Run library tests");
|
|
test_step.dependOn(&run_main_tests.step);
|
|
|
|
const client_connect_raw_exe = b.addExecutable(.{
|
|
.name = "00_client_connect",
|
|
.root_source_file = .{ .path = "examples/00_client_connect.zig" },
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
b.installArtifact(client_connect_raw_exe);
|
|
|
|
const client_connect_exe = b.addExecutable(.{
|
|
.name = "01_client_connect",
|
|
.root_source_file = .{ .path = "examples/01_client_connect.zig" },
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
client_connect_exe.root_module.addImport("wayland", module);
|
|
b.installArtifact(client_connect_exe);
|
|
|
|
// Text Editor example
|
|
const text_editor_exe = b.addExecutable(.{
|
|
.name = "10_text_editor",
|
|
.root_source_file = .{ .path = "examples/10_text_editor.zig" },
|
|
.target = target,
|
|
.optimize = optimize,
|
|
});
|
|
text_editor_exe.root_module.addImport("wayland", module);
|
|
text_editor_exe.linkLibC();
|
|
text_editor_exe.addIncludePath(.{ .path = "deps/font8x8/" });
|
|
b.installArtifact(text_editor_exe);
|
|
}
|