summaryrefslogtreecommitdiff
path: root/build.zig
diff options
context:
space:
mode:
Diffstat (limited to 'build.zig')
-rw-r--r--build.zig16
1 files changed, 9 insertions, 7 deletions
diff --git a/build.zig b/build.zig
index 49550fc5..5fa3081a 100644
--- a/build.zig
+++ b/build.zig
@@ -554,11 +554,15 @@ pub fn build(b: *std.Build) void {
.tables_path = uucode_tables,
}).module("uucode");
- const vaxis_mod: ?*std.Build.Module = if (!is_web) b.dependency("vaxis", .{
+ // Core grapheme/display-width code uses vaxis.gwidth on every platform.
+ // The web build consumes only that lazy Zig path; terminal IO remains
+ // unreachable, while omitting the module makes the shared core fail at
+ // @import("vaxis") before the browser snapshot can render terminal panes.
+ const vaxis_mod = b.dependency("vaxis", .{
.target = target,
.optimize = optimize,
.external_uucode = true,
- }).module("vaxis") else null;
+ }).module("vaxis");
var ghostty_vt_for_snap: ?*std.Build.Module = null;
// ghostty's simd libs (simdutf/highway, C++) locate the Apple SDK via
@@ -604,11 +608,9 @@ pub fn build(b: *std.Build) void {
hx_core_mod.addImport("ghostty-vt", ghostty_vt);
}
// override uucode on vaxis LAST so it wins over ghostty's build() wiring.
- if (vaxis_mod) |vaxis| {
- vaxis.addImport("uucode", uucode_mod);
- root_mod.addImport("vaxis", vaxis);
- hx_core_mod.addImport("vaxis", vaxis);
- }
+ vaxis_mod.addImport("uucode", uucode_mod);
+ root_mod.addImport("vaxis", vaxis_mod);
+ hx_core_mod.addImport("vaxis", vaxis_mod);
root_mod.addImport("uucode", uucode_mod);
hx_core_mod.addImport("uucode", uucode_mod);