Gentoo Archives: gentoo-dev

From: Grant Goodyear <g2boojum@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Reminder on dependencies.
Date: Tue, 25 Oct 2005 16:22:45
Message-Id: 20051025161915.GE23614@bmb24.uth.tmc.edu
In Reply to: Re: [gentoo-dev] Reminder on dependencies. by Donnie Berkholz
1 Donnie Berkholz wrote: [Mon Oct 24 2005, 11:37:03PM CDT]
2 > Now, the other side of the story. It's not true runtime dependence
3 > because it's not required for programs to run, only to compile. And the
4 > way I see it, things required for programs to compile are by definition
5 > DEPEND rather than RDEPEND.
6
7 I think I'm w/ spider on this one. At the risk of initiating a semantic
8 scuffle, my view is that the DEPEND and RDEPEND variables exist solely
9 to tell portage what packages are needed for portage to produce a
10 fully-functional package. A library w/ missing header dependencies is
11 clearly not fully-functional, so portage needs to include that
12 dependency even if it is a binary package that is being installed. The
13 way to do that is to include the dependency in RDEPEND, even if the name
14 seems to be not quite appropriate.
15
16 > The consequences of the two sides are like this, from what I can see:
17 >
18 > 1) Headers are run-time and build-time deps
19 >
20 > - - Headers have to be installed even when you're using purely binary
21 > packages, because they are supposedly needed at "runtime" for your
22 > packages to work.
23 >
24 > - - Also, header packages can't be uninstalled after the build via
25 > depclean because they're specified as run-time dependencies.
26 >
27 > 2) Headers are build-time deps only
28 >
29 > - - Binary packages don't require the header packages.
30 >
31 > - - Header packages can be unmerged after builds.
32 >
33 > - - Packages requiring the headers have to DEPEND on them directly,
34 > because DEPENDs don't cascade. (Although this brings to mind the concept
35 > of some sort of cascadable DEPEND.)
36 >
37 >
38 > I'd like to hear what some other people think about this.
39
40 I've always been a big fan of the fact that by default we install
41 fully-capable packages that include headers, because it makes Gentoo
42 much more appealing to developers. My group is working on some
43 cryo-microscopy software that incorporates quite a number of scientific
44 and graphical libraries, and setting up Ubuntu or Debian for one of our
45 project developers was a pain as I struggled to ensure that I had all of
46 the necessary development packages installed.
47
48 At the same time, I'm suppose that including header files by default is
49 not such a good thing for the embedded folks.
50
51 -g2boojum-
52 --
53 Grant Goodyear
54 Gentoo Developer
55 g2boojum@g.o
56 http://www.gentoo.org/~g2boojum
57 GPG Fingerprint: D706 9802 1663 DEF5 81B0 9573 A6DC 7152 E0F6 5B76

Replies

Subject Author
Re: [gentoo-dev] Reminder on dependencies. Donnie Berkholz <spyderous@g.o>