On Mon, Nov 9, 2015 at 2:47 PM, Ahmon Dancy dancy@franz.com wrote:
http://www.cliki.net/asdf has this FAQ:
Q: How do I query what files need to be recompiled?
A: With ASDF 3, you can (asdf:required-components system :force nil :force-not nil :keep-component 'asdf:cl-source-file :keep-operation 'asdf:compile-op)
However, with ASDF 3.1.6, I find that this does not work as advertised:
;;; system1.asd (asdf:defsystem :system1 :serial t :default-component-class asdf:cl-source-file.cl :components ((:file "one") (:file "two") (:file "three")))
cl-user(8): (asdf:compile-system :system1) t
cl-user(9): (asdf:required-components :system1 :force nil :force-not nil :keep-component 'asdf:cl-source-file :keep-operation 'asdf:compile-op) (#<asdf/lisp-action:cl-source-file.cl "system1" "one"> #<asdf/lisp-action:cl-source-file.cl "system1" "two"> #<asdf/lisp-action:cl-source-file.cl "system1" "three">)
Is there a new way to achieve the same goal?
If you want only the components that have are in need of recompiling, you need to further filter based on (compute-action-stamp nil o c), as done in asdf/plan:perform-plan.
Also, if you want files in other systems as well as in the current one, you need to specify :other-systems t.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org You can avoid reality, but you cannot avoid the consequences of avoiding reality. — Ayn Rand