mirror of
https://github.com/ghostty-org/ghostty.git
synced 2026-04-06 07:38:21 +00:00
Revert "build: link to the system FontConfig by default on non-macOS systems"
This reverts commit 89f9dd7848.
This commit is contained in:
@@ -38,15 +38,6 @@ here:
|
||||
| `zig build dist` | Builds a source tarball |
|
||||
| `zig build distcheck` | Builds and validates a source tarball |
|
||||
|
||||
## FontConfig and GTK
|
||||
|
||||
Because of the global shared state that FontConfig maintains, FontConfig must
|
||||
be linked dynamically to the same system FontConfig shared library that GTK
|
||||
uses. Ghostty's default has been changed to always link to the system FontConfig
|
||||
library. If that is overridden (by specifying `-fno-sys=fontconfig` during the
|
||||
build) Ghostty may crash when trying to locate glyphs that are not available in
|
||||
the default font.
|
||||
|
||||
## Extra Dependencies
|
||||
|
||||
Building Ghostty from a Git checkout on Linux requires some additional
|
||||
|
||||
@@ -424,19 +424,6 @@ pub fn init(b: *std.Build, appVersion: []const u8) !Config {
|
||||
// show up properly in `--help`.
|
||||
|
||||
{
|
||||
// These should default to `true` except on macOS because linking them
|
||||
// to Ghostty statically when GTK is dynamically linked to them can
|
||||
// cause crashes.
|
||||
for (&[_][]const u8{
|
||||
"fontconfig",
|
||||
}) |dep| {
|
||||
_ = b.systemIntegrationOption(
|
||||
dep,
|
||||
.{
|
||||
.default = if (target.result.os.tag.isDarwin()) false else true,
|
||||
},
|
||||
);
|
||||
}
|
||||
// These dependencies we want to default false if we're on macOS.
|
||||
// On macOS we don't want to use system libraries because we
|
||||
// generally want a fat binary. This can be overridden with the
|
||||
@@ -444,6 +431,7 @@ pub fn init(b: *std.Build, appVersion: []const u8) !Config {
|
||||
for (&[_][]const u8{
|
||||
"freetype",
|
||||
"harfbuzz",
|
||||
"fontconfig",
|
||||
"libpng",
|
||||
"zlib",
|
||||
"oniguruma",
|
||||
|
||||
@@ -200,13 +200,6 @@ pub fn add(
|
||||
if (b.systemIntegrationOption("fontconfig", .{})) {
|
||||
step.linkSystemLibrary2("fontconfig", dynamic_link_opts);
|
||||
} else {
|
||||
if (self.config.app_runtime == .gtk)
|
||||
std.debug.print(
|
||||
\\WARNING: Statically linking FontConfig when using the GTK app runtime is known
|
||||
\\to cause crashes! It is HIGHLY recommended that Ghostty be dynamically linked
|
||||
\\to the system FontConfig library.
|
||||
\\
|
||||
, .{});
|
||||
step.linkLibrary(fontconfig_dep.artifact("fontconfig"));
|
||||
try static_libs.append(
|
||||
b.allocator,
|
||||
|
||||
Reference in New Issue
Block a user