Gentoo Archives: gentoo-dev

From: Paul Smith <pausmith@××××××××××××××.com>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] How does emerge resolve dependencies?
Date: Thu, 12 Feb 2004 22:52:40
Message-Id: 16428.946.968369.164693@lemming.engeast.baynetworks.com
1 Can anyone point me to any docs on, or provide any insight into, the
2 algorithm emerge uses to resolve DEPEND requests? I can't make heads or
3 tails of the results I'm getting from "emerge system".
4
5
6 I'm maintaining a set of ebuilds locally for a number of internal
7 packages. I am trying to control them as a group using a single ebuild
8 "wrapper" that depends on them; version 1.0 of the wrapper would have:
9
10 DEPEND=" ~local/xxx-1.1 ~local/yyy-1.4 ~local/zzz-2.0 "
11
12 then version 2.0 of the wrapper would have different versions. Then I
13 put the wrapper into my packages file and when I run "emerge system", I
14 should get what I want.
15
16 Internally these packages have their own DEPEND lines, and they may well
17 be less restrictive; local/xxx-1.1 might say it depends on "local/zzz"
18 (any version) for example.
19
20
21 But, it doesn't work the way I'd expect. I assumed emerge would examine
22 all the DEPEND requests and come up with a list of packages which met
23 all the criteria (or give an error if there wasn't one).
24
25 Instead what seems to happen is that emerge sees the DEPEND with no
26 version in local/xxx-1.1 and pulls in the latest local/zzz. Then it
27 proceeds along and sometime later it discovers that it really wanted an
28 earlier version so it installs that instead.
29
30 Not only that, but I tried to arrange my packages in the wrapper DEPEND
31 so that the ones that didn't depend on anything were first, etc. so
32 that, if emerge did them in order, I'd get the right versions in the
33 end. I didn't expect to have to do this but I tried it anyway; no
34 help. Emerge merges them in some seemingly random order anyway.
35
36
37 I'm using Portage 2.0.49.
38
39 Can someone give me some tips/help/pointers/debugging advice/anything?
40
41 I'm pretty stuck here :-(.
42
43 --
44 -------------------------------------------------------------------------------
45 Paul D. Smith <psmith@××××××××××××××.com> HASMAT: HA Software Mthds & Tools
46 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist
47 -------------------------------------------------------------------------------
48 These are my opinions---Nortel Networks takes no responsibility for them.
49
50 --
51 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] How does emerge resolve dependencies? Svyatogor <svyatogor@g.o>