[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
10/22: DRAFT commencement: bootstrap-mes-rewired: Support ARM.
From: |
guix-commits |
Subject: |
10/22: DRAFT commencement: bootstrap-mes-rewired: Support ARM. |
Date: |
Wed, 23 Dec 2020 17:49:32 -0500 (EST) |
janneke pushed a commit to branch wip-arm-bootstrap
in repository guix.
commit 66b068b528fe2effb9e0734f962ff22d023ea7c1
Author: Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
AuthorDate: Tue Dec 15 12:10:06 2020 +0100
DRAFT commencement: bootstrap-mes-rewired: Support ARM.
* gnu/packages/commencement.scm (%bootstrap-mes-rewired): Inherit from
mes-next.
[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 | 36 +++++++++++++++++++++---------------
1 file changed, 21 insertions(+), 15 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 272e666..cc41402 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -274,9 +274,8 @@ pure Scheme to Tar and decompression in one easy step.")
(define %bootstrap-mes-rewired
(package
- (inherit mes)
+ (inherit mes-next)
(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
- branch wip-arm-bootstrap created (now 54e70b9), guix-commits, 2020/12/23
- 01/22: gnu: mescc-tools: Update to 0.7.0., guix-commits, 2020/12/23
- 02/22: gnu: Add nyacc-1.00.2., guix-commits, 2020/12/23
- 07/22: DRAFT bootstrap: %bootstrap-mescc-tools: Support ARM., guix-commits, 2020/12/23
- 16/22: DRAFT commencement: bash-mesboot0: Support ARM., guix-commits, 2020/12/23
- 08/22: DRAFT bootstrap: %bootstrap-mes: Support ARM., guix-commits, 2020/12/23
- 10/22: DRAFT commencement: bootstrap-mes-rewired: Support ARM.,
guix-commits <=
- 03/22: gnu: mes: Update to nyacc-1.00.2., guix-commits, 2020/12/23
- 17/22: DRAFT commencement: tcc-boot: Support ARM., guix-commits, 2020/12/23
- 19/22: commencement: patch-mesboot: Support ARM., guix-commits, 2020/12/23
- 22/22: DRAFT commencement: gcc-core-mesboot0: Support ARM., guix-commits, 2020/12/23
- 04/22: DRAFT gnu: Add mes-next., guix-commits, 2020/12/23
- 05/22: bootstrap: mescc-tools: Support ARM, update to 0.7.0., guix-commits, 2020/12/23
- 06/22: DRAFT bootstrap: mes-minimal: Support ARM, update to mes-0.22.115., guix-commits, 2020/12/23
- 13/22: commencement: gzip-mesboot: Support ARM., guix-commits, 2020/12/23
- 15/22: commencement: bzip2-mesboot: Support ARM., guix-commits, 2020/12/23
- 09/22: commencement: gash-boot: Build fix for ARM., guix-commits, 2020/12/23