[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/02: bootstrap: Add %mescc-tools-static-stripped.
From: |
guix-commits |
Subject: |
01/02: bootstrap: Add %mescc-tools-static-stripped. |
Date: |
Mon, 22 Jul 2019 13:36:08 -0400 (EDT) |
janneke pushed a commit to branch wip-cu-binaries
in repository guix.
commit 1bd1d4b0c1906f8e0d04044d742b33adb1a6b3eb
Author: Jan Nieuwenhuizen <address@hidden>
Date: Mon Jul 22 10:08:01 2019 +0200
bootstrap: Add %mescc-tools-static-stripped.
* gnu/packages/make-bootstrap.scm (%mescc-tools-static-stripped): New
variable.
(%mescc-tools-bootstrap-tarball): Use it.
---
gnu/packages/make-bootstrap.scm | 34 +++++++++++++++++++++++++++++++---
1 file changed, 31 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm
index ff0523b..cbc0204 100644
--- a/gnu/packages/make-bootstrap.scm
+++ b/gnu/packages/make-bootstrap.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2017 Efraim Flashner <address@hidden>
;;; Copyright © 2018 Tobias Geerinckx-Rice <address@hidden>
;;; Copyright © 2018 Mark H Weaver <address@hidden>
-;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen <address@hidden>
+;;; Copyright © 2018,2019 Jan (janneke) Nieuwenhuizen <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -537,8 +537,9 @@ for `sh' in $PATH, and without nscd, and with static NSS
modules."
#t))))
(inputs `(("gcc" ,%gcc-static)))))
+;; Two packages: first build static, bare minimum content...
(define %mescc-tools-static
- ;; A statically linked MesCC Tools for bootstrap.
+ ;; A statically linked MesCC Tools.
(package
(inherit mescc-tools)
(name "mescc-tools-static")
@@ -548,6 +549,33 @@ for `sh' in $PATH, and without nscd, and with static NSS
modules."
((#:make-flags flags)
`(cons "CC=gcc -static" ,flags)))))))
+;; ...next remove store references.
+(define %mescc-tools-static-stripped
+ ;; A statically linked Mescc Tools with store references removed, for
+ ;; bootstrap.
+ (package
+ (inherit %mescc-tools-static)
+ (name (string-append (package-name %mescc-tools-static) "-stripped"))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((in (assoc-ref %build-inputs "mescc-tools"))
+ (out (assoc-ref %outputs "out"))
+ (bin (string-append out "/bin")))
+ (mkdir-p bin)
+ (for-each (lambda (file)
+ (let ((target (string-append bin "/" file)))
+ (format #t "copying `~a'...~%" file)
+ (copy-file (string-append in "/bin/" file)
+ target)
+ (remove-store-references target)))
+ '( "M1" "blood-elf" "hex2"))
+ #t))))
+ (inputs `(("mescc-tools" ,%mescc-tools-static)))))
+
(define-public %mes-minimal-stripped
;; A minimal Mes without documentation dependencies, for bootstrap.
(let ((triplet "i686-unknown-linux-gnu"))
@@ -743,7 +771,7 @@ for `sh' in $PATH, and without nscd, and with static NSS
modules."
(define %mescc-tools-bootstrap-tarball
;; A tarball with MesCC binary seed.
- (tarball-package %mescc-tools-static))
+ (tarball-package %mescc-tools-static-stripped))
(define %mes-bootstrap-tarball
;; A tarball with Mes ASCII Seed and binary Mes C Library.