Ludovic Courtès writes:

Hi!

> I can see two solutions:
>
>   1. Remove bzip2 support from bootar (it’s not actually needed, is it?).

Ugly but easiest fix for me, see attached.

>   2. Modify (compression bzip2) so that it errors out on first use
>      rather than at load time.

Or
    3. Port bzip2 to to 32bit.

> Timothy, janneke, WDYT?

I would prefer 3., with the fix going upstream.  This opens the path to
really using bzip2 in the bootstrap.  2. could be a nice intermediate
step, but I would not know how to do that nicely, as we fetch
(compression bzip2) from upstream.  Timothy?

How about applying attached patch that implements 1. and revert it once
we get to 2. or 3.

janneke

>From 06bc492cdc1f476f0caa558546290ceafde357b1 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <jann...@gnu.org>
Date: Fri, 21 Feb 2020 07:46:16 +0100
Subject: [PATCH] gnu: commencement: bootar: Build fix for i686-linux.

See #39699

* gnu/packages/commencement.scm (bootar)[i686-linux]: Stub bzip2.
---
 gnu/packages/commencement.scm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index e3800d84a5..4901391073 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -111,6 +111,15 @@
                       (guile (string-append guile-dir "/bin/guile")))
                  (invoke guile "--no-auto-compile" source)
                  (chdir "bootar")
+                 (when ,(equal? (%current-system) "i686-linux")
+                   (delete-file "scripts/bzip2.in")
+                   (delete-file "compression/bzip2.scm")
+                   (with-output-to-file "compression/bzip2.scm"
+                     (lambda _
+                       (display "(define-module (compression bzip2))
+(define-public is-bzip2-file? (const #f))
+(define-public make-bzip2-input-port (const #f))
+"))))
                  #t)))
            (replace 'configure (bootstrap-configure ,version "." "scripts"))
            (replace 'build (bootstrap-build "."))
-- 
2.24.0

-- 
Jan Nieuwenhuizen <jann...@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

Reply via email to