[clbuild-devel] Recursive search for dependencies

budden budden-lisp at mail.ru
Tue Dec 16 17:19:48 UTC 2008


Hi there!
  Am I right that "sh clbuild install/update system" will update only
direct dependencies of that system and do not recurse dependency tree?
I found that unexpected and unconvinient - make software usually
operates on dependency tree in a recursive manner.  First of all, I
can not install directly just the libraries that I need. Either I need
to install everything, or go through "install-require-see backtrace"
loop.

  First of all, I think this feature should be noted at manual page,
as most user would expect recursive behaviour. It is mentioned
that "non-transitive dependency is not a bug", but it is only a weak
hint.

  Second, I made a workaround. It is a lisp program, which can be
launched with

sh clbuild run show-deps-on-system system-name [dependency-file-name  ...]

  It walks dependency files and collects all direct and indirect dependencies
of the system given to a single dependency line. This line can be
inserted into dependency file, e.g. with command

sh clbuild run show-deps-on-system my-system | tail -1 >> my-dependencies

  and by subsequent removing of original dependency line (which can be made just
by manual processing of .asd file).

  I know this functionality is a subset of "sh clbuild
record-dependencies", but some users (me) do not need all libraries
installed.

  I can send a patch (it is a patch to clbuild.lisp and to clbuild).

  Is it interesting?


-- 
Best regards,
 budden                            mailto:budden-lisp at mail.ru






More information about the clbuild-devel mailing list