utils: Treat 'configure' and Makefiles with an 8-bit encoding.
* guix/build/utils.scm (patch-makefile-SHELL, patch-/usr/bin/file): Wrap 'substitute*' in 'with-fluids'. Fixes <http://hydra.gnu.org/build/262895>.
This commit is contained in:
parent
4db87162e6
commit
dd0a8ef15f
@ -712,16 +712,18 @@ When KEEP-MTIME? is true, the atime/mtime of FILE are kept unchanged."
|
||||
shell))
|
||||
|
||||
(let ((st (stat file)))
|
||||
(substitute* file
|
||||
(("^ *SHELL[[:blank:]]*:?=[[:blank:]]*([[:graph:]]*/)([[:graph:]]+)(.*)$"
|
||||
_ 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 args))))
|
||||
;; Consider FILE is using an 8-bit encoding to avoid errors.
|
||||
(with-fluids ((%default-port-encoding #f))
|
||||
(substitute* file
|
||||
(("^ *SHELL[[:blank:]]*:?=[[:blank:]]*([[:graph:]]*/)([[:graph:]]+)(.*)$"
|
||||
_ 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 args)))))
|
||||
|
||||
(when keep-mtime?
|
||||
(set-file-time file st))))
|
||||
@ -738,13 +740,15 @@ unchanged."
|
||||
"patch-/usr/bin/file: warning: \
|
||||
no replacement 'file' command, doing nothing~%")
|
||||
(let ((st (stat file)))
|
||||
(substitute* file
|
||||
(("/usr/bin/file")
|
||||
(begin
|
||||
(format (current-error-port)
|
||||
"patch-/usr/bin/file: ~a: changing `~a' to `~a'~%"
|
||||
file "/usr/bin/file" file-command)
|
||||
file-command)))
|
||||
;; Consider FILE is using an 8-bit encoding to avoid errors.
|
||||
(with-fluids ((%default-port-encoding #f))
|
||||
(substitute* file
|
||||
(("/usr/bin/file")
|
||||
(begin
|
||||
(format (current-error-port)
|
||||
"patch-/usr/bin/file: ~a: changing `~a' to `~a'~%"
|
||||
file "/usr/bin/file" file-command)
|
||||
file-command))))
|
||||
|
||||
(when keep-mtime?
|
||||
(set-file-time file st)))))
|
||||
|
Loading…
Reference in New Issue
Block a user