[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
48/210: gnu: tcc-boot: Build with mes-boot.
From: |
Jan Nieuwenhuizen |
Subject: |
48/210: gnu: tcc-boot: Build with mes-boot. |
Date: |
Sat, 8 Sep 2018 10:36:04 -0400 (EDT) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit d1a44f3db3c1a9aa3838f4bd3b9c0732e639ca17
Author: Jan Nieuwenhuizen <address@hidden>
Date: Fri Apr 27 20:36:54 2018 +0200
gnu: tcc-boot: Build with mes-boot.
* gnu/packages/mes.scm (tcc-boot): Build with mes-boot. Update for mes
0.13.
Use new gitlab url scheme.
---
gnu/packages/mes.scm | 68 ++++++++++++++++++++++++++++------------------------
1 file changed, 37 insertions(+), 31 deletions(-)
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 2015830..7ab26e9 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -349,7 +349,7 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(define-public tcc-boot
(let ((version "0.9.26")
(revision "0")
- (commit "83293537ac710ecfa8b117d2363f6f9de5c04c0d"))
+ (commit "ddea739c89e145004526b5f66f3b47b20ae30cf2"))
(package-with-bootstrap-guile
(package
(name "tcc-boot")
@@ -358,18 +358,18 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.com/janneke/tinycc"
- "/repository/archive.tar.gz?ref="
- commit))
- (file-name (string-append name "-" version ".tar.xz"))
+ "/-/archive/" commit
+ "/tinycc-" commit ".tar.gz"))
(sha256
(base32
- "0s4fzr3ax61a196152knkajq2jj50fpx9pg8li14121j6zjrmmwh"))))
+ "0w17a2qjh6rcfmd8phw6zxdgwh6yfwdxy6i9awzi8fckfjcwkywh"))))
(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"))
- ("guile" ,%bootstrap-guile)
+ ;; For testing with Guile
+ ;; ("guile" ,%bootstrap-guile)
;; guile-2.0.9 does not have srfi-43; cherry-pick
("srfi-43" ,%srfi-43)
("tar" ,(search-bootstrap-binary "tar" (%current-system)))
@@ -396,16 +396,17 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(mes-seed (assoc-ref %build-inputs "mes-seed"))
(tinycc-seed (assoc-ref %build-inputs "tinycc-seed"))
(out (assoc-ref %outputs "out"))
- ;;(libc ,(with-store store (package-output store
%bootstrap-glibc)))
(libc (assoc-ref %build-inputs "libc"))
(interpreter (string-append libc ,(glibc-dynamic-linker)))
(dir (getcwd)))
- (setenv "PATH" (string-append bash "/bin:"
- mes "/bin:"
- guile "/bin:"
- mescc-tools "/bin:"
- tar "/bin:"
- xz "/bin"))
+ (setenv "PATH" (string-append
+ bash "/bin:"
+ mes "/bin:"
+ (if guile (string-append guile "/bin:")
+ "")
+ mescc-tools "/bin:"
+ tar "/bin:"
+ xz "/bin"))
(format (current-error-port) "PATH=~s\n" (getenv "PATH"))
(mkdir-p "source")
(system* "tar" "--strip=1" "-C" "source" "-xvf" source)
@@ -419,26 +420,31 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
(system* "cp" srfi-43 "srfi/srfi-43.scm")
(chdir "source")
(setenv "PREFIX" out)
- (setenv "MESCC" (string-append mes "/bin/mescc.scm"))
- (setenv "MES_PREFIX" (string-append mes "/share/mes"))
+ (setenv "MESCC" (string-append mes "/bin/mescc"))
+ (symlink (string-append mes "/share/mes") "mes")
+ (setenv "MES_PREFIX" "mes")
(setenv "OBJDUMP" "true")
- (setenv "interpreter" interpreter)
+ (setenv "ONE_SOURCE" "1")
+ (setenv "PREPROCESS" "1")
+ (setenv "MES_DEBUG" "1")
- ;; for mescc.scm -- Guile+Nyacc+MesCC, ~30 times faster
- ;; (setenv "GUILE_AUTO_COMPILE" "1")
- ;; (setenv "GUILE_LOAD_COMPILED_PATH"
- ;; (string-append guile "/lib/guile/2.0/ccache"))
- ;; (setenv "GUILE_LOAD_PATH"
- ;; (string-append dir
- ;; ":" guile "/share/guile/2.0/"
- ;; ":" dir "/nyacc-source/module"
- ;; ":" mes "/share/mes/guile"))
+ (if guile
+ ;; For testing with Guile+mescc -- Guile+Nyacc+MesCC, ~30
times faster
+ (begin
+ (setenv "MES" "guile")
+ (setenv "GUILE_AUTO_COMPILE" "1")
+ (setenv "GUILE_LOAD_COMPILED_PATH"
+ (string-append guile "/lib/guile/2.0/ccache"))
+ (setenv "GUILE_LOAD_PATH"
+ (string-append dir
+ ":" guile "/share/guile/2.0/"
+ ":" dir "/nyacc-source/module"
+ ":" mes "/share/mes/guile")))
- ;; for mescc.mes -- Mes+Nyacc+MesCC
- (setenv "MES_ARENA" "80000000")
- (setenv "MESCC" (string-append mes "/bin/mescc.mes"))
- (setenv "GUILE_LOAD_PATH"
- (string-append "../nyacc-source/module"))
+ ;; For true bootstrap: Mes+MesCC -- Mes+Nyacc+MesCC
+ (begin
+ (setenv "GUILE_LOAD_PATH" "nyacc")
+ (symlink (string-append "../nyacc-source/module")
"nyacc")))
(and
;; configure
@@ -451,8 +457,8 @@ extensive examples, including parsers for the Javascript
and C99 languages.")
;; build
(zero? (system* "sh" "build.sh"))
- ;; check: 1/68 tests fail
(zero? (system* "sh" "-ex" "test.sh" "01-return-0"))
+ ;; check: 1/68 tests fail
(or (zero? (system* "sh" "check.sh")) #t)
;; install
- 84/210: gnu: mescc-tools-boot: Update for linux-4.17 elf32-header fix., (continued)
- 84/210: gnu: mescc-tools-boot: Update for linux-4.17 elf32-header fix., Jan Nieuwenhuizen, 2018/09/08
- 83/210: gnu: %mescc-tools-seed: Update for linux-4.17 elf32-header fix., Jan Nieuwenhuizen, 2018/09/08
- 57/210: gnu: %mes-seed: Update for 0.15., Jan Nieuwenhuizen, 2018/09/08
- 71/210: gnu: gcc-boot: Update to 2.95.3., Jan Nieuwenhuizen, 2018/09/08
- 67/210: Revert "gnu: binutils-boot: Update to 2.30.", Jan Nieuwenhuizen, 2018/09/08
- 58/210: gnu: mes-boot: Update to 0.15., Jan Nieuwenhuizen, 2018/09/08
- 54/210: gnu: mescc-tools-boot: Update to 0.4., Jan Nieuwenhuizen, 2018/09/08
- 50/210: gnu: mes-boot: Update to 0.14., Jan Nieuwenhuizen, 2018/09/08
- 49/210: gnu: %mes-seed: Update for mes 0.14., Jan Nieuwenhuizen, 2018/09/08
- 45/210: gnu: %mes-seed: Update for mes 0.13., Jan Nieuwenhuizen, 2018/09/08
- 48/210: gnu: tcc-boot: Build with mes-boot.,
Jan Nieuwenhuizen <=
- 42/210: gnu: mescc-tools-boot: Remove stage0 dependency., Jan Nieuwenhuizen, 2018/09/08
- 43/210: gnu: stage0-boot: Update to new gitlab url scheme., Jan Nieuwenhuizen, 2018/09/08
- 36/210: gnu: nyacc-boot: Update to 0.80.42., Jan Nieuwenhuizen, 2018/09/08
- 33/210: gnu: Update mes-boot: Add qsort., Jan Nieuwenhuizen, 2018/09/08
- 27/210: gnu: Update tcc-boot: avoid mescc bug struct foo bar = *baz ()., Jan Nieuwenhuizen, 2018/09/08
- 38/210: gnu: mes-boot: Update to 0.12., Jan Nieuwenhuizen, 2018/09/08
- 90/210: gnu: glibc-boot: Install all headers. WIP plus more, Jan Nieuwenhuizen, 2018/09/08
- 92/210: gnu: Add binutils-boot 2.20.1, built with gcc+glibc., Jan Nieuwenhuizen, 2018/09/08
- 22/210: gnu: Update mescc-tools-boot: bootstrap from .M1 sources: remove MORTAL SIN., Jan Nieuwenhuizen, 2018/09/08
- 21/210: gnu: Update mes-boot: Mescc-tools support: char foo[BAR] = {'a', 'b', 'c'}., Jan Nieuwenhuizen, 2018/09/08