distro: Add missing commands in the bootstrap binaries.

* distro/packages/base.scm (%static-inputs): Add an `awk' -> `gawk', and
  `sh' -> `bash' symlinks.  Add `fgrep' and `egrep'.
  (%bootstrap-coreutils&co): Use new tarball that contains that
  symlink.

* distro/packages/bootstrap/x86_64-linux/bash,
  distro/packages/bootstrap/x86_64-linux/mkdir,
  distro/packages/bootstrap/x86_64-linux/tar,
  distro/packages/bootstrap/x86_64-linux/xz: Use binaries from that
  tarball (the previous binaries hadn't gone through
  `remove-store-references', which is fixed now.)
This commit is contained in:
Ludovic Courtès 2012-10-24 23:10:09 +02:00
parent 692c6c1576
commit e6cc3d8654
5 changed files with 13 additions and 1 deletions

View file

@ -1496,7 +1496,7 @@ (define %bootstrap-coreutils&co
system "/static-binaries.tar.xz"))
(sha256
(base32
"0bvhkzahjgf6w5i3db5bjgq8kqm6xdr23lig0s1p8fgdqbfp0bzm"))))
"0azisn8l2b3cvgni9k0ahzsxs5cxrj0hmf38zgpq3k6pggk3zbfm"))))
"true" ; the program to test
"Bootstrap binaries of Coreutils, Awk, etc."))
@ -2200,10 +2200,22 @@ (define (copy-directory source destination)
(string-append bin "/" name)))))
(alist-delete "coreutils" %build-inputs))
;; But of course, there are exceptions to this rule.
(let ((grep (assoc-ref %build-inputs "grep")))
(copy-file (string-append grep "/bin/fgrep")
(string-append bin "/fgrep"))
(copy-file (string-append grep "/bin/egrep")
(string-append bin "/egrep")))
;; Clear references to the store path.
(for-each remove-store-references
(directory-contents bin))
(with-directory-excursion bin
;; Programs such as Perl's build system want these aliases.
(symlink "bash" "sh")
(symlink "gawk" "awk"))
#t)))))
(description "Statically-linked bootstrap binaries")
(long-description