mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-08-02 14:57:31 +03:00
build: add libintl for macOS builds
This commit is contained in:
@ -63,6 +63,7 @@
|
|||||||
.gtk4_layer_shell = .{ .path = "./pkg/gtk4-layer-shell" },
|
.gtk4_layer_shell = .{ .path = "./pkg/gtk4-layer-shell" },
|
||||||
.harfbuzz = .{ .path = "./pkg/harfbuzz" },
|
.harfbuzz = .{ .path = "./pkg/harfbuzz" },
|
||||||
.highway = .{ .path = "./pkg/highway" },
|
.highway = .{ .path = "./pkg/highway" },
|
||||||
|
.libintl = .{ .path = "./pkg/libintl" },
|
||||||
.libpng = .{ .path = "./pkg/libpng" },
|
.libpng = .{ .path = "./pkg/libpng" },
|
||||||
.macos = .{ .path = "./pkg/macos" },
|
.macos = .{ .path = "./pkg/macos" },
|
||||||
.oniguruma = .{ .path = "./pkg/oniguruma" },
|
.oniguruma = .{ .path = "./pkg/oniguruma" },
|
||||||
|
@ -359,6 +359,12 @@ pub fn build(b: *std.Build) !void {
|
|||||||
lib.addIncludePath(b.path(""));
|
lib.addIncludePath(b.path(""));
|
||||||
lib.addIncludePath(upstream.path("gettext-runtime/intl"));
|
lib.addIncludePath(upstream.path("gettext-runtime/intl"));
|
||||||
lib.addIncludePath(upstream.path("gettext-runtime/intl/gnulib-lib"));
|
lib.addIncludePath(upstream.path("gettext-runtime/intl/gnulib-lib"));
|
||||||
|
|
||||||
|
if (target.result.isDarwin()) {
|
||||||
|
const apple_sdk = @import("apple_sdk");
|
||||||
|
try apple_sdk.addPaths(b, &lib.root_module);
|
||||||
|
}
|
||||||
|
|
||||||
lib.addConfigHeader(config);
|
lib.addConfigHeader(config);
|
||||||
lib.addCSourceFiles(.{
|
lib.addCSourceFiles(.{
|
||||||
.root = upstream.path("gettext-runtime/intl"),
|
.root = upstream.path("gettext-runtime/intl"),
|
||||||
@ -389,12 +395,16 @@ const srcs: []const []const u8 = &.{
|
|||||||
"localealias.c",
|
"localealias.c",
|
||||||
"log.c",
|
"log.c",
|
||||||
"ngettext.c",
|
"ngettext.c",
|
||||||
"osdep.c",
|
|
||||||
"plural-exp.c",
|
"plural-exp.c",
|
||||||
"plural.c",
|
"plural.c",
|
||||||
"printf.c",
|
|
||||||
"setlocale.c",
|
"setlocale.c",
|
||||||
"textdomain.c",
|
"textdomain.c",
|
||||||
"version.c",
|
"version.c",
|
||||||
"compat.c",
|
"compat.c",
|
||||||
|
|
||||||
|
// Not needed for macOS, but we might need them for other platforms.
|
||||||
|
// If we expand this to support other platforms, we should uncomment
|
||||||
|
// these.
|
||||||
|
// "osdep.c",
|
||||||
|
// "printf.c",
|
||||||
};
|
};
|
||||||
|
@ -7,5 +7,7 @@
|
|||||||
.url = "https://deps.files.ghostty.org/gettext-0.24.tar.gz",
|
.url = "https://deps.files.ghostty.org/gettext-0.24.tar.gz",
|
||||||
.hash = "1220f870c853529233ea64a108acaaa81f8d06d7ff4b66c76930be7d78d508aff7a2",
|
.hash = "1220f870c853529233ea64a108acaaa81f8d06d7ff4b66c76930be7d78d508aff7a2",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
.apple_sdk = .{ .path = "../apple-sdk" },
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -381,6 +381,17 @@ pub fn add(
|
|||||||
if (self.config.renderer == .opengl) {
|
if (self.config.renderer == .opengl) {
|
||||||
step.linkFramework("OpenGL");
|
step.linkFramework("OpenGL");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Apple platforms do not include libc libintl so we bundle it.
|
||||||
|
// This is LGPL but since our source code is open source we are
|
||||||
|
// in compliance with the LGPL since end users can modify this
|
||||||
|
// build script to replace the bundled libintl with their own.
|
||||||
|
const libintl_dep = b.dependency("libintl", .{
|
||||||
|
.target = target,
|
||||||
|
.optimize = optimize,
|
||||||
|
});
|
||||||
|
step.linkLibrary(libintl_dep.artifact("intl"));
|
||||||
|
try static_libs.append(libintl_dep.artifact("intl").getEmittedBin());
|
||||||
}
|
}
|
||||||
|
|
||||||
// cimgui
|
// cimgui
|
||||||
|
Reference in New Issue
Block a user