Subject: Re: bonobo libxml version dependancy
To: Nathan J. Williams <nathanw@MIT.EDU>
From: Frederick Bruckman <fredb@immanent.net>
List: tech-pkg
Date: 10/07/2001 15:50:57
On 7 Oct 2001, Nathan J. Williams wrote:

> I recently tried to build something that depended on bonobo, and the
> build blew out in the configure stage, complaining that it couldn't
> find libxml > 1.8.15. Indeed, I had libxml 1.8.14 installed. It seems
> like bonobo should have this package and version dependancy made
> explicit, but I'm not terribly confident that I understand the pkg
> build system any more. Is this the correct fix?
>
> Among other things, I'm unclear on whether packages should explicitly
> list their dependancies, or if it's OK for them to get them indirectly
> by depending on other packages that do explicitly depend on them; as
> examples, bonobo also depends on glib, gtk, and gnome-libs, but gets
> them and their buildlink files indirectly.

The present situation is kind of a mess. The package tools presently
encode the full, resolved dependency list into the binary package, so
there's effectively no difference whether you list them explicitly or
not. A couple of other things to keep in mind:

1) If the binaries in your package depends on gnome-libs, bonobo &c
indirectly, then (on ELF systems) they'll require the exact minor
versions of those shared libraries to run, so they should all properly
be listed in the package's Makefile (though they usually aren't).

2) Barring a reason such as the above, you should never list the
indirect dependencies, on the hope that one day the package tools will
be straightened out. Just to pull something out of the air for the
sake of argument, net/ORBit depends on devel/gindent (which has no
shared libraries). One day, ORBit may no longer require gindent, or
may require gindent-ORBit, so it would be wrong for the depending
packages to list "gindent" in their DEPENDS.

Frederick