diff --git a/concatenate-source.lisp b/concatenate-source.lisp index 3c7258dad6ff8c04917cb17dcb05e6dbd20b53dc..a2eb5d6d96b46fb9d1e12c10036b98470b22ad26 100644 --- a/concatenate-source.lisp +++ b/concatenate-source.lisp @@ -77,9 +77,11 @@ (lisp-compilation-output-files o s)) (defmethod perform ((o basic-concatenate-source-op) (s system)) - (let ((inputs (input-files o s)) - (output (output-file o s))) - (concatenate-files inputs output))) + (let* ((ins (input-files o s)) + (out (output-file o s)) + (tmp (tmpize-pathname out))) + (concatenate-files ins tmp) + (rename-file-overwriting-target tmp out))) (defmethod perform ((o basic-load-concatenated-source-op) (s system)) (perform-lisp-load-source o s)) (defmethod perform ((o basic-compile-concatenated-source-op) (s system))