guix-commits
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]