Danny Milosavljevic wrote 8 years ago
(address . guix-patches@gnu.org)(name . Danny Milosavljevic)(address . dannym@scratchpost.org)
* guix/build/utils.scm (invoke): New variable.
---
guix/build/utils.scm | 8 ++++++++
1 file changed, 8 insertions(+)
Toggle diff (26 lines)
diff --git a/guix/build/utils.scm b/guix/build/utils.scm
index 6d3c29d00..b2307d9d6 100644
--- a/guix/build/utils.scm
+++ b/guix/build/utils.scm
@@ -84,6 +84,7 @@
fold-port-matches
remove-store-references
wrap-program
+ invoke
locale-category->string))
@@ -1058,6 +1059,13 @@ with definitions for VARS."
(chmod prog-tmp #o755)
(rename-file prog-tmp prog))))
+(define invoke
+ "Invokes the program (array-ref ARGS 0) and gives it ARGS.
+ If the exit code is non-zero, raises an error."
+ (lambda args
+ (if (not (zero? (system* args)))
+ (error (format #f "Failed to invoke ~a" args)))))
+
;;;
;;; Locales.