summaryrefslogtreecommitdiff
path: root/build.zig
diff options
context:
space:
mode:
Diffstat (limited to 'build.zig')
-rw-r--r--build.zig27
1 files changed, 27 insertions, 0 deletions
diff --git a/build.zig b/build.zig
index 3cf69aa..6ba73d9 100644
--- a/build.zig
+++ b/build.zig
@@ -54,6 +54,16 @@ pub fn build(b: *std.Build) void {
54 const run_gbp_gen_exe = b.addRunArtifact(gbp_gen_exe); 54 const run_gbp_gen_exe = b.addRunArtifact(gbp_gen_exe);
55 const gbp_gen_out = run_gbp_gen_exe.addOutputFileArg("gbp.zig"); 55 const gbp_gen_out = run_gbp_gen_exe.addOutputFileArg("gbp.zig");
56 56
57 // Emoji
58 const emoji_gen_exe = b.addExecutable(.{
59 .name = "emoji",
60 .root_source_file = b.path("codegen/emoji.zig"),
61 .target = b.graph.host,
62 .optimize = .Debug,
63 });
64 const run_emoji_gen_exe = b.addRunArtifact(emoji_gen_exe);
65 const emoji_gen_out = run_emoji_gen_exe.addOutputFileArg("emoji.bin.z");
66
57 const wbp_gen_exe = b.addExecutable(.{ 67 const wbp_gen_exe = b.addExecutable(.{
58 .name = "wbp", 68 .name = "wbp",
59 .root_module = b.createModule(.{ 69 .root_module = b.createModule(.{
@@ -262,6 +272,22 @@ pub fn build(b: *std.Build) void {
262 }); 272 });
263 const grapheme_tr = b.addRunArtifact(grapheme_t); 273 const grapheme_tr = b.addRunArtifact(grapheme_t);
264 274
275 // Emoji module
276 const emoji = b.addModule("Emoji", .{
277 .root_source_file = b.path("src/Emoji.zig"),
278 .target = target,
279 .optimize = optimize,
280 });
281 emoji.addAnonymousImport("emoji", .{ .root_source_file = emoji_gen_out });
282
283 const emoji_t = b.addTest(.{
284 .name = "Emoji",
285 .root_module = emoji,
286 .target = target,
287 .optimize = optimize,
288 });
289 const emoji_tr = b.addRunArtifact(emoji_t);
290
265 // Word Breaking 291 // Word Breaking
266 const words = b.addModule("Words", .{ 292 const words = b.addModule("Words", .{
267 .root_source_file = b.path("src/Words.zig"), 293 .root_source_file = b.path("src/Words.zig"),
@@ -499,6 +525,7 @@ pub fn build(b: *std.Build) void {
499 test_step.dependOn(&code_point_tr.step); 525 test_step.dependOn(&code_point_tr.step);
500 test_step.dependOn(&display_width_tr.step); 526 test_step.dependOn(&display_width_tr.step);
501 test_step.dependOn(&grapheme_tr.step); 527 test_step.dependOn(&grapheme_tr.step);
528 test_step.dependOn(&emoji_tr.step);
502 test_step.dependOn(&words_tr.step); 529 test_step.dependOn(&words_tr.step);
503 test_step.dependOn(&ascii_tr.step); 530 test_step.dependOn(&ascii_tr.step);
504 test_step.dependOn(&ccc_data_tr.step); 531 test_step.dependOn(&ccc_data_tr.step);