Comment 3 for bug 1307180

Revision history for this message
Faré (fahree) wrote :

I'm not sure I understand the issue.

If Xach wants a list of all the systems under a package-system, so as to in turn check each of their dependencies, he has to

0- use load-asd to load each of the .asd files he found (I suppose he's already excluding duplicate thirdparty libraries imported into other systems).

1- detect that a system he loaded by scanning all the .asd's is indeed of type package-system.

2- if so, scan for all .lisp files under that hierarchy that are all lowercase and add them to the system list, using e.g. the **/*.lisp pattern, or something similar to asdf::collect-sub*directories-asd-files if he wants to exclude duplicates from source control on an old _darcs/ or .svn/ checkout or similar.

3- for each of them the files he found, he can use find-system and query the dependencies.

A simpler way to do things would be to just remember data about primary systems, but indeed, that would miss out on fine-grained dependency information, particularly from implicit secondary systems that are not directly named from the primary system definition file. Still, that should be pretty simple to achieve, and much better than not supporting asdf-package-system at all.