[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
134/207: gnu: mescc-tools-boot: Use gnu-build-system.
From: |
Jan Nieuwenhuizen |
Subject: |
134/207: gnu: mescc-tools-boot: Use gnu-build-system. |
Date: |
Sat, 8 Sep 2018 13:26:19 -0400 (EDT) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit ceef3a8075292a55f5d2d6b113253558c8ec3ffd
Author: Jan Nieuwenhuizen <address@hidden>
Date: Thu Aug 23 17:33:33 2018 +0200
gnu: mescc-tools-boot: Use gnu-build-system.
* gnu/packages/mes.scm (mescc-tools-boot): Use gnu-build-system.
---
gnu/packages/mes.scm | 78 +++++++++++++++++++++++++++++++---------------------
1 file changed, 46 insertions(+), 32 deletions(-)
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 62857cb..f467667 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -118,7 +118,7 @@ with a Knight VM that runs Forth and Lisp.")
(license gpl3+))))
(define-public mescc-tools-boot
- (let ((version "0.4")
+ (let ((version "0.4")
(revision "1")
(commit "f02b8f4fda8d0c5c11a1d63a02b2bfdfab55abc5"))
(package-with-bootstrap-guile
@@ -141,38 +141,52 @@ with a Knight VM that runs Forth and Lisp.")
("mes-source" ,(package-source mes-boot))
("mes-seed" ,%mes-seed)))
(supported-systems '("i686-linux" "x86_64-linux"))
- (build-system trivial-build-system)
+ (build-system gnu-build-system)
(arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (guix build utils))
- (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
- (source (assoc-ref %build-inputs "source"))
- (mescc-tools-seed (assoc-ref %build-inputs
"mescc-tools-seed"))
- (mes-seed (assoc-ref %build-inputs "mes-seed"))
- (mes-source (assoc-ref %build-inputs "mes-source"))
- (out (assoc-ref %outputs "out"))
- (out/bin (string-append out "/bin")))
- (setenv "PATH" (string-append coreutils "/bin"
- ":" "../mescc-tools-seed"))
- (format (current-error-port) "PATH=~s\n" (getenv "PATH"))
- (mkdir-p "source")
- (system* "tar" "--strip=1" "-C" "source" "-xvf" source)
- (mkdir-p "mescc-tools-seed")
- (system* "tar" "--strip=1" "-C" "mescc-tools-seed" "-xvf"
mescc-tools-seed)
- (mkdir-p "mes-source")
- (system* "tar" "--strip=1" "-C" "mes-source" "-xvf" mes-source)
- (mkdir-p "mes-seed")
- (system* "tar" "--strip=1" "-C" "mes-seed" "-xvf" mes-seed)
- (chdir "source")
- (setenv "PREFIX" out)
- (setenv "MES_PREFIX" "../mes-source")
- (setenv "MESCC_TOOLS_SEED" "../mescc-tools-seed")
- (setenv "MES_SEED" "../mes-seed")
- (and (zero? (system* "sh" "build.sh"))
- (zero? (system* "sh" "check.sh"))
- (zero? (system* "sh" "install.sh")))))))
+ `(#:strip-binaries? #f ; binutil's strip b0rkes MesCC/M1/hex2 binaries
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'unpack-seeds
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
+ (mescc-tools-seed (assoc-ref %build-inputs
"mescc-tools-seed"))
+ (mes-seed (assoc-ref %build-inputs "mes-seed"))
+ (mes-source (assoc-ref %build-inputs "mes-source"))
+ (out (assoc-ref %outputs "out")))
+ (setenv "PATH" (string-append coreutils "/bin"))
+ (format (current-error-port) "PATH=~s\n" (getenv "PATH"))
+ (with-directory-excursion ".."
+ (and
+ (mkdir-p "mescc-tools-seed")
+ (zero? (system* "tar" "--strip=1" "-C" "mescc-tools-seed"
+ "-xvf" mescc-tools-seed))
+ (mkdir-p "mes-source")
+ (zero? (system* "tar" "--strip=1" "-C" "mes-source"
+ "-xvf" mes-source))
+ (mkdir-p "mes-seed")
+ (zero? (system* "tar" "--strip=1" "-C" "mes-seed"
+ "-xvf" mes-seed)))))))
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;;(use-modules (guix build utils))
+ (let ((coreutils (assoc-ref %build-inputs "coreutils"))
+ (out (assoc-ref %outputs "out")))
+ (setenv "PATH" (string-append coreutils "/bin"
+ ":" "../mescc-tools-seed"))
+ (format (current-error-port) "PATH=~s\n" (getenv "PATH"))
+ (setenv "PREFIX" out)
+ (setenv "MES_PREFIX" "../mes-source")
+ (setenv "MESCC_TOOLS_SEED" "../mescc-tools-seed")
+ (setenv "MES_SEED" "../mes-seed"))))
+ (replace 'build
+ (lambda* (#:key outputs #:allow-other-keys)
+ (zero? (system* "sh" "build.sh"))))
+ (replace 'check
+ (lambda* (#:key outputs #:allow-other-keys)
+ (zero? (system* "sh" "check.sh"))))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (zero? (system* "sh" "install.sh")))))))
(description
"Mescc-tools is a collection of tools for use in a full source
bootstrapping process. Currently consists of the M1 macro assembler and the
- 113/207: gnu: binutils-mesboot0: Package with bootstrap-guile., (continued)
- 113/207: gnu: binutils-mesboot0: Package with bootstrap-guile., Jan Nieuwenhuizen, 2018/09/08
- 118/207: gnu: mescc-tools-boot: Revise dependencies., Jan Nieuwenhuizen, 2018/09/08
- 163/207: Add new cheat: use %bootstrap-glibc for x86 for now., Jan Nieuwenhuizen, 2018/09/08
- 124/207: gnu: gcc-core-mesboot: Revise dependencies., Jan Nieuwenhuizen, 2018/09/08
- 121/207: gnu: tcc-boot0: Revise dependencies., Jan Nieuwenhuizen, 2018/09/08
- 193/207: gnu: glibc-mesboot: Oops, install everything., Jan Nieuwenhuizen, 2018/09/08
- 109/207: REMOVEME: %fake-bootstrap => #t., Jan Nieuwenhuizen, 2018/09/08
- 160/207: gnu: Add mpc-boot 1.0.3., Jan Nieuwenhuizen, 2018/09/08
- 166/207: gnu: file-boot0: Do not strip binaries or validate-runpath., Jan Nieuwenhuizen, 2018/09/08
- 63/207: gnu: binutils-boot: Update to 2.10.1., Jan Nieuwenhuizen, 2018/09/08
- 134/207: gnu: mescc-tools-boot: Use gnu-build-system.,
Jan Nieuwenhuizen <=
- 110/207: Revert "REMOVEME: %fake-bootstrap => #t.", Jan Nieuwenhuizen, 2018/09/08
- 185/207: gnu: glibc-mesboot0: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 140/207: gnu: Add %diffutils-static, %diffutils-static-stripped, %diffutils-bootstrap-tarball., Jan Nieuwenhuizen, 2018/09/08
- 152/207: gnu: make-mesboot: Update to 3.80., Jan Nieuwenhuizen, 2018/09/08
- 188/207: gnu: binutils-mesboot: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 139/207: gnu: Add %bootstrap-make., Jan Nieuwenhuizen, 2018/09/08
- 100/207: gnu: m4:mesboot: Rename from m4-boot., Jan Nieuwenhuizen, 2018/09/08
- 75/207: Revert "gnu: gcc-boot: Update to 3.4.0.", Jan Nieuwenhuizen, 2018/09/08
- 161/207: gnu: make-boot0: Set LOADLIBES for i686-linux., Jan Nieuwenhuizen, 2018/09/08
- 155/207: Revert "gnu: Add %diffutils-static, %diffutils-static-stripped, %diffutils-bootstrap-tarball.", Jan Nieuwenhuizen, 2018/09/08