2020-04-24 23:36:52 +00:00
|
|
|
|
{
|
2021-02-05 17:12:51 +00:00
|
|
|
|
stdenv, lib, fetchurl, pkg-config, autoreconfHook
|
2020-04-24 23:36:52 +00:00
|
|
|
|
, freetype, harfbuzz, libiconv, qtbase
|
|
|
|
|
, enableGUI ? true
|
|
|
|
|
}:
|
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
|
version = "1.8.3";
|
|
|
|
|
pname = "ttfautohint";
|
|
|
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
|
url = "mirror://savannah/freetype/${pname}-${version}.tar.gz";
|
|
|
|
|
sha256 = "0zpqgihn3yh3v51ynxwr8asqrijvs4gv686clwv7bm8sawr4kfw7";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
postAutoreconf = ''
|
|
|
|
|
substituteInPlace configure --replace "macx-g++" "macx-clang"
|
|
|
|
|
'';
|
|
|
|
|
|
2021-02-05 17:12:51 +00:00
|
|
|
|
nativeBuildInputs = [ pkg-config autoreconfHook ];
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
|
|
buildInputs = [ freetype harfbuzz libiconv ] ++ lib.optional enableGUI qtbase;
|
|
|
|
|
|
|
|
|
|
configureFlags = [ ''--with-qt=${if enableGUI then "${qtbase}/lib" else "no"}'' ];
|
|
|
|
|
|
2022-01-19 23:45:15 +00:00
|
|
|
|
# workaround https://github.com/NixOS/nixpkgs/issues/155458
|
|
|
|
|
preBuild = lib.optionalString stdenv.cc.isClang ''
|
|
|
|
|
rm version
|
|
|
|
|
'';
|
|
|
|
|
|
2020-04-24 23:36:52 +00:00
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
|
2021-02-19 19:06:45 +00:00
|
|
|
|
dontWrapQtApps = true;
|
|
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
|
meta = with lib; {
|
2024-06-20 14:57:18 +00:00
|
|
|
|
description = "Automatic hinter for TrueType fonts";
|
2024-04-21 15:54:59 +00:00
|
|
|
|
mainProgram = "ttfautohint";
|
2020-04-24 23:36:52 +00:00
|
|
|
|
longDescription = ''
|
|
|
|
|
A library and two programs which take a TrueType font as the
|
|
|
|
|
input, remove its bytecode instructions (if any), and return a
|
|
|
|
|
new font where all glyphs are bytecode hinted using the
|
|
|
|
|
information given by FreeType’s auto-hinting module.
|
|
|
|
|
'';
|
|
|
|
|
homepage = "https://www.freetype.org/ttfautohint";
|
|
|
|
|
license = licenses.gpl2Plus; # or the FreeType License (BSD + advertising clause)
|
|
|
|
|
maintainers = with maintainers; [ goibhniu ];
|
|
|
|
|
platforms = platforms.unix;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
}
|