[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
04/04: gnu: tcc-boot: Update for mes 0.14.
From: |
Jan Nieuwenhuizen |
Subject: |
04/04: gnu: tcc-boot: Update for mes 0.14. |
Date: |
Thu, 24 May 2018 01:49:34 -0400 (EDT) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit 78bb12f6014fed7d66fdb79046677b00b45405d6
Author: Jan Nieuwenhuizen <address@hidden>
Date: Thu May 3 12:00:38 2018 +0200
gnu: tcc-boot: Update for mes 0.14.
* gnu/packages/mes.scm (tcc-boot): Update for mes 0.14.
---
gnu/packages/mes.scm | 49 ++++++++++++++++++++++++++++++++++++++-----------
1 file changed, 38 insertions(+), 11 deletions(-)
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 76cd399..72cc8ba 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -354,7 +354,7 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(define-public tcc-boot
(let ((version "0.9.26")
(revision "0")
- (commit "ddea739c89e145004526b5f66f3b47b20ae30cf2"))
+ (commit "ff1caa80178b8c7d91c14c52b030ff067faef46f"))
(package-with-bootstrap-guile
(package
(name "tcc-boot")
@@ -367,16 +367,16 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
"/tinycc-" commit ".tar.gz"))
(sha256
(base32
- "0w17a2qjh6rcfmd8phw6zxdgwh6yfwdxy6i9awzi8fckfjcwkywh"))))
+ "066z8z1wlzs0k8a1xv6ds0g25vvxwd24fzdca59bahwdaaq0j0ic"))))
(build-system trivial-build-system)
(supported-systems '("i686-linux" "x86_64-linux"))
(native-inputs
`(("static-bash" ,@(assoc-ref %bootstrap-inputs "bash"))
- ("libc" ,@(assoc-ref %bootstrap-inputs "libc"))
;; For testing with Guile
;; ("guile" ,%bootstrap-guile)
+ ;; ("libc" ,@(assoc-ref %bootstrap-inputs "libc"))
;; guile-2.0.9 does not have srfi-43; cherry-pick
- ("srfi-43" ,%srfi-43)
+ ;; ("srfi-43" ,%srfi-43)
("tar" ,(search-bootstrap-binary "tar" (%current-system)))
("xz" ,(search-bootstrap-binary "xz" (%current-system)))
("mes" ,mes-boot)
@@ -402,7 +402,9 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(tinycc-seed (assoc-ref %build-inputs "tinycc-seed"))
(out (assoc-ref %outputs "out"))
(libc (assoc-ref %build-inputs "libc"))
- (interpreter (string-append libc ,(glibc-dynamic-linker)))
+ (interpreter (if libc
+ (string-append libc
,(glibc-dynamic-linker))
+ (string-append mes "/lib/mes-loader")))
(dir (getcwd)))
(setenv "PATH" (string-append
bash "/bin:"
@@ -421,9 +423,12 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(system* "tar" "--strip=1" "-C" "mes-seed" "-xvf" mes-seed)
(mkdir-p "tinycc-seed")
(system* "tar" "--strip=1" "-C" "tinycc-seed" "-xvf" tinycc-seed)
- (mkdir-p "srfi")
- (system* "cp" srfi-43 "srfi/srfi-43.scm")
+ (when srfi-43
+ (mkdir-p "srfi")
+ (system* "cp" srfi-43 "srfi/srfi-43.scm"))
(chdir "source")
+
+ ;; configure
(setenv "PREFIX" out)
(setenv "MESCC" (string-append mes "/bin/mescc"))
(symlink (string-append mes "/share/mes") "mes")
@@ -452,7 +457,6 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(symlink (string-append "../nyacc-source/module")
"nyacc")))
(and
- ;; configure
(zero? (system* "sh" "configure"
"--prefix=$PREFIX"
(string-append "--elfinterp=" interpreter)
@@ -462,9 +466,32 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
;; build
(zero? (system* "sh" "build.sh"))
- (zero? (system* "sh" "-ex" "test.sh" "01-return-0"))
- ;; check: 1/68 tests fail
- (or (zero? (system* "sh" "check.sh")) #t)
+ ;; check
+ (setenv "MES" "mes")
+ (setenv "DIFF" "diff.scm")
+ (zero? (system* "sh" "-ex" "test.sh"
"mes/scaffold/tests/30-strlen"))
+ (zero? (system* "sh" "-ex" "test.sh"
"mes/scaffold/tinycc/00_assignment"))
+ (zero? (system* "sh" "-x" "check.sh"))
+
+ (setenv "TCC" "./mes-tcc")
+ (zero? (system* "sh" "boot.sh"))
+ (zero? (system* "sh" "check.sh"))
+
+ (setenv "TCC" "./boot0-tcc")
+ (zero? (system* "sh" "boot.sh"))
+ (zero? (system* "sh" "check.sh"))
+
+ (setenv "TCC" "./boot1-tcc")
+ (zero? (system* "sh" "boot.sh"))
+ (zero? (system* "sh" "check.sh"))
+
+ (setenv "TCC" "./boot2-tcc")
+ (zero? (system* "sh" "boot.sh"))
+ (zero? (system* "sh" "check.sh"))
+
+ (setenv "TCC" "./boot3-tcc")
+ (zero? (system* "sh" "boot.sh"))
+ (zero? (system* "sh" "check.sh"))
;; install
(zero? (system* "sh" "install.sh")))))))