从https://stackoverflow.com/questions/72109968/how-to-specify-additional-files-as-prerequisites-that-would-cause-asdf-to-recomp中,我了解到ASDF static-file
指令可用于列出Common Lisp 程序依赖。例如:
(defsystem "myprog"
:components ((:static-file "1.txt")
(:static-file "2.txt")
(:file "myprog" :depends-on ("1.txt" "2.txt"))))
这需要程序员明确列出静态文件。如果有很多静态文件,并且它们都驻留在一个目录及其子目录中,手动列出所有静态文件可能变得不切实际。 ASDF 有没有办法将目录及其子目录中的所有文件视为静态文件?
回答1
实际上,您可以使用相同的 :static-file
“指令”来指示对某个目录中文件的依赖关系。或者更确切地说是目录本身的存在(可能包含一些文件)。理论上,您可以添加一个单独的 :static-dir
依赖类并进行一些特殊处理。但问题是这种特殊处理将构成什么?如果您不想手动指定确切的文件列表(已经可以使用 (:module "dir" :components ((:static-file "file1") ...))
完成),您还希望对该依赖类进行哪些其他附加处理?