[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
24/54: bootstrap: binutils-mesboot0: Scheme-only bootstrap.
From: |
guix-commits |
Subject: |
24/54: bootstrap: binutils-mesboot0: Scheme-only bootstrap. |
Date: |
Fri, 22 Nov 2019 18:17:52 -0500 (EST) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit ef5dc6b20f82a61287df3f75af50e6de61c8fc7c
Author: Jan Nieuwenhuizen <address@hidden>
Date: Sun Oct 6 15:22:01 2019 +0200
bootstrap: binutils-mesboot0: Scheme-only bootstrap.
* gnu/packages/commencement.scm (binutils-mesboot0): Update for Scheme-only
bootstrap; downgrade to 2.14.0.
---
gnu/packages/commencement.scm | 74 +++++++++++++++++++++++++++++--------------
1 file changed, 50 insertions(+), 24 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index d530bf5..8967139 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -909,50 +909,76 @@
#t))))))))
(define binutils-mesboot0
+ ;; The initial Binutils
(package
(inherit binutils)
(name "binutils-mesboot0")
- (version "2.20.1a")
+ (version "2.14")
(source (bootstrap-origin
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/binutils/binutils-"
- version ".tar.bz2"))
- (patches (search-patches "binutils-boot-2.20.1a.patch"))
+ version ".tar.gz"))
+ ;; `patches' needs XZ
+ ;; (patches (search-patches "binutils-boot-2.20.1a.patch"))
(sha256
(base32
- "0r7dr0brfpchh5ic0z9r4yxqn4ybzmlh25sbp30cacqk8nb7rlvi")))))
+ "1w8xp7k44bkijr974x9918i4p1sw4g2fcd5mxvspkjpg38m214ds")))))
(inputs '())
(propagated-inputs '())
- (native-inputs `(("tcc" ,tcc-boot)
+ (native-inputs `(("bash" ,bash-mesboot0)
+ ("gzip" ,gzip-mesboot0)
+ ("make" ,make-mesboot0)
+ ("patch" ,patch-mesboot0)
+ ("sed" ,sed-mesboot0)
+ ("tcc" ,tcc-boot)
- ("bash" ,%bootstrap-coreutils&co)
- ("coreutils" ,%bootstrap-coreutils&co)
- ("diffutils" ,diffutils-mesboot)
- ("make" ,make-mesboot0)))
+ ("gash" ,%bootstrap-gash)
+ ("guile" ,%bootstrap-guile)))
(supported-systems '("i686-linux" "x86_64-linux"))
(arguments
`(#:implicit-inputs? #f
#:guile ,%bootstrap-guile
- #:tests? #f ; runtest: command not found
+ #:tests? #f ; runtest: command not found
#:parallel-build? #f
- #:strip-binaries? #f ; no strip yet
+ #:strip-binaries? #f ; no strip yet
#:configure-flags
- (let ((cppflags (string-append " -D __GLIBC_MINOR__=6"
- " -D MES_BOOTSTRAP=1"))
- (bash (assoc-ref %build-inputs "bash")))
- `(,(string-append "CONFIG_SHELL=" bash "/bin/sh")
- ,(string-append "CPPFLAGS=" cppflags)
- "AR=tcc -ar"
- "CXX=false"
- "RANLIB=true"
- ,(string-append "CC=tcc" cppflags)
- "--disable-nls"
+ (let ((out (assoc-ref %outputs "out")))
+ `("--disable-nls"
"--disable-shared"
"--disable-werror"
- "--build=i686-unknown-linux-gnu"
- "--host=i686-unknown-linux-gnu"
- "--with-sysroot=/"))))))
+ "--build=i386-unknown-linux"
+ "--host=i386-unknown-linux"
+ "--target=i386-unknown-linux"
+ "--with-sysroot=/"
+ ,(string-append "--prefix=" out)))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'setenv
+ (lambda _
+ (let* ((out (assoc-ref %outputs "out"))
+ (bash (assoc-ref %build-inputs "bash"))
+ (shell (string-append bash "/bin/bash")))
+ (setenv "CONFIG_SHELL" shell)
+ (setenv "SHELL" shell)
+ (setenv "AR" "tcc -ar")
+ (setenv "RANLIB" "true")
+ (setenv "CC" "tcc -D __GLIBC_MINOR__=6")
+ #t)))
+ (add-after 'unpack 'scripted-patch
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "bfd/configure"
+ (("^sed -e '/SRC-POTFILES.*" all)
+ "echo -e 'all:\\n\\ttrue\\n\\ninstall:\\n\\ttrue\\n' >
po/Makefile\n"))
+ #t))
+ (replace 'configure ; needs classic invocation of configure
+ (lambda* (#:key configure-flags #:allow-other-keys)
+ (format (current-error-port)
+ "running ./configure ~a\n" (string-join configure-flags))
+ (apply system* "./configure" configure-flags)
+ (substitute* "config.status"
+ (("[.]//dev/null") "/dev/null"))
+ (invoke "sh" "./config.status"))))))))
(define gcc-core-mesboot
;; Gcc-2.95.3 is the most recent GCC that is supported by what the Mes C
- 06/54: bootstrap: Add %bootstrap-gash. WIP, (continued)
- 06/54: bootstrap: Add %bootstrap-gash. WIP, guix-commits, 2019/11/22
- 12/54: bootstrap: nyacc-boot. WIP, guix-commits, 2019/11/22
- 13/54: bootstrap-gash-rewire? WIP, guix-commits, 2019/11/22
- 15/54: bootstrap: tcc-boot0: Scheme-only bootstrap. WIP, guix-commits, 2019/11/22
- 14/54: bootstrap: mes-boot: Scheme-only bootstrap. WIP, guix-commits, 2019/11/22
- 11/54: bootstrap: bootstrap-mes: Update for mes-0.21. WIP, guix-commits, 2019/11/22
- 16/54: bootstrap: Add gzip-mesboot0., guix-commits, 2019/11/22
- 19/54: bootstrap: Add bash-mesboot0., guix-commits, 2019/11/22
- 17/54: bootstrap: make-mesboot0: Scheme-only bootstrap., guix-commits, 2019/11/22
- 22/54: bootstrap: Add patch-mesboot0., guix-commits, 2019/11/22
- 24/54: bootstrap: binutils-mesboot0: Scheme-only bootstrap.,
guix-commits <=
- 31/54: bootstrap: gcc-mesboot0: Scheme-only bootstrap., guix-commits, 2019/11/22
- 23/54: bootstrap: Add sed-mesboot0., guix-commits, 2019/11/22
- 21/54: bootstrap: diffuils-mesboot: Scheme-only bootstrap., guix-commits, 2019/11/22
- 18/54: bootstrap: Add bzip2-mesboot0., guix-commits, 2019/11/22
- 28/54: Revert "bootstrap: Add bash-mesboot1.", guix-commits, 2019/11/22
- 32/54: bootstrap: Add tar-mesboot., guix-commits, 2019/11/22
- 30/54: bootstrap: glibc-mesboot0: Scheme-only bootstrap., guix-commits, 2019/11/22
- 27/54: bootstrap: Add bash-mesboot1., guix-commits, 2019/11/22
- 33/54: bootstrap: Add grep-mesboot., guix-commits, 2019/11/22
- 26/54: bootstrap: Add gawk-mesboot0., guix-commits, 2019/11/22