utils: Preserve makefile shell arguments during patch.

* guix/build/utils.scm (patch-makefile-SHELL): Preserve shell arguments.
This commit is contained in:
Eric Bavier 2014-08-27 10:26:54 -05:00
parent f5beb0caf3
commit 83291101c3

View File

@ -582,14 +582,15 @@ When KEEP-MTIME? is true, the atime/mtime of FILE are kept unchanged."
(let ((st (stat file)))
(substitute* file
(("^ *SHELL[[:blank:]]*=[[:blank:]]*([[:graph:]]*/)([[:graph:]]+)[[:blank:]]*" _ dir shell)
(("^ *SHELL[[:blank:]]*=[[:blank:]]*([[:graph:]]*/)([[:graph:]]+)[[:blank:]]*(.*)$"
_ dir shell args)
(let* ((old (string-append dir shell))
(new (or (find-shell shell) old)))
(unless (string=? new old)
(format (current-error-port)
"patch-makefile-SHELL: ~a: changing `SHELL' from `~a' to `~a'~%"
file old new))
(string-append "SHELL = " new "\n"))))
(string-append "SHELL = " new " " args))))
(when keep-mtime?
(set-file-time file st))))