diff options
author | Marius Bakke <marius@gnu.org> | 2022-09-14 13:18:50 +0200 |
---|---|---|
committer | Marius Bakke <marius@gnu.org> | 2022-09-14 21:08:34 +0200 |
commit | b0ddbb05729e86ce4efb7eac8909317e16d7bed7 (patch) | |
tree | 95a55d6af626778e792113c14b0f36f8e22c7fd7 /gnu | |
parent | 0b8d2f407c6883acc60a6fbb7a75450ea32a73fc (diff) |
gnu: python-afdko: Remove generated code.
* gnu/packages/fontutils.scm (python-afdko)[source](modules, snippet): New
fields.
[arguments]: Add regenerate-hotconv-grammar phase.
[native-inputs]: Add ANTLR4 and OPENJDK.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/fontutils.scm | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index da324a6a9d..fbe9c10e37 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2017, 2018, 2020–2022 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Roel Janssen <roel@gnu.org> ;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> @@ -145,7 +145,15 @@ them as it goes.") (method url-fetch) (uri (pypi-uri "afdko" version)) (sha256 - (base32 "171r9f7n8fgz37dkcgpzj508lxfafcyzzx43ps12j1z2nk1sk905")))) + (base32 "171r9f7n8fgz37dkcgpzj508lxfafcyzzx43ps12j1z2nk1sk905")) + (modules '((guix build utils))) + (snippet + #~(begin + (with-directory-excursion "c/makeotf/lib/hotconv" + ;; Delete ANTLR-generated code. + (for-each delete-file + (find-files + "." "Feat(Parser|Lexer).*\\.(h|cpp|interp|tokens)$"))))))) (build-system python-build-system) (arguments (list @@ -173,6 +181,17 @@ them as it goes.") (substitute* "c/makeotf/lib/hotconv/CMakeLists.txt" (("antlr4_static") "antlr4-runtime")))) + (add-after 'unpack 'regenerate-hotconv-grammar + (lambda _ + (let ((antlr-version #$(package-version + (this-package-native-input "antlr4")))) + (with-directory-excursion "c/makeotf/lib/hotconv" + (substitute* "BuildGrammar.py" + (("antlr_version = .*") + (string-append "antlr_version = \"" + antlr-version + "\""))) + (invoke "python" "BuildGrammar.py"))))) ;; The test suite expects the commands to be Python rather than ;; shell scripts, so move the wrap phase after the tests. (delete 'wrap) @@ -195,7 +214,12 @@ them as it goes.") `("PATH" prefix (,bindir)))) commands))))))) (native-inputs - (list ninja python-pytest python-scikit-build python-setuptools-scm + (list antlr4 + openjdk ;required by antlr4 + ninja + python-pytest + python-scikit-build + python-setuptools-scm python-wheel)) (inputs (list java-antlr4-runtime-cpp `(,util-linux "lib"))) (propagated-inputs |