[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: X Strike Force SVN commit: rev 69 - branches/4.3.0/sid/debian

On Monday, May 26, 2003, at 02:54  PM, Branden Robinson wrote:
dependencies of -dev packages really mean.  There are at least three
possibilities, and no Policy on which is controlling:

1) just what the package actually needs to install successfully (which
   is usually nothing);
2) just packages containing header files referenced by the headers in
   the package;
3) 2), plus -dev packages of any libraries that would necessarily be
linked against when people compile something linked with an object in
   the -dev.

I'm a very strong believer that any header file which requires another header file should include it. I think that most Debian developers are with me on this issue; the old-style "make the client include what I need" headers are losing favour, I think.

So, given this idea of making header files include what they need, it seems pretty natural to extend that idea to -dev packages. Thus, -dev packages should depend on what they need to work; this includes all header files they include. I imagine a dpkg-shlibdeps workalike could be created for this purpose if it became an issue.

w.r.t point 3, I think it's pretty natural to extend earlier ideas to symbols needed at link time. In most cases this will probably have a fairly large intersection with the set of packages depended upon for their headers. I think it makes sense to Depend upon -dev packages which are required (most of the time?) when building a program using the library in question.

The idea is to make -dev packages as useful as possible, so a person doesn't get a rude shock when they have to install a whole whack of other packages just to get their GLU-using programs to compile.

Reply to: