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.
This commit is contained in:
Ludovic Courtès 2012-12-20 23:07:46 +01:00
parent eca63d3df8
commit 8ffaa93bff
2 changed files with 26 additions and 14 deletions

View File

@ -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

View File

@ -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