From 0bf3466372afd981c55396e14a11c3eccaf1924e Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Sat, 21 Sep 2019 22:32:18 +0200 Subject: [PATCH] gnu: commencement: Add bzip2-mesboot. * gnu/packages/commencement.scm (bzip2-mesboot): New variable. --- gnu/packages/commencement.scm | 50 +++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 8f7c95b976..b9f5e6f438 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -789,6 +789,56 @@ (define (%boot-tcc0-inputs) ("tcc" ,tcc-boot0) ,@(%boot-gash-inputs))) +(define bzip2-mesboot + ;; The initial bzip2 + (package + (inherit bzip2) + (name "bzip2-mesboot") + (version (package-version bzip2)) + (source (bootstrap-origin (package-source bzip2))) + (supported-systems '("i686-linux" "x86_64-linux")) + (inputs '()) + (propagated-inputs '()) + (native-inputs (%boot-tcc0-inputs)) + (outputs '("out")) + (arguments + `(#:implicit-inputs? #f + #:guile ,%bootstrap-guile + #:parallel-build? #f + #:tests? #f ; check is naive, also checks non-built PROGRAMS + #:strip-binaries? #f ; no strip yet + #:make-flags (list "CC=tcc -I ." "AR=tcc -ar" "bzip2" + (string-append "PREFIX=" + (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'scripted-patch + (lambda _ + (substitute* "Makefile" + (("\tln " all) + (string-append "\t#" all))) + (substitute* "bzip2.c" + (("struct utimbuf uTimBuf;" all) + (string-append "// " all)) + (("uTimBuf[.]" all) + (string-append "// " all)) + (("retVal = utime [(] dstName, &uTimBuf [)];" all) + (string-append "retVal = 0; // " all))) + #t)) + (replace 'configure + (lambda _ + (with-output-to-file "utime.h" + (lambda _ (display " +#define fchown(filedes, owner, group) 0 +#define fchmod(filedes, mode) 0 +"))) + #t)) + (replace 'check + (lambda _ + (invoke "./bzip2" "--help"))) + ;; FIXME: no compressing gzip yet + (delete 'compress-documentation)))))) + (define tcc-boot (package (inherit tcc-boot0)