guix-devel
[Top][All Lists]
Advanced

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

Why do we not cross-compile bootstrap binaries?


From: Chris Marusich
Subject: Why do we not cross-compile bootstrap binaries?
Date: Thu, 23 Nov 2017 16:47:51 -0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Hi,

We have bootstrap binaries for various platforms.  For example, commit
3b88f3767d9f3ad2cc64173525cd53d429bfe7e7 adds bootstrap binaries for
aarch64-linux.  Judging by the commit message, my guess is that these
bootstrap binaries were built (cross-compiled, I presume) using Guix at
commit 8f8f250bdca917b3ce38aa0902f01b19081859a4 and then checked into
the Git repository.

My understanding is that we could choose, in theory, to cross-compile
the bootstrap binaries from a "base" platform.  This choice would reduce
the number of bootstrap binaries we need to check into the Git
repository.  However, my guess is that we do not want to treat one
particular platform as special: we would like to be able to bootstrap
everything from any supported architecture.  For example, it would be
unfortunate if bootstrapping an armhf-linux machine required the use of
an x86_64-linux machine.  To avoid this "asymmetry" in the bootstrap
path, we choose to check in the built artifacts instead of
cross-compiling them.

Is my understanding correct?  I couldn't find an explicit explanation of
the motivation for this choice by looking at email archives, source
code, or the manual, so I thought I'd ask here.

-- 
Chris

Attachment: signature.asc
Description: PGP signature


reply via email to

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