summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan (janneke) Nieuwenhuizen <janneke@gnu.org>2020-04-08 09:43:51 +0200
committerJan Nieuwenhuizen <janneke@gnu.org>2020-05-01 08:35:17 +0200
commit38b9af7c92344a17b6680ebd2aeea14171f84a1c (patch)
tree172bd582ea89067b0dd0679a488e06b2f1138eed
parent0c5d974fa1c5cb636b0a362b84ddf61185888226 (diff)
downloadpatches-38b9af7c92344a17b6680ebd2aeea14171f84a1c.tar
patches-38b9af7c92344a17b6680ebd2aeea14171f84a1c.tar.gz
gnu: guix: Cross-build fixup for wrap-program.
This allows running: guix build hello * gnu/packages/package-management.scm (guix)[arguments]: When cross-compiling, fixup the shebang generated by wrap-program. [inputs]: When cross-compiling, include bash-minimal.
-rw-r--r--gnu/packages/package-management.scm12
1 files changed, 10 insertions, 2 deletions
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index d0e607a8d8..3360a3b21b 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -37,6 +37,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages bdw-gc)
#:use-module (gnu packages bison)
#:use-module (gnu packages bootstrap) ;for 'bootstrap-guile-origin'
@@ -259,7 +260,8 @@ $(prefix)/etc/init.d\n")))
(setenv "SHELL" (which "sh"))
#t))
(add-after 'install 'wrap-program
- (lambda* (#:key inputs native-inputs outputs #:allow-other-keys)
+ (lambda* (#:key inputs native-inputs outputs target
+ #:allow-other-keys)
;; Make sure the 'guix' command finds GnuTLS,
;; Guile-JSON, and Guile-Git automatically.
(let* ((out (assoc-ref outputs "out"))
@@ -301,6 +303,11 @@ $(prefix)/etc/init.d\n")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix (,gopath))
`("GUIX_LOCPATH" ":" suffix (,locpath)))
+ (when target
+ ;; XXX Touching wrap-program rebuilds world
+ (let ((bash (assoc-ref inputs "bash")))
+ (substitute* (string-append out "/bin/guix")
+ (("^#!.*/bash") (string-append "#! " bash "/bin/bash")))))
#t))))))
(native-inputs `(("pkg-config" ,pkg-config)
@@ -346,7 +353,8 @@ $(prefix)/etc/init.d\n")))
`(("boot-guile/i686" ,(bootstrap-guile-origin "i686-linux")))
'())
,@(if (%current-target-system)
- `(("xz" ,xz))
+ `(("bash" ,bash-minimal)
+ ("xz" ,xz))
'())
;; Tests also rely on these bootstrap executables.