[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
07/58: gnu: commencement: mes-boot: Use Gash instead of coretutils&co.
From: |
guix-commits |
Subject: |
07/58: gnu: commencement: mes-boot: Use Gash instead of coretutils&co. |
Date: |
Thu, 6 Feb 2020 17:52:12 -0500 (EST) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit 5c95004db16823f338e4d4e303665d1b3648287f
Author: Jan Nieuwenhuizen <address@hidden>
AuthorDate: Thu Jan 3 21:50:10 2019 +0100
gnu: commencement: mes-boot: Use Gash instead of coretutils&co.
* gnu/packages/commencement.scm (mes-boot): Update to 0.21-32-g51c7e5f6f.
Use
Gash instead of coretutils&co.
---
gnu/packages/commencement.scm | 96 +++++++++++++++++++++++++------------------
1 file changed, 55 insertions(+), 41 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 5e53d8f..9002094 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -476,9 +476,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(cons (f (car h) (caar t)) (map f (cdr h) (cdar t)))
(if (null? (cddr t))
(cons (f (car h) (caar t) (caadr t)) (map f (cdr h) (cdar t)
(cdadr t)))
- (if (null? (cdddr t))
- (cons (f (car h) (caar t) (caadr t) (car (caddr t)))
(map f (cdr h) (cdar t) (cdadr t) (cdr (caddr t))))
- (error 'unsupported (cons* 'map-5: f h t))) )))))
+ (error 'unsupported (cons* 'map-4: f h t))b )))))
" base.mes)
(close base.mes))
@@ -500,72 +498,88 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(package
(inherit mes)
(name "mes-boot")
- (version "0.19")
+ (version "0.21-33-g6d493b90d")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://gnu/mes/"
+ (uri (string-append "http://lilypond.org/janneke/mes/"
"mes-" version ".tar.gz"))
(sha256
(base32
- "15h4yhaywdc0djpjlin2jz1kzahpqxfki0r0aav1qm9nxxmnp1l0"))))
+ "0nr74zyam5n82svjwfbcz2mycj88vvsqab12x0mxv1lm6yqxqmmj"))))
(inputs '())
(propagated-inputs '())
(native-inputs
- `(("mescc-tools" ,%bootstrap-mescc-tools)
- ("nyacc-source" ,(bootstrap-origin
- (package-source nyacc-0.86)))
-
- ("coreutils" , %bootstrap-coreutils&co)
- ("bootstrap-mes" ,%bootstrap-mes)))
+ `(("nyacc-source" ,(origin (inherit (package-source nyacc))
+ (snippet #f)))
+ ("mes" ,%bootstrap-mes-rewired)
+ ("mescc-tools" ,%bootstrap-mescc-tools)
+ ,@(%boot-gash-inputs)))
(arguments
`(#:implicit-inputs? #f
+ #:tests? #f
#:guile ,%bootstrap-guile
#:strip-binaries? #f ; binutil's strip b0rkes MesCC/M1/hex2 binaries
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-seeds
(lambda _
- (let ((nyacc-source (assoc-ref %build-inputs "nyacc-source"))
- (bootstrap-mes (assoc-ref %build-inputs "bootstrap-mes")))
+ (let ((nyacc-source (assoc-ref %build-inputs "nyacc-source")))
(with-directory-excursion ".."
- (mkdir-p "nyacc-source")
- (invoke "tar" "--strip=1" "-C" "nyacc-source" "-xvf"
nyacc-source)
- (symlink (string-append bootstrap-mes "/share/mes/lib")
"mes-seed"))
- #t)))
+ (invoke "tar" "-xvf" nyacc-source)))))
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref %outputs "out")))
- (setenv "GUILE" "mes")
- (setenv "GUILE_EFFECTIVE_VERSION" "2.2")
- (setenv "GUILE_LOAD_PATH" "nyacc")
- (symlink (string-append "../nyacc-source/module") "nyacc")
- (invoke "bash" "configure.sh"
- (string-append "--prefix=" out)))))
+ (let ((out (assoc-ref %outputs "out"))
+ (gash (assoc-ref %build-inputs "bash"))
+ (mes (assoc-ref %build-inputs "mes"))
+ (dir (with-directory-excursion ".." (getcwd))))
+ (setenv "AR" (string-append "gash " (getcwd) "/scripts/mesar"))
+ (setenv "BASH" (string-append gash "/bin/bash"))
+ (setenv "CC" (string-append mes "/bin/mescc"))
+ (setenv "GUILE_LOAD_PATH"
+ (string-append
+ mes "/share/mes/module"
+ ":" dir "/nyacc-0.99.0/module"
+ ":" (getenv "GUILE_LOAD_PATH")))
+ (invoke "gash" "configure.sh"
+ (string-append "--prefix=" out)
+ (string-append "--host=i686-linux-gnu")))))
(replace 'build
(lambda _
- (let ((mes (assoc-ref %build-inputs "bootstrap-mes")))
- (setenv "MES_PREFIX" (string-append mes "/share/mes"))
- (setenv "MES_ARENA" "100000000")
- (setenv "MES_MAX_ARENA" "100000000")
- (setenv "MES_STACK" "10000000")
- (invoke "sh" "bootstrap.sh"))))
- (replace 'check
- (lambda _
- (setenv "DIFF" "sh scripts/diff.scm")
- ;; fail fast tests
- ;; (invoke "sh" "-x" "build-aux/test.sh" "scaffold/tests/t")
- ;; (invoke "sh" "-x" "build-aux/test.sh"
"scaffold/tests/63-struct-cell")
- (invoke "sh" "check.sh")))
+ (invoke "sh" "bootstrap.sh")))
+ (delete 'check)
(replace 'install
(lambda _
- (invoke "sh" "install.sh"))))))
+ (substitute* "install.sh" ; show some progress
+ ((" -xf") " -xvf")
+ (("^( *)((cp|mkdir|tar) [^']*[^\\])\n" all space cmd)
+ (string-append space "echo '" cmd "'\n"
+ space cmd "\n")))
+ (invoke "sh" "install.sh")
+ ;; Keep ASCII output, for friendlier comparison and bisection
+ (let* ((out (assoc-ref %outputs "out"))
+ (cache (string-append out "/lib/cache")))
+ (define (objects-in-dir dir)
+ (find-files dir
+ (lambda (name stat)
+ (and (equal? (dirname name) dir)
+ (or (string-suffix? ".o" name)
+ (string-suffix? ".s" name))))))
+ (for-each (lambda (x) (install-file x cache))
+ (append (objects-in-dir ".")
+ (objects-in-dir "mescc-lib"))))
+ #t)))))
(native-search-paths
(list (search-path-specification
(variable "C_INCLUDE_PATH")
- (files '("share/mes/include")))
+ (files '("include")))
(search-path-specification
(variable "LIBRARY_PATH")
- (files '("share/mes/lib")))))))
+ (files '("lib")))
+ (search-path-specification
+ (variable "MES_PREFIX")
+ (separator #f)
+ (files '("")))))))
+
(define tcc-boot0
;; Pristine tcc cannot be built by MesCC, we are keeping a delta of 11
- 04/58: gnu: commencement: Add gash-boot., (continued)
- 04/58: gnu: commencement: Add gash-boot., guix-commits, 2020/02/06
- 16/58: gnu: commencement: Add sed-mesboot0., guix-commits, 2020/02/06
- 08/58: gnu: commencement: tcc-boot0: Use Gash instead of coretutils&co., guix-commits, 2020/02/06
- 11/58: gnu: commencement: Add bzip2-mesboot., guix-commits, 2020/02/06
- 05/58: gnu: commencement: Add gash-core-utils-boot., guix-commits, 2020/02/06
- 10/58: gnu: commencement: make-mesboot0: Use Gash instead of coreutils&co., guix-commits, 2020/02/06
- 28/58: gnu: commencement: Add gawk-mesboot., guix-commits, 2020/02/06
- 29/58: gnu: commencement: Add sed-mesboot., guix-commits, 2020/02/06
- 12/58: gnu: commencement: Add bash-mesboot0., guix-commits, 2020/02/06
- 19/58: gnu: commencement: Add gawk-mesboot0., guix-commits, 2020/02/06
- 07/58: gnu: commencement: mes-boot: Use Gash instead of coretutils&co.,
guix-commits <=
- 40/58: gnu: commencement: gcc-mesboot-wrapper: Use Gash instead of coreutils&co., guix-commits, 2020/02/06
- 39/58: gnu: commencement: gcc-mesboot: Use Gash instead of coreutils&co., guix-commits, 2020/02/06
- 49/58: gnu: commencement: Add coreutils-boot0., guix-commits, 2020/02/06
- 27/58: gnu: commencement: Add make-mesboot., guix-commits, 2020/02/06
- 13/58: gnu: commencement: tcc-boot: Use Gash instead of coretutils&co., guix-commits, 2020/02/06
- 14/58: gnu: commencement: diffutils-mesboot: Use Gash instead of coretutils&co., guix-commits, 2020/02/06
- 22/58: gnu: commencement: gcc-mesboot0: Use Gash instead of coretutils&co., guix-commits, 2020/02/06
- 35/58: gnu: commencement: binutils-mesboot: Use Gash instead of coreutils&co., guix-commits, 2020/02/06
- 41/58: gnu: commencement: Add coreutils-mesboot., guix-commits, 2020/02/06
- 53/58: gnu: commencement: gnu-make-mesboot0: Rename from make-mesboot0., guix-commits, 2020/02/06