[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
33/35: bootstrap: Add gawk-mesboot0.
From: |
guix-commits |
Subject: |
33/35: bootstrap: Add gawk-mesboot0. |
Date: |
Wed, 20 Nov 2019 15:19:41 -0500 (EST) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit ed170b8536770de22c2d4d4d3e74a74e3c91c6d8
Author: Jan Nieuwenhuizen <address@hidden>
Date: Sun Oct 6 22:08:05 2019 +0200
bootstrap: Add gawk-mesboot0.
* gnu/packages/commencement.scm (gawk-mesboot0): New variable.
---
gnu/packages/commencement.scm | 103 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 103 insertions(+)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 0d7bb10..14949d2 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -1160,6 +1160,109 @@ ac_cv_c_float_format='IEEE (little-endian)'
(variable "C_INCLUDE_PATH")
(files '("include"))))))))
+(define gawk-mesboot0
+ (package-with-bootstrap-guile
+ (package
+ (inherit gawk)
+ (name "gawk-mesboot0")
+ (version "3.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/gawk/gawk-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "087s7vpc8zawn3l7bwv9f44bf59rc398hvaiid63klw6fkbvabr3"))))
+ (supported-systems '("i686-linux" "x86_64-linux"))
+ (inputs '())
+ (propagated-inputs '())
+ (native-inputs `(;;("debug-patch" ,(search-patch "gawk-debug.patch"))
+ ("patch" ,patch-mesboot0)
+ ("bash" ,bash-mesboot0)
+ ("diffutils" ,diffutils-mesboot)
+ ("gzip" ,gzip-mesboot0)
+ ("make" ,make-mesboot0)
+ ("sed" ,sed-mesboot0)
+ ("tcc" ,tcc-boot)
+
+ ("gash" ,%bootstrap-gash)
+ ("guile" ,%bootstrap-guile)))
+ (arguments
+ `(#:implicit-inputs? #f
+ #:guile ,%bootstrap-guile
+ #:configure-flags '("--build=i686-unknown-linux-gnu"
+ "--host=i686-unknown-linux-gnu"
+ "--disable-nls")
+ #:make-flags '("gawk")
+ #:parallel-build? #f
+ #:parallel-tests? #f
+ #:strip-binaries? #f ; no strip yet
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'scripted-patch
+ (lambda _
+ (substitute* "Makefile.in"
+ (("date ") "echo today ")
+ ((" autoheader") "true")
+ ((" -lm ") " "))
+ (substitute* "test/Makefile.in"
+ (("^bigtest:.*") "bigtest: basic\n")
+ (("( |\t)(childin|convfmt|fflush|longwrds|math|negexp)" all
sep) sep))))
+ (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 "CC" "tcc")
+ (setenv "CPP" "tcc -E")
+ (setenv "LD" "tcc")
+ (setenv "ac_cv_func_getpgrp_void" "yes"))
+ #t))
+ (replace 'configure ; needs classic invocation of configure
+ (lambda* (#:key configure-flags #:allow-other-keys)
+ (let* ((out (assoc-ref %outputs "out"))
+ (configure-flags
+ `(,@configure-flags
+ ,(string-append "--prefix=" out))))
+ (format (current-error-port) "running ./configure ~a\n"
(string-join configure-flags))
+ (system* "touch" "configure") ; aclocal.m4 is newer than
configure
+ (apply invoke (cons "./configure" configure-flags)))))
+ (add-after 'configure 'configure-fixups
+ (lambda _
+ (let ((config.h (open-file "config.h" "a")))
+ (display (string-append "
+#define __STDC__ 1
+#define HAVE_MKTIME 1
+#define HAVE_TZSET 1
+#define tzset() 0
+//#define GETPGRP_VOID 1
+
+//#define atan2(x,y) (x/y)
+//#define ceil(x) ((int)(x+1))
+//#define cos(x) x
+//#define exp(x) (3*(int)x)
+//#define floor(x) ((int)x)
+//#define log(x) ((int)x)
+//#define modf(x,y) 0
+//#define pow(x,y) 0
+//#define sin(x) 0
+//#define sqrt(x) 0
+
+//#define __MES_MATH_H 1
+")
+ config.h)
+ (close config.h))
+ #t))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (install-file "gawk" bin)
+ (symlink "gawk" (string-append bin "/awk"))
+ #t)))))))))
+
(define glibc-mesboot0
;; GNU C Library 2.2.5 is the most recent glibc that we managed to build
;; using gcc-2.95.3. Newer versions (2.3.x, 2.6, 2.1x) seem to need a newer
- 25/35: bootstrap: Add bzip2-mesboot0., (continued)
- 25/35: bootstrap: Add bzip2-mesboot0., guix-commits, 2019/11/20
- 26/35: bootstrap: Add bash-mesboot0., guix-commits, 2019/11/20
- 27/35: bootstrap: tcc-boot: Scheme-only bootstrap., guix-commits, 2019/11/20
- 30/35: bootstrap: Add sed-mesboot0., guix-commits, 2019/11/20
- 23/35: bootstrap: Add gzip-mesboot0., guix-commits, 2019/11/20
- 21/35: bootstrap: tcc-boot0: Scheme-only bootstrap. WIP, guix-commits, 2019/11/20
- 28/35: bootstrap: diffuils-mesboot: Scheme-only bootstrap., guix-commits, 2019/11/20
- 32/35: bootstrap: gcc-core-mesboot0: Scheme-only bootstrap., guix-commits, 2019/11/20
- 31/35: bootstrap: binutils-mesboot0: Scheme-only bootstrap., guix-commits, 2019/11/20
- 29/35: bootstrap: Add patch-mesboot0., guix-commits, 2019/11/20
- 33/35: bootstrap: Add gawk-mesboot0.,
guix-commits <=
- 34/35: bootstrap: Add bash-mesboot1., guix-commits, 2019/11/20
- 35/35: bootstrap: glibc-mesboot0: Scheme-only bootstrap., guix-commits, 2019/11/20