[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
10/26: commencement: bootstrap-mes-rewired: Support ARM.
From: |
guix-commits |
Subject: |
10/26: commencement: bootstrap-mes-rewired: Support ARM. |
Date: |
Tue, 12 Jan 2021 13:49:12 -0500 (EST) |
janneke pushed a commit to branch wip-arm-bootstrap
in repository guix.
commit c0a6928da0f2ae5c8e496682bb31506c3a0cf4da
Author: Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
AuthorDate: Tue Dec 15 12:10:06 2020 +0100
commencement: bootstrap-mes-rewired: Support ARM.
* gnu/packages/commencement.scm (%bootstrap-mes-rewired)[version]: Remove.
[arguments]: Use map fixup and numbered_arch override for x86 bootstrap
only,
which bootstrap binary is fixed at mes-0.19.
---
gnu/packages/commencement.scm | 34 ++++++++++++++++++++--------------
1 file changed, 20 insertions(+), 14 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 272e666..c8d010f 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -276,7 +276,6 @@ pure Scheme to Tar and decompression in one easy step.")
(package
(inherit mes)
(name "bootstrap-mes-rewired")
- (version "0.19")
(source #f)
(native-inputs `(("mes" ,%bootstrap-mes)
("gash" ,gash-boot)))
@@ -320,7 +319,9 @@ pure Scheme to Tar and decompression in one easy step.")
;; Cannot easily rewire "mes" because it
;; contains NUL characters; would require
;; remove-store-references alike trick
- (filter (negate (cut string-suffix? "/mes" <>))
+ (filter (negate (compose
+ (cute member <> '("mes"
"mes-gcc"))
+ basename))
(find-files bin)))
(rewire (string-append module "/mes/boot-0.scm"))
@@ -340,18 +341,22 @@ export MES MES_PREFIX
MES_ARENA=${MES_REWIRED_ARENA-10000000}
MES_MAX_ARENA=${MES_REWIRED_ARENA-10000000}
-MES_STACK=${MES_REWIRED_STACK-1000000}
+MES_STACK=${MES_REWIRED_STACK-2000000}
export MES_ARENA MES_MAX_ARENA MES_STACK
$MES -e '(mescc)' module/mescc.scm -- \"$@\"
"))))
(chmod mescc #o555)
- (with-directory-excursion module
- (chmod "mes/base.mes" #o644)
- (copy-file "mes/base.mes" "mes/base.mes.orig")
- (let ((base.mes (open-file "mes/base.mes" "a")))
- (display "
+ (when (member ,(%current-system)
+ '("i686-linux" "x86_64-linux"))
+ ;; The x86 bootstrap uses a %bootstrap-mes v0.19
+ ;; which needs some additional fixups.
+ (with-directory-excursion module
+ (chmod "mes/base.mes" #o644)
+ (copy-file "mes/base.mes" "mes/base.mes.orig")
+ (let ((base.mes (open-file "mes/base.mes" "a")))
+ (display "
;; A fixed map, from Mes 0.21, required to bootstrap Mes 0.21
(define (map f h . t)
(if (or (null? h)
@@ -364,20 +369,21 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(cons (f (car h) (caar t) (caadr t)) (map f (cdr h) (cdar t)
(cdadr t)))
(error 'unsupported (cons* 'map-4: f h t))b )))))
" base.mes)
- (close base.mes))
+ (close base.mes))
- (chmod "mes/guile.mes" #o644)
- (copy-file "mes/guile.mes" "mes/guile.mes.orig")
- (let ((guile.mes (open-file "mes/guile.mes" "a")))
- (display "
+ (chmod "mes/guile.mes" #o644)
+ (copy-file "mes/guile.mes" "mes/guile.mes.orig")
+ (let ((guile.mes (open-file "mes/guile.mes" "a")))
+ (display "
;; After booting guile.scm; use Mes 0.21; especially: MesCC 0.21
(let* ((self (car (command-line)))
(prefix (dirname (dirname self))))
(set! %moduledir (string-append prefix \"/mes/module/\"))
+ ;; For MesCC-Tools v0.5.2
(setenv \"%numbered_arch\" \"true\"))
" guile.mes)
- (close guile.mes)))
+ (close guile.mes))))
#t))))))
(define mes-boot
- 04/26: DRAFT gnu: mes: Update to 0.22-123-g9cd754498., (continued)
- 04/26: DRAFT gnu: mes: Update to 0.22-123-g9cd754498., guix-commits, 2021/01/12
- 06/26: bootstrap: mes-minimal: Support ARM, update for mes-0.23., guix-commits, 2021/01/12
- 11/26: commencement: mes-boot: Support ARM., guix-commits, 2021/01/12
- 14/26: commencement: make-mesboot0: Support ARM., guix-commits, 2021/01/12
- 17/26: commencement: tcc-boot: Support ARM., guix-commits, 2021/01/12
- 25/26: commencement: glibc-mesboot0: Support ARM., guix-commits, 2021/01/12
- 02/26: gnu: Add nyacc-1.00.2., guix-commits, 2021/01/12
- 09/26: commencement: gash-boot: Build fix for ARM., guix-commits, 2021/01/12
- 18/26: commencement: diffutils-mesboot: Support ARM., guix-commits, 2021/01/12
- 01/26: gnu: mescc-tools: Update to 0.7.0., guix-commits, 2021/01/12
- 10/26: commencement: bootstrap-mes-rewired: Support ARM.,
guix-commits <=
- 12/26: commencement: tcc-boot0: Support ARM, update to 0.9.26-1136-g0fbeb2dd., guix-commits, 2021/01/12
- 16/26: commencement: bash-mesboot0: Support ARM., guix-commits, 2021/01/12
- 21/26: commencement: binutils-mesboot0: Support ARM., guix-commits, 2021/01/12
- 20/26: commencement: sed-mesboot0: Support ARM., guix-commits, 2021/01/12
- 23/26: commencement: mesboot-headers: Support ARM., guix-commits, 2021/01/12
- 24/26: commencement: gawk-mesboot: Support ARM., guix-commits, 2021/01/12
- 26/26: commencement: gcc-mesboot0: Support ARM., guix-commits, 2021/01/12
- 22/26: commencement: gcc-core-mesboot0: Support ARM., guix-commits, 2021/01/12