(in-package #:candle-local) (defmethod candle:process-job-in-system ((job-system (eql :local)) job) (let ((work-dir (format nil "~Awork/" candle:*candle-dir*)) (result nil)) (sb-ext:run-program "/bin/cp" (list "-ap" (candle:project-dir (candle:job-project job)) work-dir)) (let* ((*default-pathname-defaults* (pathname work-dir)) (*error-output* (make-broadcast-stream)) (output (with-output-to-string (*standard-output*) (setf result (candle:run))))) (sb-ext:delete-directory work-dir :recursive t) (values result output))))