janneke pushed a commit to branch wip-bootstrap in repository guix. commit be806e985983bebbe9ce1ef794ab58bf4f65d84f Author: Jan Nieuwenhuizen <jann...@gnu.org> 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