From 8ffaa93bffdb08dfe175854863462211d61261be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 20 Dec 2012 23:07:46 +0100 Subject: [PATCH] distro: guile: Patch (ice-9 popen) to use the right shell. * distro/packages/guile.scm (guile-2.0): Add `pre-configure'. * distro/packages/base.scm (guile-final): Adjust to preserve the `pre-configure' phase. --- distro/packages/base.scm | 30 ++++++++++++++++-------------- distro/packages/guile.scm | 10 ++++++++++ 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/distro/packages/base.scm b/distro/packages/base.scm index dacf8e46aa..971190ed6a 100644 --- a/distro/packages/base.scm +++ b/distro/packages/base.scm @@ -969,20 +969,22 @@ store.") ;; Libtool, so that that dependency is isolated in the "bin" output. (let ((guile (package (inherit guile-2.0/fixed) (arguments - `(#:phases - (alist-cons-before - 'patch-source-shebangs 'delete-encoded-test - (lambda* (#:key inputs #:allow-other-keys) - ;; %BOOTSTRAP-GUILE doesn't know about encodings other - ;; than UTF-8. That test declares an ISO-8859-1 - ;; encoding, which prevents `patch-shebang' from - ;; working, so skip it. - (call-with-output-file - "test-suite/standalone/test-command-line-encoding2" - (lambda (p) - (format p "#!~a/bin/bash\nexit 77" - (assoc-ref inputs "bash"))))) - %standard-phases)))))) + (substitute-keyword-arguments + (package-arguments guile-2.0/fixed) + ((#:phases phases) + `(alist-cons-before + 'patch-source-shebangs 'delete-encoded-test + (lambda* (#:key inputs #:allow-other-keys) + ;; %BOOTSTRAP-GUILE doesn't know about encodings other + ;; than UTF-8. That test declares an ISO-8859-1 + ;; encoding, which prevents `patch-shebang' from + ;; working, so skip it. + (call-with-output-file + "test-suite/standalone/test-command-line-encoding2" + (lambda (p) + (format p "#!~a/bin/bash\nexit 77" + (assoc-ref inputs "bash"))))) + ,phases))))))) (package-with-bootstrap-guile (package-with-explicit-inputs guile %boot4-inputs diff --git a/distro/packages/guile.scm b/distro/packages/guile.scm index a5d37eb40b..68c2fcc2ef 100644 --- a/distro/packages/guile.scm +++ b/distro/packages/guile.scm @@ -120,6 +120,16 @@ extensible. It supports many SRFIs.") (self-native-input? #t) + (arguments + '(#:phases (alist-cons-before + 'configure 'pre-configure + (lambda* (#:key inputs #:allow-other-keys) + (let ((bash (assoc-ref inputs "bash"))) + (substitute* "module/ice-9/popen.scm" + (("/bin/sh") + (string-append bash "/bin/bash"))))) + %standard-phases))) + (synopsis "GNU Guile 2.0, an embeddable Scheme implementation") (description "GNU Guile is an implementation of the Scheme programming language, with