[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#49025] [PATCH v6 18/22] glib: Use a correct python in scripts when
From: |
Maxime Devos |
Subject: |
[bug#49025] [PATCH v6 18/22] glib: Use a correct python in scripts when cross-compiling. |
Date: |
Wed, 14 Jul 2021 13:13:03 +0200 |
During the build, a native python should be used as these
scripts will be invoked during the build, but when installed,
they should be a python for the system we're compiling for.
* gnu/packages/glib.scm
(glib)[arguments]<#:phases>{patch-python-references}: Look up
"python" in 'native-inputs', not 'inputs'.
(glib)[inputs]{python,python-wrapper,bash-minimal}: New inputs.
---
gnu/packages/glib.scm | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index f0be2ddaa4..99f5c5d450 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Arthur Margerit <ruhtra.mar@gmail.com>
+;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -223,14 +224,19 @@ shared NFS home directories.")
#t))
;; Python references are not being patched in patch-phase of build,
;; despite using python-wrapper as input. So we patch them manually.
+ ;;
+ ;; These python scripts are both used during build and installed,
+ ;; so at first, use a python from 'native-inputs', not 'inputs'. When
+ ;; cross-compiling, the 'patch-shebangs' phase will replace
+ ;; the native python with a python from 'inputs'.
(add-after 'unpack 'patch-python-references
- (lambda* (#:key inputs #:allow-other-keys)
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
(substitute* '("gio/gdbus-2.0/codegen/gdbus-codegen.in"
"glib/gtester-report.in"
"gobject/glib-genmarshal.in"
"gobject/glib-mkenums.in")
(("@PYTHON@")
- (string-append (assoc-ref inputs "python")
+ (string-append (assoc-ref (or native-inputs inputs) "python")
"/bin/python"
,(version-major+minor
(package-version python)))))
@@ -293,6 +299,13 @@ shared NFS home directories.")
("xsltproc" ,libxslt)))
(inputs
`(("bash-completion" ,bash-completion)
+ ;; "python", "python-wrapper" and "bash-minimal"
+ ;; are for the 'patch-shebangs' phase, to make
+ ;; sure the installed scripts end up with a correct shebang
+ ;; when cross-compiling.
+ ("python" ,python)
+ ("python-wrapper" ,python-wrapper)
+ ("bash-minimal" ,bash-minimal)
("dbus" ,dbus)
("libelf" ,libelf)))
(propagated-inputs
--
2.32.0
- [bug#49025] [PATCH core-updates 00/37] Support cross-compilation with meson, (continued)
[bug#49025] [PATCH v6 08/22] libgpg-error: Remove trailing #f from phases., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 10/22] libgpg-error: Fix cross-compilation error., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 12/22] openssl: Remove trailing #t from phases., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 19/22] glib: Verify the cross-compiled python is used in installed scripts., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 01/22] utils: Define 'target-linux?' predicate., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 04/22] utils: Define a target-x86-32? and target-x86-64? predicate., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 11/22] python: Fix reference to input when cross-compiling., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 18/22] glib: Use a correct python in scripts when cross-compiling.,
Maxime Devos <=
[bug#49025] [PATCH v6 20/22] glib: Look up "tzdata" in 'native-inputs', not 'inputs'., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 07/22] tzdata: Don't bother with cross-compiling., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 06/22] net-base: Don't cross-compile., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 09/22] libgpg-error: Prevent silent miscompilation some systems., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 13/22] openssl: Make the #:phases argument a G-expression., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 16/22] openssl: Move all man pages to separate output, not only man3., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 15/22] openssl: Move documentation instead of copying and deleting it., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 14/22] openssl: Use G-exp machinery for referring to outputs., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 17/22] openssl: Extract logic for computing CONFIGURE_TARGET_ARCH., Maxime Devos, 2021/07/14
[bug#49025] [PATCH v6 22/22] build-system/meson: Support cross-compilation., Maxime Devos, 2021/07/14