~ruther/guix-local

b47b2b52759e6c706fb988c220f913eff95c17cd — Ludovic Courtès 11 years ago 84e6756
gnu: coreutils: Remove run-time dependency on Bash.

* gnu/packages/base.scm (coreutils)[arguments] <patch-shell-references>:
  Leave src/split.c unpatched.  Set $SHELL.  Use .../bin/sh and not
  .../bin/bash in tests.
1 files changed, 6 insertions(+), 4 deletions(-)

M gnu/packages/base.scm
M gnu/packages/base.scm => gnu/packages/base.scm +6 -4
@@ 263,14 263,16 @@ used to apply commands with arbitrarily long arguments.")
                'build 'patch-shell-references
                (lambda* (#:key inputs #:allow-other-keys)
                  (let ((bash (assoc-ref inputs "bash")))
                    (substitute* (cons "src/split.c"
                                       (find-files "gnulib-tests"
                                                   "\\.c$"))
                    ;; 'split' uses either $SHELL or /bin/sh.  Set $SHELL so
                    ;; that tests pass, since /bin/sh isn't in the chroot.
                    (setenv "SHELL" (which "sh"))

                    (substitute* (find-files "gnulib-tests" "\\.c$")
                      (("/bin/sh")
                       (format #f "~a/bin/sh" bash)))
                    (substitute* (find-files "tests" "\\.sh$")
                      (("#!/bin/sh")
                       (format #f "#!~a/bin/bash" bash)))))
                       (format #f "#!~a/bin/sh" bash)))))
                %standard-phases)))
   (synopsis "Core GNU utilities (file, text, shell)")
   (description