From 47bc991f71d0314217d103798db99f55ce59cde5 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 12 Jul 2016 13:56:08 +1000 Subject: gnu: parallel: Use full paths for executables. * gnu/packages/parallel.scm (parallel)[inputs]: Add procps. [arguments]: New field. --- gnu/packages/parallel.scm | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'gnu/packages') diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 12f0028a34..3bb078e031 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Pjotr Prins ;;; Copyright © 2016 Andreas Enge ;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2016 Ben Woodcroft ;;; ;;; This file is part of GNU Guix. ;;; @@ -54,7 +55,31 @@ (base32 "08gm0i9vj2nz8qgqi98z00myypgb3dni0s5yf3l17fp8h78fp4g3")))) (build-system gnu-build-system) - (inputs `(("perl" ,perl))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-bin-sh + (lambda _ + (for-each + (lambda (file) + (substitute* file + ;; Patch hard coded '/bin/sh' in the lin ending in: + ;; $Global::shell = $ENV{'PARALLEL_SHELL'} || + ;; parent_shell($$) || $ENV{'SHELL'} || "/bin/sh"; + (("/bin/sh\\\";\n$") (string-append (which "sh") "\";\n")) + ;; Patch call to 'ps' and 'perl' commands. + ((" ps ") (string-append " " (which "ps") " ")) + ((" perl -") (string-append " " (which "perl") " -")))) + (list "src/parallel" "src/sem")))) + (add-after 'install 'post-install-test + (lambda* (#:key outputs #:allow-other-keys) + (zero? (system* (string-append + (assoc-ref outputs "out") "/bin/parallel") + "echo" + ":::" "1" "2" "3"))))))) + (inputs + `(("perl" ,perl) + ("procps" ,procps))) (home-page "http://www.gnu.org/software/parallel/") (synopsis "Build and execute command lines in parallel") (description -- cgit 1.4.1