aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-01-27 09:50:07 +0100
committerLudovic Courtès <ludo@gnu.org>2017-01-27 09:52:26 +0100
commitd9b4cbc2a168ca3d248c5abf1f1d14c1808e6a20 (patch)
treedd9b810ec886703323282903dcfd9d30fed471f8
parent82a7a8c6671cb50a7886983af0c2d58d1cf62bc9 (diff)
downloadguix-d9b4cbc2a168ca3d248c5abf1f1d14c1808e6a20.tar
guix-d9b4cbc2a168ca3d248c5abf1f1d14c1808e6a20.tar.gz
gnu: bash: Do not retain dependency on Coreutils.
Previously the "include" output of BASH-FINAL would refer to 'bootstrap-binaries' via 'Makefile.inc'. * gnu/packages/bash.scm (bash)[arguments]: In 'move-development-files' phase, remove absolute file name of 'install' from the 'INSTALL' variable in 'Makefile.inc'. * gnu/packages/commencement.scm (bash-final)[arguments]: Pass #:disallowed-references.
-rw-r--r--gnu/packages/bash.scm9
-rw-r--r--gnu/packages/commencement.scm17
2 files changed, 19 insertions, 7 deletions
diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm
index 0923f5d55a..96ebe991e4 100644
--- a/gnu/packages/bash.scm
+++ b/gnu/packages/bash.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
@@ -171,6 +171,13 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
(rename-file (string-append out "/lib/pkgconfig")
(string-append include
"/lib/pkgconfig"))
+
+ ;; Don't capture the absolute file name of 'install' to avoid
+ ;; retaining a dependency on Coreutils.
+ (substitute* (string-append (lib include)
+ "/Makefile.inc")
+ (("^INSTALL =.*")
+ "INSTALL = install -c\n"))
#t))))))
(native-search-paths
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 94b4d440ca..675852fb57 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -800,12 +800,17 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define bash-final
;; Link with `-static-libgcc' to make sure we don't retain a reference
;; to the bootstrap GCC.
- ;; FIXME: This depends on 'bootstrap-binaries' via Makefile.in.
- (package-with-bootstrap-guile
- (package-with-explicit-inputs (static-libgcc-package bash)
- %boot3-inputs
- (current-source-location)
- #:guile %bootstrap-guile)))
+ (let ((bash (package
+ (inherit bash)
+ (arguments
+ `(#:disallowed-references
+ ,(assoc-ref %boot3-inputs "coreutils&co")
+ ,@(package-arguments bash))))))
+ (package-with-bootstrap-guile
+ (package-with-explicit-inputs (static-libgcc-package bash)
+ %boot3-inputs
+ (current-source-location)
+ #:guile %bootstrap-guile))))
(define %boot4-inputs
;; Now use the final Bash.