[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
49/70: bootstrap: binutils-mesboot: Use Gash instead of coreutils&co.
From: |
guix-commits |
Subject: |
49/70: bootstrap: binutils-mesboot: Use Gash instead of coreutils&co. |
Date: |
Wed, 11 Dec 2019 13:04:47 -0500 (EST) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit cd47d6c2080a7527318e54d01baa2d074f47d97e
Author: Jan Nieuwenhuizen <address@hidden>
Date: Fri Nov 22 22:00:58 2019 +0100
bootstrap: binutils-mesboot: Use Gash instead of coreutils&co.
* gnu/packages/commencement.scm (binutils-mesboot): Use Gash instead of
coreutils&co.
* gnu/packages/commencement.scm (%boot-mesboot3-inputs): New variable.
---
gnu/packages/commencement.scm | 95 +++++++++++++++++++++++++++++++++----------
1 file changed, 74 insertions(+), 21 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index aee55f5..5b2251d 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -2318,27 +2318,75 @@ ac_cv_c_float_format='IEEE (little-endian)'
(invoke "./hello"))))))))
(define binutils-mesboot
- (package
- (inherit binutils-mesboot0)
- (name "binutils-mesboot")
- (native-inputs `(("binutils" ,binutils-mesboot0)
- ("libc" ,glibc-mesboot0)
- ("gcc" ,gcc-mesboot0)
-
- ("bash" ,%bootstrap-coreutils&co)
- ("coreutils" ,%bootstrap-coreutils&co)
- ("diffutils" ,diffutils-mesboot)
- ("kernel-headers" ,%bootstrap-linux-libre-headers)
- ("make" ,make-mesboot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments binutils-mesboot0)
- ((#:configure-flags configure-flags)
- '(list "--disable-nls"
- "--disable-shared"
- "--disable-werror"
- "--build=i686-unknown-linux-gnu"
- "--host=i686-unknown-linux-gnu"
- "--with-sysroot=/"))))))
+ (package-with-bootstrap-guile
+ (package
+ (inherit binutils)
+ (name "binutils-mesboot")
+ (version "2.20.1a")
+ (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"))
+ (sha256
+ (base32
+ "0r7dr0brfpchh5ic0z9r4yxqn4ybzmlh25sbp30cacqk8nb7rlvi")))))
+ (inputs '())
+ (propagated-inputs '())
+ (native-inputs `(("xz" ,xz-mesboot)
+ ,@(%boot-mesboot2-inputs)))
+ (supported-systems '("i686-linux" "x86_64-linux"))
+ (arguments
+ `(#:implicit-inputs? #f
+ #:guile ,%bootstrap-guile
+ #:tests? #f ; runtest: command not found
+ #:parallel-build? #f
+ #:strip-binaries? #f ; no strip yet
+ #:configure-flags
+ `("CC=gcc"
+ "CXX=false"
+ "RANLIB=true"
+ "--disable-doc"
+ "--disable-nls"
+ "--disable-shared"
+ "--disable-werror"
+ "--build=i686-unknown-linux-gnu"
+ "--host=i686-unknown-linux-gnu"
+ "--with-sysroot=/"
+ ;; checking for grep that handles long lines and -e
+ "ac_cv_path_GREP=grep")
+ ;; FIXME: ac_cv_path_GREP=grep doesn't seem to be forwarded to
+ ;; cascading configure's?
+ #:make-flags '("ac_cv_path_GREP=grep")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'scripted-patch
+ (lambda _
+ ;; sed-mesboot0 cannot build these
+ (copy-file "binutils/Makefile.in" "binutils/Makefile.in.orig")
+ (substitute* "binutils/Makefile.in"
+ ;; binutils/binutils uses an amazingly complex install
+ ;; command, using FOR, SED, READ, IF, ECHO, SED, SED, AWK,
+ ;; READ, and then LIBTOOL (to do something like
+ ;; `mkdir $DESTDIR$bindir; cp readline $DESTDIR$bindir ...')
+
+ ;; Some tool [debugme!] cannot handle two escaped newlines
+ ;; (bash?), and the install stops after $(am__EXEEXT_11)
+ ;; ("objcopy"), so $(am__EXEEXT_13) ("readelf") and others do
+ ;; not get installed. Remove the stray newline:
+ (("^\t@BUILD_NLMCONV@ @BUILD_SRCONV@ @BUILD_DLLTOOL@
@BUILD_WINDRES@ .*") ""))
+ (substitute* "opcodes/Makefile.in"
+ (("^SUBDIRS = [.] po") "SUBDIRS = ."))
+ (substitute* "binutils/Makefile.in"
+ (("^SUBDIRS = doc po") "SUBDIRS ="))
+ (substitute* "gas/Makefile.in"
+ (("^SUBDIRS = doc po") "SUBDIRS ="))
+ (substitute* "gprof/Makefile.in"
+ (("^SUBDIRS = po") "SUBDIRS ="))
+ (substitute* "ld/Makefile.in"
+ (("^SUBDIRS = po") "SUBDIRS ="))
+ #t))))))))
(define gcc-mesboot1-wrapper
;; We need this so gcc-mesboot1 can be used to create shared binaries that
@@ -2397,6 +2445,11 @@ exec " gcc "/bin/" program
(program (string-append bin "/gcc")))
(invoke program "--help")))))))))
+(define (%boot-mesboot3-inputs)
+ `(("binutils" ,binutils-mesboot)
+ ("xz" ,xz-mesboot)
+ ,@(alist-delete "binutils" (%boot-mesboot2-inputs))))
+
(define glibc-headers-mesboot
(package
(inherit glibc-mesboot0)
- 24/70: bootstrap: Add bzip2-mesboot., (continued)
- 24/70: bootstrap: Add bzip2-mesboot., guix-commits, 2019/12/11
- 23/70: bootstrap: make-mesboot0: Use Gash instead of coreutils&co., guix-commits, 2019/12/11
- 21/70: bootstrap: tcc-boot0: Use Gash instead of coretutils&co., guix-commits, 2019/12/11
- 28/70: bootstrap: Add patch-mesboot., guix-commits, 2019/12/11
- 37/70: bootstrap: Add grep-mesboot., guix-commits, 2019/12/11
- 33/70: bootstrap: mesboot-headers: Use Gash instead of coretutils&co., guix-commits, 2019/12/11
- 31/70: bootstrap: gcc-core-mesboot0: Use Gash instead of coretutils&co., guix-commits, 2019/12/11
- 44/70: bootstrap: Add bash-mesboot., guix-commits, 2019/12/11
- 30/70: bootstrap: binutils-mesboot0: Use Gash instead of coretutils&co., guix-commits, 2019/12/11
- 41/70: bootstrap: Add gawk-mesboot., guix-commits, 2019/12/11
- 49/70: bootstrap: binutils-mesboot: Use Gash instead of coreutils&co.,
guix-commits <=
- 50/70: bootstrap: glibc-headers-mesboot: Use Gash instead of coreutils&co., guix-commits, 2019/12/11
- 53/70: bootstrap: gcc-mesboot1-wrapper: Use Gash instead of coreutils&co., guix-commits, 2019/12/11
- 55/70: bootstrap: gcc-mesboot-wrapper: Use Gash instead of coreutils&co., guix-commits, 2019/12/11
- 57/70: bootstrap: Remove m4-mesboot., guix-commits, 2019/12/11
- 29/70: bootstrap: Add sed-mesboot0., guix-commits, 2019/12/11
- 35/70: bootstrap: gcc-mesboot0: Use Gash instead of coretutils&co., guix-commits, 2019/12/11
- 36/70: bootstrap: Add tar-mesboot., guix-commits, 2019/12/11
- 39/70: bootstrap: Add coreutils-mesboot0., guix-commits, 2019/12/11
- 34/70: bootstrap: glibc-mesboot0: Use Gash instead of coretutils&co., guix-commits, 2019/12/11
- 40/70: bootstrap: Add make-mesboot., guix-commits, 2019/12/11