janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit be806e985983bebbe9ce1ef794ab58bf4f65d84f
Author: Jan Nieuwenhuizen <[email protected]>
Date: Mon Aug 27 01:18:54 2018 +0200
gnu: Add make-mesboot 3.79.
* gnu/packages/commencement.scm (make-mesboot): New variable.
---
gnu/packages/commencement.scm | 55 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 9ad8ab8..6c21ab8 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -546,6 +546,61 @@
(copy-file "libtcc1.a" (string-append out
"/lib/tcc/libtcc1.a"))))))))))))
+(define-public make-mesboot
+ (package-with-bootstrap-guile
+ (package
+ (inherit gnu-make)
+ (name "make-mesboot")
+ (version "3.79")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/make/make-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1hkss2hajbigk61fppfkvmw242zbkh6wfzg9ksbpqbhyszwy1gg4"))))
+ (supported-systems '("i686-linux"))
+ (inputs '())
+ (propagated-inputs '())
+ (native-inputs `(("tcc" ,tcc-boot)
+
+ ("bash" ,%bootstrap-coreutils&co)
+ ("coreutils" ,%bootstrap-coreutils&co)))
+ (arguments
+ `(#:implicit-inputs? #f
+ #:tests? #f ; check depends on perl
+ #:guile ,%bootstrap-guile
+ #:strip-binaries? #f ; binutil's strip b0rkes MesCC/M1/hex2 binaries
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'remove-lseek-prototype
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "make.h"
+ (("^extern long int lseek.*" all) (string-append "// " all)))))
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (unsetenv "C_INCLUDE_PATH")
+ (unsetenv "LIBRARY_PATH")
+ (setenv "CONFIG_SHELL" (string-append
+ (assoc-ref %build-inputs "bash")
+ "/bin/sh"))
+ (setenv "CC" "tcc -g -static")
+ (setenv "CPP" "tcc -E")
+ (format (current-error-port) "PATH=~a\n" (getenv "PATH"))
+ (zero?
+ (system* "./configure"
+ (string-append "--prefix=" out))))))
+ (delete 'patch-generated-file-shebangs) ; no perl
+ (replace 'build
+ (lambda _
+ (zero? (system* "sh" "./build.sh"))))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (install-file "make" bin))))))))))
+
(define-public binutils-mesboot0
(package-with-bootstrap-guile
(package/inherit