mescc: Support --bootstrap build on ARM.

The ARM port added the `-marm' option to mescc, where previously only
-m32' (the default) and `-m64' were supported.

Reported by Vagrant Cascadian <vagrant@reproducible-builds.org>.

* module/mescc/mescc.scm (arch-get-machine): When machine is "arm",
return "32".
* build-aux/build-mes.sh (LIBS)[mescc]: Add -lmescc.
This commit is contained in:
Jan (janneke) Nieuwenhuizen 2021-05-01 15:40:56 +02:00
parent ce80c24ae4
commit 3a5a7d1e56
No known key found for this signature in database
GPG key ID: F3C1A0D9C1D65273
2 changed files with 10 additions and 6 deletions

View file

@ -1,7 +1,7 @@
#! /bin/sh #! /bin/sh
# GNU Mes --- Maxwell Equations of Software # GNU Mes --- Maxwell Equations of Software
# Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> # Copyright © 2019,2021 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
# #
# This file is part of GNU Mes. # This file is part of GNU Mes.
# #
@ -60,5 +60,8 @@ then
# See <https://www.openwall.com/lists/musl/2018/05/09/1>. # See <https://www.openwall.com/lists/musl/2018/05/09/1>.
LIBS="${LIBS} -lgcc -lc" LIBS="${LIBS} -lgcc -lc"
fi fi
if [ "$compiler" = "mescc" ]; then
LIBS="${LIBS} -lc -lmescc"
fi
link bin/mes-$compiler link bin/mes-$compiler
cp bin/mes-$compiler bin/mes cp bin/mes-$compiler bin/mes

View file

@ -1,5 +1,5 @@
;;; GNU Mes --- Maxwell Equations of Software ;;; GNU Mes --- Maxwell Equations of Software
;;; Copyright © 2016,2017,2018,2019,2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016,2017,2018,2019,2020,2021 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Mes. ;;; This file is part of GNU Mes.
;;; ;;;
@ -359,10 +359,11 @@
(define (arch-get-machine options) (define (arch-get-machine options)
(let* ((machine (option-ref options 'machine #f)) (let* ((machine (option-ref options 'machine #f))
(arch (option-ref options 'arch #f))) (arch (option-ref options 'arch #f))
(or machine (machine (or machine arch "32")))
(if (member arch '("x86_64")) "64" (cond ((member machine '("x86_64")) "64")
"32")))) ((member machine '("arm")) "32")
(else "32"))))
(define (arch-get-m1-macros options) (define (arch-get-m1-macros options)
(let ((arch (arch-get options))) (let ((arch (arch-get options)))