summary refs log tree commit diff
path: root/distro/packages/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-12-20 01:37:50 +0100
committerLudovic Courtès <ludo@gnu.org>2012-12-20 01:38:56 +0100
commit8ccdbaa827c0be5a8c785f17d1eb5de165190ecd (patch)
tree25625f4594f869b930cf7c7c1105fad876b7781c /distro/packages/base.scm
parent49f5a21698f4e47b381c9c1f2ecc13d19d1faaf3 (diff)
downloadguix-8ccdbaa827c0be5a8c785f17d1eb5de165190ecd.tar.gz
distro: Update `guile-final' to not fail during `patch-source-shebangs' phase.
* distro/packages/base.scm (guile-final): Add workaround on top of
  GUILE-2.0/FIXED to avoid `patch-source-shebangs' failure on one of the
  source files.
Diffstat (limited to 'distro/packages/base.scm')
-rw-r--r--distro/packages/base.scm26
1 files changed, 21 insertions, 5 deletions
diff --git a/distro/packages/base.scm b/distro/packages/base.scm
index 7cb2dc116e..dacf8e46aa 100644
--- a/distro/packages/base.scm
+++ b/distro/packages/base.scm
@@ -967,11 +967,27 @@ store.")
   ;; FIXME: The Libtool used here, specifically its `bin/libtool' script,
   ;; holds a dependency on the bootstrap Binutils.  Use multiple outputs for
   ;; Libtool, so that that dependency is isolated in the "bin" output.
-  (package-with-bootstrap-guile
-   (package-with-explicit-inputs guile-2.0/fixed
-                                 %boot4-inputs
-                                 (current-source-location)
-                                 #:guile %bootstrap-guile)))
+  (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))))))
+    (package-with-bootstrap-guile
+     (package-with-explicit-inputs guile
+                                   %boot4-inputs
+                                   (current-source-location)
+                                   #:guile %bootstrap-guile))))
 
 (define-public ld-wrapper
   ;; The final `ld' wrapper, which uses the final Guile.