diff --git a/run.lisp b/run.lisp index b82800655e27c3e4de9315abbee5e60f087768c8..efc92de4f05dda0fbf0a5bb82a4cae4e21070f42 100644 --- a/run.lisp +++ b/run.lisp @@ -64,7 +64,7 @@ (function (apply 'run-process-spec (funcall host spec) :host nil keys)))) -(defun run (cmd &key on-error time (output t) show host) +(defun run (cmd &key time (output t) show host (on-error (list "Command ~S failed~@[ on ~A~]" cmd host))) (labels ((process-time () (if time (time (process-command)) (process-command))) (process-command () diff --git a/utilities.lisp b/utilities.lisp index 980ae77c092fe62f1265bf1417b7077b4d9e99ca..54cd7f4b093cbf1ccc027b03dd5e3ab86dd6316d 100644 --- a/utilities.lisp +++ b/utilities.lisp @@ -5,12 +5,16 @@ ;;--- TODO: move these to FARE-UTILS and/or XCVB-DRIVER ? (defun make-directory (dir &optional (mode #o755)) + ;; TODO: move to fare-utils or somewhere else + ;; TODO: it's low-level. rename this mkdir or some such, and document use of native-namestring. + #+clozure (ccl::%mkdir dir mode) #+sbcl (sb-posix:mkdir dir mode) - #-sbcl (NIY 'make-directory)) + #-(or clozure sbcl) (NIY 'make-directory)) (defun setenv (var val &optional (overwritep t)) + #+clozure (ccl:setenv var val overwritep) #+sbcl (sb-posix:setenv var val (if overwritep 1 0)) - #-sbcl (NIY 'setenv)) + #-(or clozure sbcl) (NIY 'setenv)) (defmacro pipe (values &rest transformers) (if (null transformers)