Gentoo Archives: gentoo-dev

From: "Brian D. Harring" <ferringb@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] splitting build deps out from depends
Date: Fri, 01 Jul 2005 19:12:27
Message-Id: 20050701191002.GH11634@exodus.wit.org
In Reply to: Re: [gentoo-dev] splitting build deps out from depends by "Diego 'Flameeyes' Pettenò"
1 On Fri, Jul 01, 2005 at 08:53:18PM +0200, Diego 'Flameeyes' Pettenò wrote:
2 > On Friday 01 July 2005 20:42, Brian D. Harring wrote:
3 > > Err... missing the point, and proving my point.  Current portage
4 > > _will_ fail because it's an unstated dependency.  Why shouldn't
5 > > portage be provided the deps it needs so it can figure out what is
6 > > needed to get to what the user requested?
7 > BDEPEND is not going to resolve the case Mike shown.
8 >
9 > GCC bdepends over GCC to compile, you don't have GCC, you can't install GCC,
10 > you can't install anything (a part from binpkgs).
11 > But if you put GCC in profile, no need to depend on it, you'll always have one
12 > also if nothign depends on it and the problem is resolved.
13 >
14 > BTW, as I already stated on irc, GCC is a RDEPEND not a BDEPENED because of
15 > libgcc_s.so and libstdc++.so, so...
16 Bleh, aparently I missed the point of his example- the depclean bit would apply for
17 yanking packages that aren't needed, make and friends for example.
18
19 Holding onto unwind/stdc++/gcc_s (gcc[-nocxx]) is another beast, which
20 still not sure about addressing aside from the hated RDEPEND=virtual/libc.
21
22 Addressing earler question of why virtual/libc should actually be
23 rdep'ed (and mike's example), figure it thus, the only thing that's
24 keeping portage from wiping it on a depclean run is that it's in the
25 profile.
26
27 Corrupt your profile, portage _will_ wipe it because the depgraph
28 isn't complete.
29
30 The response to that I'm sure is "well don't corrupt your profile",
31 but one thing to note is that it implicitly forces requiring a
32 valid profile. Thing is, you're forcing the requirement of the
33 profile, and that it specify information that keeps portage from doing
34 stupid things.
35
36 There's no valid reason that portage management of a system must
37 rely on the profile as a crutch to keep it from doing stupid things,
38 when specifying *full* dependencies removes teh crutch, and gives
39 portage the knowledge it needs to do other crazy crap that is
40 desirable.
41 ~harring