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
3) 2), plus -dev packages of any libraries that would necessarily be
linked against when people compile something linked with an object
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.