Gentoo Archives: gentoo-dev

From: Alec Warner <antarus@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: Dependencies on system packages
Date: Sun, 17 Dec 2006 01:38:17
Message-Id: 45849CFF.6080002@gentoo.org
In Reply to: [gentoo-dev] Re: Dependencies on system packages by Ryan Hill
1 Ryan Hill wrote:
2 > Ryan Hill <dirtyepic@g.o> wrote:
3 > If it's universal, then why isn't it written somewhere? After all
4 > this, we *still* haven't gotten an answer to why some packages
5 > outside of the system target are depending on zlib. Is this a bug? If
6 > not, what's the reason it's there? Let's document this reason, so we
7 > don't have to go through this again in the future. It's that simple.
8
9 Hrm, I thought I wrote about this a while ago but I don't see it on
10 archives.g.o so lets try again.
11
12 > If your package is 'not important' meaning it will never be in 'system'
13 > for any profile, you should not depend on anything in 'system', as
14 stuff in system should already be installed in a given (sane) configuration.
15 >
16 > If your package may be in 'system' in a given profile, you need to
17 ensure your package builds in the proper order, with regards to other
18 system packages. The classic example is zlib; if you need zlib to
19 uncompress something, then you should put zlib in the deps; that way
20 when someone is building say, a stage1, your package will build after
21 zlib, instead of before it.
22 >
23 > You have to be careful in deciding what to specify, as doing things
24 incorrectly in this case can often cause dependency loops which are
25 sometimes fun to debug; perl and openssl were infamous back in the day
26 for this.
27 >
28 > Enterprising users would specify the 'doc' useflag. openssl requires
29 perl to generate its docs and perl requires openssl for some encryption
30 stuff. Users would then complain about perl or openssl not building, or
31 portage getting really pissed at them; the solution being to build
32 openssl twice, once with USE="-doc" and then build perl, and then
33 rebuild openssl with USE="doc". This certainly wasn't the only case
34 where this occurred (see ML thread about shadow and it's dep on some
35 other package I can't remember, although that was a while back as well).
36 >
37 > In conclusion, you need domain knowledge of system packages and
38 portage behavior to make good choices here ;)
39
40 Wow that pasted nastily; hopefully it shows up ok ;)
41
42 In any case I'm sure there are some other exceptions but these are the
43 main ones.
44 --
45 gentoo-dev@g.o mailing list

Replies

Subject Author
[gentoo-dev] Re: Dependencies on system packages Ryan Hill <dirtyepic@g.o>
Re: [gentoo-dev] Re: Dependencies on system packages Jason Stubbs <jstubbs@g.o>