1 |
Author: zmedico |
2 |
Date: 2008-04-13 22:22:14 +0000 (Sun, 13 Apr 2008) |
3 |
New Revision: 9878 |
4 |
|
5 |
Modified: |
6 |
main/branches/2.1.2/bin/emerge |
7 |
Log: |
8 |
To optimize consistency of atom selections, add all of the root packages |
9 |
to the graph before processing any dependencies. (trunk r9874) |
10 |
|
11 |
|
12 |
Modified: main/branches/2.1.2/bin/emerge |
13 |
=================================================================== |
14 |
--- main/branches/2.1.2/bin/emerge 2008-04-13 22:19:47 UTC (rev 9877) |
15 |
+++ main/branches/2.1.2/bin/emerge 2008-04-13 22:22:14 UTC (rev 9878) |
16 |
@@ -2535,6 +2535,7 @@ |
17 |
while args: |
18 |
arg = args.pop() |
19 |
for atom in arg.set: |
20 |
+ self.spinner.update() |
21 |
atom_cp = portage.dep_getkey(atom) |
22 |
try: |
23 |
pprovided = pprovideddict.get(portage.dep_getkey(atom)) |
24 |
@@ -2585,16 +2586,12 @@ |
25 |
|
26 |
dep = Dependency(atom=atom, onlydeps=onlydeps, |
27 |
root=myroot, parent=arg) |
28 |
- self._dep_stack.append(dep) |
29 |
|
30 |
# Add the selected package to the graph as soon as possible |
31 |
# so that later dep_check() calls can use it as feedback |
32 |
# for making more consistent atom selections. |
33 |
if not self._add_pkg(pkg, dep.parent, |
34 |
priority=dep.priority, depth=dep.depth): |
35 |
- return 0, myfavorites |
36 |
- |
37 |
- if not self._create_graph(): |
38 |
if isinstance(arg, SetArg): |
39 |
sys.stderr.write(("\n\n!!! Problem resolving " + \ |
40 |
"dependencies for %s from %s\n") % \ |
41 |
@@ -2603,6 +2600,7 @@ |
42 |
sys.stderr.write(("\n\n!!! Problem resolving " + \ |
43 |
"dependencies for %s\n") % atom) |
44 |
return 0, myfavorites |
45 |
+ |
46 |
except portage_exception.MissingSignature, e: |
47 |
portage.writemsg("\n\n!!! A missing gpg signature is preventing portage from calculating the\n") |
48 |
portage.writemsg("!!! required dependencies. This is a security feature enabled by the admin\n") |
49 |
@@ -2624,6 +2622,11 @@ |
50 |
print >> sys.stderr, "!!!", str(e), getattr(e, "__module__", None) |
51 |
raise |
52 |
|
53 |
+ # Now that the root packages have been added to the graph, |
54 |
+ # process the dependencies. |
55 |
+ if not self._create_graph(): |
56 |
+ return 0, myfavorites |
57 |
+ |
58 |
missing=0 |
59 |
if "--usepkgonly" in self.myopts: |
60 |
for xs in self.digraph.all_nodes(): |
61 |
|
62 |
-- |
63 |
gentoo-commits@l.g.o mailing list |