From 9aac443dc9697520fbad3619fd0172028805114c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 9 Mar 2023 23:28:30 +0100 Subject: [PATCH] gnu: freetype: Fix cross-compilation. Previously, the 'remove-reference-to-pkg-config' would break when cross-compiling because the "/bin/pkg-config" file would not be found. * gnu/packages/fontutils.scm (freetype)[arguments]: Add alternate 'remove-reference-to-pkg-config' phase for (%current-target-system) as true. --- gnu/packages/fontutils.scm | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index 341554b687..9d0d23f9c8 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2017 Nikita ;;; Copyright © 2017, 2018, 2020–2022 Tobias Geerinckx-Rice ;;; Copyright © 2018 Ricardo Wurmus -;;; Copyright © 2018, 2019, 2020, 2021 Ludovic Courtès +;;; Copyright © 2018, 2019, 2020, 2021, 2023 Ludovic Courtès ;;; Copyright © 2019, 2020, 2022 Marius Bakke ;;; Copyright © 2020 Roel Janssen ;;; Copyright © 2020, 2021 Nicolas Goaziou @@ -100,13 +100,23 @@ (define-public freetype `(#:configure-flags (list "--enable-freetype-config") #:disallowed-references (,pkg-config) #:phases - (modify-phases %standard-phases - (add-after 'install 'remove-reference-to-pkg-config - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* (string-append out "/bin/freetype-config") - (((search-input-file inputs "/bin/pkg-config")) - "pkg-config")))))))) + ;; TODO: Keep only the first variant on the next core rebuild cycle. + ,(if (%current-target-system) + '(modify-phases %standard-phases + (add-after 'install 'remove-reference-to-pkg-config + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* (string-append out "/bin/freetype-config") + (("/([a-zA-Z0-9/\\._-]+)/bin/([a-zA-Z0-9_-]+)pkg-config" + _ store target) + "pkg-config")))))) + '(modify-phases %standard-phases + (add-after 'install 'remove-reference-to-pkg-config + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* (string-append out "/bin/freetype-config") + (((search-input-file inputs "/bin/pkg-config")) + "pkg-config"))))))))) (native-inputs (list pkg-config)) (propagated-inputs