guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/01: build-system/gnu: Keep the sloppy conversion strategy during boot


From: Ludovic Courtès
Subject: 01/01: build-system/gnu: Keep the sloppy conversion strategy during bootstrap.
Date: Sat, 28 Feb 2015 23:25:17 +0000

civodul pushed a commit to branch core-updates
in repository guix.

commit b479c3ddaf85c831e34888229849bc1ce34419de
Author: Ludovic Courtès <address@hidden>
Date:   Sun Mar 1 00:23:07 2015 +0100

    build-system/gnu: Keep the sloppy conversion strategy during bootstrap.
    
    * guix/build/gnu-build-system.scm (gnu-build): Leave
      %DEFAULT-PORT-CONVERSION-STRATEGY unchanged when 'string->bytevector'
      fails to convert to ISO-8859-1.  This is an attempt to work around the
      build failures at <http://hydra.gnu.org/build/263002>.
---
 guix/build/gnu-build-system.scm |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm
index 5ae5371..5ac6b4d 100644
--- a/guix/build/gnu-build-system.scm
+++ b/guix/build/gnu-build-system.scm
@@ -22,6 +22,7 @@
   #:use-module (ice-9 match)
   #:use-module (ice-9 regex)
   #:use-module (ice-9 format)
+  #:use-module (ice-9 iconv)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26)
   #:export (%standard-phases
@@ -499,8 +500,11 @@ in order.  Return #t if all the PHASES succeeded, #f 
otherwise."
   (setvbuf (current-output-port) _IOLBF)
   (setvbuf (current-error-port) _IOLBF)
 
-  ;; Encoding/decoding errors shouldn't be silent.
-  (fluid-set! %default-port-conversion-strategy 'error)
+  ;; Encoding/decoding errors shouldn't be silent.  But our bootstrap Guile
+  ;; currently doesn't have access to iconv modules, so we have to allow it to
+  ;; be sloppier (XXX).
+  (when (false-if-exception (string->bytevector "works?" "ISO-8859-1"))
+    (fluid-set! %default-port-conversion-strategy 'error))
 
   ;; The trick is to #:allow-other-keys everywhere, so that each procedure in
   ;; PHASES can pick the keyword arguments it's interested in.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]