Output fasl directory
Hi all,
I’d like my fasl-output directory to be kept separate to project directories, mostly for aesthetic reasons, but it can also be annoying opening files in the LW editor having filename autocomplete stumble between *.lisp and *.*fasl files.
Using an :OBJECT-PATHNAME form in each LW:DEFSYSTEM works well enough for COMPILE-SYSTEM calls.
However compilation in the editor buffer (e.g. compile-defun-command and compile-buffer-command) leaves *.*fasl droppings in the directories.
My first attempt in my .lispworks init file:
(defadvice (compile-file dont-save-fasl :around) (&rest args)
(if (getf (cdr args) :in-memory)
(apply #'call-next-advice args)
(apply #'call-next-advice (car args) :output-file :temp
(loop for (a b) on (cdr args) by #'cddr nconc (unless (eq a :output-file) (list a b))))))
appears to work well enough for buffer compilation commands, but now fails miserably for COMPILE-SYSTEM ; it can’t find the output *.*fasl files for LOAD-SYTEM (obviously enough, because my DEFADVICE puts the *.*fasl files in a temp folder).
Any suggestions on a better approach? Goal here is simply to keep *.*fasl files away from the source files.
Adam
_______________________________________________
Lisp Hug - the mailing list for LispWorks users
lisp-hug@lispworks.com
http://www.lispworks.com/support/lisp-hug.html