unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Jan Nieuwenhuizen <janneke@gnu.org>
To: guix-devel@gnu.org
To: Danny Milosavljevic <dannym@scratchpost.org>
Cc: bug-mes@gnu.org
Subject: wip-arm-bootstrap: Reduced binary seed bootstrap
Date: Sun, 20 Dec 2020 13:30:28 +0100	[thread overview]
Message-ID: <87ft40vevv.fsf@gnu.org> (raw)

Hi!

I pushed an initial wip-arm-bootstrap that builds up to tcc-boot:

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix build -e '(@@ (gnu packages commencement) tcc-boot)'
--8<---------------cut here---------------end--------------->8---

Danny did a terrific job on armhf-linux support for GNU Mes and we are
getting close to release v0.23.  What's known to be missing is "setjmp"
support for tcc/gcc.  And, of course, for the Reduced binary seed
bootstrap to work on ARM!

In the previous status report

    https://lists.gnu.org/archive/html/bug-mes/2020-12/msg00002.html

I was stuck trying to get floats to work in tinycc but last weekend I
finally managed to bootstrap tcc, with long longs and floats enabled.
(this all took quite some effort).  Moving this into Guix should have
been almost trivial...but some silly "things" happened such as me
working off a dirty mes build tree; took me several days to find.

Anyway, the problem I'm looking at now is that while tcc-boot builds on
an ARM box, it does not build on aarch64-linux, i.e. this

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix build --system=armhf-linux \
  -e '(@@ (gnu packages commencement) tcc-boot0)'
--8<---------------cut here---------------end--------------->8---

fails on overdrive1.

What's next?

  * Fix the aarch64-linux problem,
  * the current wip-arm-bootstrap is based on master: it needs to be
    rebased on core-updates,
  * the rest of the bootstrap needs attention,
  * which probably means supporting "setjmp" in the Mes C Library on ARM
  * remove binary seeds for binutils, gcc, glibc, coreutils&co,
  * verify the x86 bootstrap still works,
  * and the current version of tcc-boot0 applies two inexplicable hacks
      477134b1 HACK bootstrappable: ARM: "tccgen_ok".
      33b60f03 HACK bootstrappable: ARM: "tccpp_ok".
    that would be great to understand and get rid of,
  * and IWBN to fix Gash's stacktraces on failing exec
  configure: error: 'mescc' failed to compile conftest.c.
Backtrace:
In unknown file:
   ?: 19 [apply-smob/1 #<catch-closure 410f30>]
[..]
In gash/shell.scm:
 165: 1 [sh:exec-let () "./conftest" "triplet"]
In unknown file:
   ?: 0 [execle "./conftest" # "./conftest" ...]

ERROR: In procedure execle:
ERROR: In procedure execle: No such file or directory

Greetings,
Janneke

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


             reply	other threads:[~2020-12-20 12:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-20 12:30 Jan Nieuwenhuizen [this message]
2020-12-21 10:10 ` wip-arm-bootstrap: Reduced binary seed bootstrap Jan Nieuwenhuizen
2020-12-22 15:10 ` Ludovic Courtès
2020-12-23 12:14   ` Jan Nieuwenhuizen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ft40vevv.fsf@gnu.org \
    --to=janneke@gnu.org \
    --cc=bug-mes@gnu.org \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).