python312Packages.afdko: refactor

This commit is contained in:
Fabian Affolter 2024-10-17 11:35:24 +02:00
parent 3a9aba5506
commit 6df0f3133b

View File

@ -1,52 +1,47 @@
{ {
lib, lib,
stdenv, stdenv,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
fonttools,
defcon,
lxml,
fs,
unicodedata2,
zopfli,
brotlipy,
fontpens,
brotli,
fontmath,
mutatormath,
booleanoperations,
ufoprocessor,
ufonormalizer,
tqdm,
setuptools-scm,
scikit-build,
cmake,
ninja,
antlr4_9,
libxml2,
pytestCheckHook,
# Enables some expensive tests, useful for verifying an update # Enables some expensive tests, useful for verifying an update
runAllTests ? false,
afdko, afdko,
antlr4_9,
booleanoperations,
buildPythonPackage,
cmake,
defcon,
fetchFromGitHub,
fontmath,
fontpens,
fonttools,
libxml2,
mutatormath,
ninja,
pytestCheckHook,
pythonOlder,
runAllTests ? false,
scikit-build,
setuptools-scm,
tqdm,
ufonormalizer,
ufoprocessor,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "afdko"; pname = "afdko";
version = "4.0.1"; version = "4.0.1";
format = "pyproject"; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "adobe-type-tools"; owner = "adobe-type-tools";
repo = pname; repo = "afdko";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-I5GKPkbyQX8QNSZgNB3wPKdWwpx8Xkklesu1M7nhgp8="; hash = "sha256-I5GKPkbyQX8QNSZgNB3wPKdWwpx8Xkklesu1M7nhgp8=";
}; };
build-system = [ setuptools-scm ];
nativeBuildInputs = [ nativeBuildInputs = [
setuptools-scm
scikit-build scikit-build
cmake cmake
ninja ninja
@ -78,23 +73,23 @@ buildPythonPackage rec {
# setup.py will always (re-)execute cmake in buildPhase # setup.py will always (re-)execute cmake in buildPhase
dontConfigure = true; dontConfigure = true;
propagatedBuildInputs = [ dependencies =
booleanoperations [
fonttools booleanoperations
lxml # fonttools[lxml], defcon[lxml] extra defcon
fs # fonttools[ufo] extra fontmath
unicodedata2 # fonttools[unicode] extra fontpens
brotlipy # fonttools[woff] extra fonttools
zopfli # fonttools[woff] extra mutatormath
fontpens tqdm
brotli ufonormalizer
defcon ufoprocessor
fontmath ]
mutatormath ++ defcon.optional-dependencies.lxml
ufoprocessor ++ fonttools.optional-dependencies.lxml
ufonormalizer ++ fonttools.optional-dependencies.ufo
tqdm ++ fonttools.optional-dependencies.unicode
]; ++ fonttools.optional-dependencies.woff;
# Use system libxml2 # Use system libxml2
FORCE_SYSTEM_LIBXML2 = true; FORCE_SYSTEM_LIBXML2 = true;
@ -116,7 +111,7 @@ buildPythonPackage rec {
"test_waterfallplot" "test_waterfallplot"
] ]
++ lib.optionals (stdenv.cc.isGNU) [ ++ lib.optionals (stdenv.cc.isGNU) [
# broke in the gcc 13 14 update # broke in the gcc 13 -> 14 update
"test_dump" "test_dump"
"test_input_formats" "test_input_formats"
"test_other_input_formats" "test_other_input_formats"
@ -146,10 +141,10 @@ buildPythonPackage rec {
}; };
meta = with lib; { meta = with lib; {
changelog = "https://github.com/adobe-type-tools/afdko/blob/${version}/NEWS.md";
description = "Adobe Font Development Kit for OpenType"; description = "Adobe Font Development Kit for OpenType";
changelog = "https://github.com/adobe-type-tools/afdko/blob/${version}/NEWS.md";
homepage = "https://adobe-type-tools.github.io/afdko"; homepage = "https://adobe-type-tools.github.io/afdko";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.sternenseemann ]; maintainers = with maintainers; [ sternenseemann ];
}; };
} }