1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-18 03:30:45 +00:00

fcft: devendor nanosvg

This fixes an uninitialized memory error with GCC 14.
This commit is contained in:
Alyssa Ross 2024-09-14 10:23:33 +02:00 committed by sternenseemann
parent dfc36088ba
commit 3d6c0110a8

View file

@ -1,5 +1,5 @@
{ stdenv, lib, fetchFromGitea, pkg-config, meson, ninja, scdoc
, freetype, fontconfig, pixman, tllist, check
{ stdenv, lib, fetchFromGitea, fetchpatch, pkg-config, meson, ninja, scdoc
, freetype, fontconfig, nanosvg, pixman, tllist, check
# Text shaping methods to enable, empty list disables all text shaping.
# See `availableShapingTypes` or upstream meson_options.txt for available types.
, withShapingTypes ? [ "grapheme" "run" ]
@ -27,15 +27,26 @@ stdenv.mkDerivation rec {
hash = "sha256-Wgm2QdW4rg573soF/8HhDmlyN4S2cA0VWOejow464gU=";
};
patches = [
(fetchpatch {
name = "system-nanosvg.patch";
url = "https://codeberg.org/dnkl/fcft/commit/5cee776e1d7f1bdb0df383c3dd798831a6fe4fa0.patch";
excludes = [ "CHANGELOG.md" ];
hash = "sha256-yRBtKCKT/Oih66/OQqt4GPg3GfHmhiLM8mlLEWYYRC0=";
})
];
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [ pkg-config meson ninja scdoc ];
buildInputs = [ freetype fontconfig pixman tllist ]
buildInputs = [ freetype fontconfig nanosvg pixman tllist ]
++ lib.optionals (withShapingTypes != []) [ harfbuzz ]
++ lib.optionals (builtins.elem "run" withShapingTypes) [ utf8proc ];
nativeCheckInputs = [ check ];
mesonBuildType = "release";
mesonFlags = builtins.map (t:
mesonFlags = [
(lib.mesonEnable "system-nanosvg" true)
] ++ builtins.map (t:
lib.mesonEnable "${t}-shaping" (lib.elem t withShapingTypes)
) availableShapingTypes;