* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: 446c10bf9e83a583a1b8efe59253fb3f3c4f54ca
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 28 22:19:59 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 22:19:59 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=446c10bf
action_info: use _ENABLE_SET_CONFIG for sets
---
pym/_emerge/actions.py | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index c88ef92..b763e08 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -29,7 +29,7 @@ from portage import digraph
from portage import _unicode_decode
from portage.cache.cache_errors import CacheError
from portage.const import GLOBAL_CONFIG_PATH, NEWS_LIB_PATH
-from portage.const import _ENABLE_DYN_LINK_MAP
+from portage.const import _ENABLE_DYN_LINK_MAP, _ENABLE_SET_CONFIG
from portage.dbapi.dep_expand import dep_expand
from portage.dep import Atom, extended_cp_match
from portage.exception import InvalidAtom
@@ -1389,11 +1389,13 @@ def action_info(settings, trees, myopts, myfiles):
writemsg_stdout("Repositories: %s\n" % \
" ".join(repo.name for repo in repos))
- world_set = root_config.sets['selected']
- sets_line = "Installed sets: "
- sets_line += ", ".join(s for s in sorted(world_set) if s.startswith(SETPREFIX))
- sets_line += "\n"
- writemsg_stdout(sets_line)
+ if _ENABLE_SET_CONFIG:
+ sets_line = "Installed sets: "
+ sets_line += ", ".join(s for s in \
+ sorted(root_config.sets['selected'].getNonAtoms()) \
+ if s.startswith(SETPREFIX))
+ sets_line += "\n"
+ writemsg_stdout(sets_line)
if "--verbose" in myopts:
myvars = list(settings)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: 7c231888d1d5ccac470d5f039be57ac0e5934f6c
Author: Sebastian Luther <SebastianLuther <AT> gmx <DOT> de>
AuthorDate: Fri Jan 28 19:59:50 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 21:13:08 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=7c231888
autounmask USE change comment: ensure that the first parent requires the change
Fixes bug 350515.
---
pym/_emerge/depgraph.py | 45 +++++++++++++++++++++++++++++----------------
1 files changed, 29 insertions(+), 16 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 3444731..7767377 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2175,11 +2175,14 @@ class depgraph(object):
return selected_atoms
- def _get_dep_chain(self, pkg, atom=None):
+ def _get_dep_chain(self, pkg, target_atom=None, unsatisfied_dependency=False):
"""
Returns a list of (atom, node_type) pairs that represent a dep chain.
- If atom is None, the first package shown is pkg's paretn.
- If atom is not None the first package shown is pkg.
+ If target_atom is None, the first package shown is pkg's paretn.
+ If target_atom is not None the first package shown is pkg.
+ If unsatisfied_dependency is True, the first parent is select who's
+ dependency is not satisfied by 'pkg'. This is need for USE changes.
+ (Does not support target_atom.)
"""
traversed_nodes = set()
dep_chain = []
@@ -2187,11 +2190,11 @@ class depgraph(object):
first = True
child = None
all_parents = self._dynamic_config._parent_atoms
-
- if atom is not None:
+
+ if target_atom is not None:
affecting_use = set()
for dep_str in "DEPEND", "RDEPEND", "PDEPEND":
- affecting_use.update(extract_affecting_use(pkg.metadata[dep_str], atom))
+ affecting_use.update(extract_affecting_use(pkg.metadata[dep_str], target_atom))
affecting_use.difference_update(pkg.use.mask, node.use.force)
pkg_name = pkg.cpv
if affecting_use:
@@ -2203,9 +2206,8 @@ class depgraph(object):
usedep.append("-"+flag)
pkg_name += "[%s]" % ",".join(usedep)
-
dep_chain.append(( _unicode_decode(pkg_name), _unicode_decode(pkg.type_name)))
-
+
while node is not None:
traversed_nodes.add(node)
@@ -2226,7 +2228,7 @@ class depgraph(object):
dep_strings.add(node.metadata["RDEPEND"])
if priority.runtime_post:
dep_strings.add(node.metadata["PDEPEND"])
-
+
affecting_use = set()
for dep_str in dep_strings:
affecting_use.update(extract_affecting_use(dep_str, atom))
@@ -2245,7 +2247,6 @@ class depgraph(object):
usedep.append("-"+flag)
pkg_name += "[%s]" % ",".join(usedep)
-
dep_chain.append(( _unicode_decode(pkg_name), _unicode_decode(node.type_name)))
if node not in self._dynamic_config.digraph:
@@ -2268,13 +2269,25 @@ class depgraph(object):
selected_parent = None
break
else:
- selected_parent = parent
- child = node
+ if unsatisfied_dependency and node is pkg:
+ # Make sure that pkg doesn't satisfy parent's dependency.
+ # This ensures that we select the correct parent for use
+ # flag changes.
+ for ppkg, atom in all_parents[pkg]:
+ if parent is ppkg:
+ atom_set = InternalPackageSet(initial_atoms=(atom,))
+ if not atom_set.findAtomForPackage(pkg):
+ selected_parent = parent
+ child = node
+ break
+ else:
+ selected_parent = parent
+ child = node
node = selected_parent
return dep_chain
- def _get_dep_chain_as_comment(self, pkg):
- dep_chain = self._get_dep_chain(pkg)
+ def _get_dep_chain_as_comment(self, pkg, unsatisfied_dependency=False):
+ dep_chain = self._get_dep_chain(pkg, unsatisfied_dependency=unsatisfied_dependency)
display_list = []
for node, node_type in dep_chain:
if node_type == "argument":
@@ -2284,7 +2297,7 @@ class depgraph(object):
msg = "#" + ", ".join(display_list) + "\n"
return msg
-
+
def _show_unsatisfied_dep(self, root, atom, myparent=None, arg=None,
check_backtrack=False):
@@ -4951,7 +4964,7 @@ class depgraph(object):
adjustments.append(flag)
else:
adjustments.append("-" + flag)
- use_changes_msg.append(self._get_dep_chain_as_comment(pkg))
+ use_changes_msg.append(self._get_dep_chain_as_comment(pkg, unsatisfied_dependency=True))
use_changes_msg.append("=%s %s\n" % (pkg.cpv, " ".join(adjustments)))
license_msg = []
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: 44809c14de087f87ee0fa9c5a21ec94e4787c3ce
Author: Sebastian Luther <SebastianLuther <AT> gmx <DOT> de>
AuthorDate: Fri Jan 28 20:34:31 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 21:21:33 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=44809c14
--info: Show installed sets (bug 282250)
---
pym/_emerge/actions.py | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index 33a1f01..c88ef92 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1295,9 +1295,13 @@ class _info_pkgs_ver(object):
return self.ver + self.repo_suffix + self.provide_suffix
def action_info(settings, trees, myopts, myfiles):
+
+ root_config = trees[settings['ROOT']]['root_config']
+
print(getportageversion(settings["PORTDIR"], settings["ROOT"],
settings.profile_path, settings["CHOST"],
trees[settings["ROOT"]]["vartree"].dbapi))
+
header_width = 65
header_title = "System Settings"
if myfiles:
@@ -1385,6 +1389,12 @@ def action_info(settings, trees, myopts, myfiles):
writemsg_stdout("Repositories: %s\n" % \
" ".join(repo.name for repo in repos))
+ world_set = root_config.sets['selected']
+ sets_line = "Installed sets: "
+ sets_line += ", ".join(s for s in sorted(world_set) if s.startswith(SETPREFIX))
+ sets_line += "\n"
+ writemsg_stdout(sets_line)
+
if "--verbose" in myopts:
myvars = list(settings)
else:
@@ -1408,7 +1418,6 @@ def action_info(settings, trees, myopts, myfiles):
use_expand_hidden = set(
settings.get('USE_EXPAND_HIDDEN', '').upper().split())
alphabetical_use = '--alphabetical' in myopts
- root_config = trees[settings["ROOT"]]['root_config']
unset_vars = []
myvars.sort()
for x in myvars:
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: a3ddca88b876d359ef92d9544999d1bf580061fb
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 29 05:46:02 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sat Jan 29 05:46:02 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a3ddca88
depgraph: fix get_dep_chain unicode handling
---
pym/_emerge/depgraph.py | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 7767377..a927222 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2178,7 +2178,7 @@ class depgraph(object):
def _get_dep_chain(self, pkg, target_atom=None, unsatisfied_dependency=False):
"""
Returns a list of (atom, node_type) pairs that represent a dep chain.
- If target_atom is None, the first package shown is pkg's paretn.
+ If target_atom is None, the first package shown is pkg's parent.
If target_atom is not None the first package shown is pkg.
If unsatisfied_dependency is True, the first parent is select who's
dependency is not satisfied by 'pkg'. This is need for USE changes.
@@ -2196,7 +2196,7 @@ class depgraph(object):
for dep_str in "DEPEND", "RDEPEND", "PDEPEND":
affecting_use.update(extract_affecting_use(pkg.metadata[dep_str], target_atom))
affecting_use.difference_update(pkg.use.mask, node.use.force)
- pkg_name = pkg.cpv
+ pkg_name = _unicode_decode("%s") % (pkg.cpv,)
if affecting_use:
usedep = []
for flag in affecting_use:
@@ -2206,13 +2206,13 @@ class depgraph(object):
usedep.append("-"+flag)
pkg_name += "[%s]" % ",".join(usedep)
- dep_chain.append(( _unicode_decode(pkg_name), _unicode_decode(pkg.type_name)))
+ dep_chain.append((pkg_name, pkg.type_name))
while node is not None:
traversed_nodes.add(node)
if isinstance(node, DependencyArg):
- dep_chain.append((_unicode_decode(node), "argument"))
+ dep_chain.append((_unicode_decode("%s") % (node,), "argument"))
elif node is not pkg:
for ppkg, patom in all_parents[child]:
@@ -2237,7 +2237,7 @@ class depgraph(object):
affecting_use.difference_update(node.use.mask, \
node.use.force)
- pkg_name = node.cpv
+ pkg_name = _unicode_decode("%s") % (node.cpv,)
if affecting_use:
usedep = []
for flag in affecting_use:
@@ -2247,7 +2247,7 @@ class depgraph(object):
usedep.append("-"+flag)
pkg_name += "[%s]" % ",".join(usedep)
- dep_chain.append(( _unicode_decode(pkg_name), _unicode_decode(node.type_name)))
+ dep_chain.append((pkg_name, node.type_name))
if node not in self._dynamic_config.digraph:
# The parent is not in the graph due to backtracking.
@@ -2265,7 +2265,8 @@ class depgraph(object):
selected_parent = parent
child = node
else:
- dep_chain.append(( _unicode_decode(parent), "argument"))
+ dep_chain.append(
+ (_unicode_decode("%s") % (parent,), "argument"))
selected_parent = None
break
else:
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: 45f0931ec8a71f861a72ee78cee1f4fbb2cc7b2f
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 28 22:43:28 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 22:43:28 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=45f0931e
action_info: fix noiselevel for repo/set displays
---
pym/_emerge/actions.py | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index b763e08..2c6ce87 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1382,12 +1382,12 @@ def action_info(settings, trees, myopts, myfiles):
repos = portdb.settings.repositories
if "--verbose" in myopts:
- writemsg_stdout("Repositories:\n\n")
+ writemsg_stdout("Repositories:\n\n", noiselevel=-1)
for repo in repos:
- writemsg_stdout(repo.info_string())
+ writemsg_stdout(repo.info_string(), noiselevel=-1)
else:
writemsg_stdout("Repositories: %s\n" % \
- " ".join(repo.name for repo in repos))
+ " ".join(repo.name for repo in repos), noiselevel=-1)
if _ENABLE_SET_CONFIG:
sets_line = "Installed sets: "
@@ -1395,7 +1395,7 @@ def action_info(settings, trees, myopts, myfiles):
sorted(root_config.sets['selected'].getNonAtoms()) \
if s.startswith(SETPREFIX))
sets_line += "\n"
- writemsg_stdout(sets_line)
+ writemsg_stdout(sets_line, noiselevel=-1)
if "--verbose" in myopts:
myvars = list(settings)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: 6b7177c92af62ee17200f118dcdcad35e50c7ade
Author: Brian Dolbec <brian.dolbec <AT> gmail <DOT> com>
AuthorDate: Sat Jan 29 10:11:18 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Jan 30 09:11:58 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=6b7177c9
optimize isHardMasked() a little more
---
pym/_emerge/Package.py | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index e7302b3..96c76b9 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -263,17 +263,14 @@ class Package(Task):
pmask = []
if pmask:
# narrow pmask atoms down to the relevant repo
- n=[x for x in pmask if x.split('::')[-1] in [self.repo]]
+ n = [x for x in pmask if x.split('::')[-1] in [self.repo]]
# hopefully it is down to only 1 mask atom
#print "n =", n
#count = 0
hardmasked = set()
for x in n:
#expand the atom to matching available ebuilds
- m = self.root_config.trees['porttree'].dbapi.xmatch("match-all",x)
- #print "m =", m
- for n in m:
- hardmasked.update([n])
+ hardmasked.update(self.root_config.trees['porttree'].dbapi.xmatch("match-all",x))
#count += 1
#print "for x in n: loop count =", count, hardmasked
return self.cpv in hardmasked
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: f3d72b4418d19cae39d3c327699d244bbfad6461
Author: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Gentoo <DOT> Org>
AuthorDate: Sun Jan 30 13:45:26 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Jan 30 13:45:26 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=f3d72b44
Fix a typo.
---
pym/_emerge/Package.py | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index c501b1a..bf02192 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -1,4 +1,4 @@
-# Copyright 1999-2010 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
import sys
@@ -254,7 +254,7 @@ class Package(Task):
def isHardMasked(self):
"""returns a bool if the cpv is in the list of
- expanded pmaskdict[cp] availble ebuilds"""
+ expanded pmaskdict[cp] available ebuilds"""
pmask = self.root_config.settings._getRawMaskAtom(
self.cpv, self.metadata)
return pmask is not None
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: dfcef19feff049004e0a7043fb980ecdc711a930
Author: Sebastian Luther <SebastianLuther <AT> gmx <DOT> de>
AuthorDate: Mon Jan 31 17:40:08 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Mon Jan 31 21:04:50 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=dfcef19f
Allow relative paths (starting with ./) on the cmd line
bug 352208
---
pym/_emerge/depgraph.py | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index a927222..4f60a3a 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -1634,6 +1634,13 @@ class depgraph(object):
# Queue these up since it's most efficient to handle
# multiple files in a single iter_owners() call.
lookup_owners.append(x)
+ elif x.startswith("." + os.path.sep):
+ f = os.path.abspath(x)
+ if not f.startswith(myroot):
+ portage.writemsg(("\n\n!!! '%s' (resolved from '%s') does not start with" + \
+ " $ROOT.\n") % (f, x), noiselevel=-1)
+ return 0, []
+ lookup_owners.append(f)
else:
if x in ("system", "world"):
x = SETPREFIX + x
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: aa78cc8da18015b7d1e4eec277b5a7f940fe357c
Author: Sebastian Luther <SebastianLuther <AT> gmx <DOT> de>
AuthorDate: Mon Jan 31 22:35:40 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Mon Jan 31 22:43:06 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=aa78cc8d
Print near matches for cmd line atoms without matching ebuild
---
pym/_emerge/depgraph.py | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 4f60a3a..39c6395 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -3,6 +3,7 @@
from __future__ import print_function
+import difflib
import gc
import logging
import re
@@ -2336,6 +2337,8 @@ class depgraph(object):
pkgsettings = self._frozen_config.pkgsettings[root]
root_config = self._frozen_config.roots[root]
portdb = self._frozen_config.roots[root].trees["porttree"].dbapi
+ vardb = self._frozen_config.roots[root].trees["vartree"].dbapi
+ bindb = self._frozen_config.roots[root].trees["bintree"].dbapi
dbs = self._dynamic_config._filtered_trees[root]["dbs"]
for db, pkg_type, built, installed, db_keys in dbs:
if installed:
@@ -2610,6 +2613,36 @@ class depgraph(object):
mask_docs = True
else:
writemsg_stdout("\nemerge: there are no ebuilds to satisfy "+green(xinfo)+".\n", noiselevel=-1)
+ if isinstance(myparent, AtomArg):
+ cp = myparent.atom.cp
+ cat, pkg = cp.split("/")
+ if cat == "null":
+ cat = None
+
+ all_cp = set()
+ all_cp.update(vardb.cp_all())
+ all_cp.update(portdb.cp_all())
+ if "--usepkg" in self._frozen_config.myopts:
+ all_cp.update(bindb.cp_all())
+
+ if cat:
+ matches = difflib.get_close_matches(cp, all_cp)
+ else:
+ pkg_to_cp = {}
+ for other_cp in all_cp:
+ other_pkg = other_cp.split("/")[1]
+ pkg_to_cp.setdefault(other_pkg, set()).add(other_cp)
+ pkg_matches = difflib.get_close_matches(pkg, pkg_to_cp)
+ matches = []
+ for pkg_match in pkg_matches:
+ matches.extend(pkg_to_cp[pkg_match])
+
+ if len(matches) == 1:
+ writemsg_stdout("emerge: Maybe you meant " + matches[0] + "?\n"
+ , noiselevel=-1)
+ elif len(matches) > 1:
+ writemsg_stdout("emerge: Maybe you meant any of these: " + ", ".join(matches) + "?\n"
+ , noiselevel=-1)
msg = []
if not isinstance(myparent, AtomArg):
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: ee02b5b7d747d2b5b5d5339c91dee0cd3f2ee150
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 31 22:10:14 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Mon Jan 31 22:11:05 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=ee02b5b7
EbuildBuild: spawn nofetch for fetchonly
---
pym/_emerge/EbuildBuild.py | 17 ++++++++++++-----
1 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/pym/_emerge/EbuildBuild.py b/pym/_emerge/EbuildBuild.py
index 1eab21d..afd6399 100644
--- a/pym/_emerge/EbuildBuild.py
+++ b/pym/_emerge/EbuildBuild.py
@@ -16,6 +16,7 @@ from portage import os
from portage.output import colorize
from portage.package.ebuild.digestcheck import digestcheck
from portage.package.ebuild.doebuild import _check_temp_dir
+from portage.package.ebuild._spawn_nofetch import spawn_nofetch
class EbuildBuild(CompositeTask):
@@ -118,6 +119,8 @@ class EbuildBuild(CompositeTask):
settings=settings)
retval = fetcher.execute()
self.returncode = retval
+ self.wait()
+ return
else:
fetcher = EbuildFetcher(
config_pool=self.config_pool,
@@ -127,11 +130,8 @@ class EbuildBuild(CompositeTask):
logfile=None,
pkg=self.pkg,
scheduler=self.scheduler)
- fetcher.start()
- self.returncode = fetcher.wait()
-
- self.wait()
- return
+ self._start_task(fetcher, self._fetchonly_exit)
+ return
self._build_dir = EbuildBuildDir(
scheduler=self.scheduler, settings=settings)
@@ -150,6 +150,13 @@ class EbuildBuild(CompositeTask):
phase='clean', scheduler=self.scheduler, settings=self.settings)
self._start_task(pre_clean_phase, self._pre_clean_exit)
+ def _fetchonly_exit(self, fetcher):
+ self._final_exit(fetcher)
+ if self.returncode != os.EX_OK:
+ portdb = self.pkg.root_config.trees[self._tree].dbapi
+ spawn_nofetch(portdb, self._ebuild_path, settings=self.settings)
+ self.wait()
+
def _pre_clean_exit(self, pre_clean_phase):
if self._default_exit(pre_clean_phase) != os.EX_OK:
self._unlock_builddir()
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: 7181cfe1c40071b4c0d8446fcd12d9aecd622a11
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 31 23:44:55 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Mon Jan 31 23:44:55 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=7181cfe1
depgraph: display 'searching for similar names'
It can take few seconds to search, so display a status message.
---
pym/_emerge/depgraph.py | 14 +++++++++++---
1 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 39c6395..64e9b19 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2619,6 +2619,9 @@ class depgraph(object):
if cat == "null":
cat = None
+ writemsg_stdout("\nemerge: searching for similar names..."
+ , noiselevel=-1)
+
all_cp = set()
all_cp.update(vardb.cp_all())
all_cp.update(portdb.cp_all())
@@ -2638,12 +2641,17 @@ class depgraph(object):
matches.extend(pkg_to_cp[pkg_match])
if len(matches) == 1:
- writemsg_stdout("emerge: Maybe you meant " + matches[0] + "?\n"
+ writemsg_stdout("\nemerge: Maybe you meant " + matches[0] + "?\n"
, noiselevel=-1)
elif len(matches) > 1:
- writemsg_stdout("emerge: Maybe you meant any of these: " + ", ".join(matches) + "?\n"
+ writemsg_stdout(
+ "\nemerge: Maybe you meant any of these: %s?\n" % \
+ (", ".join(matches),), noiselevel=-1)
+ else:
+ # Generally, this would only happen if
+ # all dbapis are empty.
+ writemsg_stdout(" nothing similar found.\n"
, noiselevel=-1)
-
msg = []
if not isinstance(myparent, AtomArg):
# It's redundant to show parent for AtomArg since
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:09 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:09 UTC (permalink / raw
To: gentoo-commits
commit: 23cc6611c8b5303ec2ecf8cb8203e69ddb825551
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 1 04:33:48 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Tue Feb 1 04:33:48 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=23cc6611
EbuildFetcher: use default SIGINT/TERM handlers
This seems to fix bug #353239.
---
pym/_emerge/EbuildFetcher.py | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/pym/_emerge/EbuildFetcher.py b/pym/_emerge/EbuildFetcher.py
index 59076a8..0ea8dc7 100644
--- a/pym/_emerge/EbuildFetcher.py
+++ b/pym/_emerge/EbuildFetcher.py
@@ -5,6 +5,7 @@ import traceback
from _emerge.SpawnProcess import SpawnProcess
import copy
+import signal
import sys
import portage
from portage import os
@@ -95,6 +96,11 @@ class EbuildFetcher(SpawnProcess):
portage.process._setup_pipes(fd_pipes)
+ # Use default signal handlers in order to avoid problems
+ # killing subprocesses as reported in bug #353239.
+ signal.signal(signal.SIGINT, signal.SIG_DFL)
+ signal.signal(signal.SIGTERM, signal.SIG_DFL)
+
# Force consistent color output, in case we are capturing fetch
# output through a normal pipe due to unavailability of ptys.
portage.output.havecolor = self._settings.get('NOCOLOR') \
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: dd5175a7e851a12f5740c2481c96b32e5db1f4eb
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 2 04:09:50 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Wed Feb 2 04:09:50 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=dd5175a7
Show "missed update" message for REQUIRED_USE.
This will fix bug #353443.
---
pym/_emerge/depgraph.py | 38 +++++++++++++++++++++++++++++++-------
1 files changed, 31 insertions(+), 7 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 64e9b19..16326ee 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -198,6 +198,9 @@ class _dynamic_depgraph_config(object):
self._ignored_deps = []
self._highest_pkg_cache = {}
+ self._unsat_req_use = {}
+ self._pkg_config_issues = {}
+
self._needed_unstable_keywords = backtrack_parameters.needed_unstable_keywords
self._needed_license_changes = backtrack_parameters.needed_license_changes
self._needed_use_config_changes = backtrack_parameters.needed_use_config_changes
@@ -350,15 +353,12 @@ class depgraph(object):
def _show_missed_update(self):
- if '--quiet' in self._frozen_config.myopts and \
- '--debug' not in self._frozen_config.myopts:
- return
-
# In order to minimize noise, show only the highest
# missed update from each SLOT.
missed_updates = {}
for pkg, mask_reasons in \
- self._dynamic_config._runtime_pkg_mask.items():
+ chain(self._dynamic_config._runtime_pkg_mask.items(),
+ self._dynamic_config._pkg_config_issues.items()):
if pkg.installed:
# Exclude installed here since we only
# want to show available updates.
@@ -382,6 +382,18 @@ class depgraph(object):
missed_update_types.setdefault(mask_type,
[]).append((pkg, parent_atoms))
+ if '--quiet' in self._frozen_config.myopts and \
+ '--debug' not in self._frozen_config.myopts:
+ missed_update_types.pop("slot conflict", None)
+ missed_update_types.pop("missing dependency", None)
+
+ required_use = missed_update_types.pop("required use", None)
+ if required_use is not None:
+ # For display purposes, unsatisfied REQUIRED_USE
+ # can be treated like a missing dependency.
+ missed_update_types.setdefault("missing dependency",
+ []).extend(required_use)
+
self._show_missed_update_slot_conflicts(
missed_update_types.get("slot conflict"))
@@ -1890,7 +1902,14 @@ class depgraph(object):
self._dynamic_config._unsatisfied_deps_for_display.append(
((myroot, atom), {"myparent" : arg}))
return 0, myfavorites
- self._dynamic_config._missing_args.append((arg, atom))
+ pkg = self._dynamic_config._unsat_req_use.get((myroot, atom))
+ if pkg is not None:
+ config_issues = \
+ self._dynamic_config._pkg_config_issues.setdefault(pkg, {})
+ parent_atoms = config_issues.setdefault("required use", set())
+ parent_atoms.add((arg, myroot, atom))
+ else:
+ self._dynamic_config._missing_args.append((arg, atom))
continue
if atom.cp != pkg.cp:
# For old-style virtuals, we need to repeat the
@@ -2653,7 +2672,7 @@ class depgraph(object):
writemsg_stdout(" nothing similar found.\n"
, noiselevel=-1)
msg = []
- if not isinstance(myparent, AtomArg):
+ if not isinstance(myparent, DependencyArg):
# It's redundant to show parent for AtomArg since
# it's the same as 'xinfo' displayed above.
dep_chain = self._get_dep_chain(myparent, atom)
@@ -3031,6 +3050,7 @@ class depgraph(object):
# represented by the found_available_arg flag.
found_available_arg = False
packages_with_invalid_use_config = []
+ pkgs_with_unsat_req_use = []
for find_existing_node in True, False:
if existing_node:
break
@@ -3246,6 +3266,7 @@ class depgraph(object):
continue
if not required_use_is_sat:
packages_with_invalid_use_config.append(pkg)
+ pkgs_with_unsat_req_use.append(pkg)
continue
if pkg.cp == atom_cp:
@@ -3329,6 +3350,9 @@ class depgraph(object):
break
if not matched_packages:
+ if pkgs_with_unsat_req_use:
+ self._dynamic_config._unsat_req_use[(root, atom)] = \
+ pkgs_with_unsat_req_use[0]
return None, None
if "--debug" in self._frozen_config.myopts:
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: 6709704ffe68937e35d6e945043b5da50b5941c2
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 2 05:33:10 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Wed Feb 2 05:33:10 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=6709704f
_get_dep_chain: allow SetArg for first node
---
pym/_emerge/depgraph.py | 29 +++++++++++++++--------------
1 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 16326ee..bcbc41d 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2202,7 +2202,8 @@ class depgraph(object):
return selected_atoms
- def _get_dep_chain(self, pkg, target_atom=None, unsatisfied_dependency=False):
+ def _get_dep_chain(self, start_node, target_atom=None,
+ unsatisfied_dependency=False):
"""
Returns a list of (atom, node_type) pairs that represent a dep chain.
If target_atom is None, the first package shown is pkg's parent.
@@ -2213,17 +2214,17 @@ class depgraph(object):
"""
traversed_nodes = set()
dep_chain = []
- node = pkg
- first = True
+ node = start_node
child = None
all_parents = self._dynamic_config._parent_atoms
- if target_atom is not None:
+ if target_atom is not None and isinstance(node, Package):
affecting_use = set()
for dep_str in "DEPEND", "RDEPEND", "PDEPEND":
- affecting_use.update(extract_affecting_use(pkg.metadata[dep_str], target_atom))
- affecting_use.difference_update(pkg.use.mask, node.use.force)
- pkg_name = _unicode_decode("%s") % (pkg.cpv,)
+ affecting_use.update(extract_affecting_use(
+ node.metadata[dep_str], target_atom))
+ affecting_use.difference_update(node.use.mask, node.use.force)
+ pkg_name = _unicode_decode("%s") % (node.cpv,)
if affecting_use:
usedep = []
for flag in affecting_use:
@@ -2233,7 +2234,7 @@ class depgraph(object):
usedep.append("-"+flag)
pkg_name += "[%s]" % ",".join(usedep)
- dep_chain.append((pkg_name, pkg.type_name))
+ dep_chain.append((pkg_name, node.type_name))
while node is not None:
traversed_nodes.add(node)
@@ -2241,7 +2242,7 @@ class depgraph(object):
if isinstance(node, DependencyArg):
dep_chain.append((_unicode_decode("%s") % (node,), "argument"))
- elif node is not pkg:
+ elif node is not start_node:
for ppkg, patom in all_parents[child]:
if ppkg == node:
atom = patom.unevaluated_atom
@@ -2297,14 +2298,14 @@ class depgraph(object):
selected_parent = None
break
else:
- if unsatisfied_dependency and node is pkg:
+ if unsatisfied_dependency and node is start_node:
# Make sure that pkg doesn't satisfy parent's dependency.
# This ensures that we select the correct parent for use
# flag changes.
- for ppkg, atom in all_parents[pkg]:
+ for ppkg, atom in all_parents[start_node]:
if parent is ppkg:
atom_set = InternalPackageSet(initial_atoms=(atom,))
- if not atom_set.findAtomForPackage(pkg):
+ if not atom_set.findAtomForPackage(start_node):
selected_parent = parent
child = node
break
@@ -2672,11 +2673,11 @@ class depgraph(object):
writemsg_stdout(" nothing similar found.\n"
, noiselevel=-1)
msg = []
- if not isinstance(myparent, DependencyArg):
+ if not isinstance(myparent, AtomArg):
# It's redundant to show parent for AtomArg since
# it's the same as 'xinfo' displayed above.
dep_chain = self._get_dep_chain(myparent, atom)
-
+
for node, node_type in dep_chain:
msg.append('(dependency required by "%s" [%s])' % \
(colorize('INFORM', _unicode_decode("%s") % \
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: d7d414c96f797d164eb292784c3241d8de7f380a
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 2 22:04:35 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Wed Feb 2 22:04:35 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=d7d414c9
Fix grammar in a comment.
---
pym/_emerge/depgraph.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 3d923ba..45873af 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -826,7 +826,7 @@ class depgraph(object):
del e
# NOTE: REQUIRED_USE checks are delayed until after
- # package selection, since want to prompt the user
+ # package selection, since we want to prompt the user
# for USE adjustment rather than have REQUIRED_USE
# affect package selection and || dep choices.
if not pkg.built and pkg.metadata["REQUIRED_USE"] and \
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: f77800259514da77c9803c85a06c7dbd599e4561
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 2 21:46:47 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Wed Feb 2 21:46:47 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=f7780025
REQUIRED_USE: add blank line after display
---
pym/_emerge/depgraph.py | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 957f447..3d923ba 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2629,6 +2629,7 @@ class depgraph(object):
writemsg_stdout(" %s\n" % \
human_readable_required_use(pkg.metadata["REQUIRED_USE"]),
noiselevel=-1)
+ writemsg_stdout("\n", noiselevel=-1)
elif show_missing_use:
writemsg_stdout("\nemerge: there are no ebuilds built with USE flags to satisfy "+green(xinfo)+".\n", noiselevel=-1)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: b59e1c4ee8b6035cc125afae3a16619f9e3199ee
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 3 02:03:05 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Thu Feb 3 02:03:05 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=b59e1c4e
REQUIRED_USE: no autounmask, so skip backtracking
---
pym/_emerge/depgraph.py | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 2f8037a..05ca187 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -203,6 +203,9 @@ class _dynamic_depgraph_config(object):
self._needed_use_config_changes = backtrack_parameters.needed_use_config_changes
self._runtime_pkg_mask = backtrack_parameters.runtime_pkg_mask
self._need_restart = False
+ # For conditions that always require user intervention, such as
+ # unsatisfied REQUIRED_USE (currently has no autounmask support).
+ self._skip_restart = False
self._backtrack_infos = {}
self._autounmask = depgraph._frozen_config.myopts.get('--autounmask', 'n') == True
@@ -840,6 +843,7 @@ class depgraph(object):
atom = Atom("=" + pkg.cpv)
self._dynamic_config._unsatisfied_deps_for_display.append(
((pkg.root, atom), {"myparent":dep.parent}))
+ self._dynamic_config._skip_restart = True
return 0
if not pkg.onlydeps:
@@ -1885,7 +1889,7 @@ class depgraph(object):
if isinstance(arg, PackageArg):
if not self._add_pkg(arg.package, dep) or \
not self._create_graph():
- if not self._dynamic_config._need_restart:
+ if not self.need_restart():
sys.stderr.write(("\n\n!!! Problem " + \
"resolving dependencies for %s\n") % \
arg.arg)
@@ -1948,7 +1952,7 @@ class depgraph(object):
# so that later dep_check() calls can use it as feedback
# for making more consistent atom selections.
if not self._add_pkg(pkg, dep):
- if self._dynamic_config._need_restart:
+ if self.need_restart():
pass
elif isinstance(arg, SetArg):
writemsg(("\n\n!!! Problem resolving " + \
@@ -5473,8 +5477,9 @@ class depgraph(object):
"""
def need_restart(self):
- return self._dynamic_config._need_restart
-
+ return self._dynamic_config._need_restart and \
+ not self._dynamic_config._skip_restart
+
def success_without_autounmask(self):
return self._dynamic_config._success_without_autounmask
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: ebc2fafe4a7261ba6e97c3f0ec134b7ca542d1d7
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 2 23:51:00 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Wed Feb 2 23:51:00 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=ebc2fafe
REQUIRED_USE: handle unsatisfied like normal dep
---
pym/_emerge/depgraph.py | 23 ++++++-----------------
1 files changed, 6 insertions(+), 17 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 45873af..2f8037a 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -197,7 +197,6 @@ class _dynamic_depgraph_config(object):
self._initially_unsatisfied_deps = []
self._ignored_deps = []
self._highest_pkg_cache = {}
- self._pkg_config_issues = {}
self._needed_unstable_keywords = backtrack_parameters.needed_unstable_keywords
self._needed_license_changes = backtrack_parameters.needed_license_changes
@@ -355,8 +354,7 @@ class depgraph(object):
# missed update from each SLOT.
missed_updates = {}
for pkg, mask_reasons in \
- chain(self._dynamic_config._runtime_pkg_mask.items(),
- self._dynamic_config._pkg_config_issues.items()):
+ self._dynamic_config._runtime_pkg_mask.items():
if pkg.installed:
# Exclude installed here since we only
# want to show available updates.
@@ -385,13 +383,6 @@ class depgraph(object):
missed_update_types.pop("slot conflict", None)
missed_update_types.pop("missing dependency", None)
- required_use = missed_update_types.pop("required use", None)
- if required_use is not None:
- # For display purposes, unsatisfied REQUIRED_USE
- # can be treated like a missing dependency.
- missed_update_types.setdefault("missing dependency",
- []).extend(required_use)
-
self._show_missed_update_slot_conflicts(
missed_update_types.get("slot conflict"))
@@ -844,13 +835,11 @@ class depgraph(object):
parent, atom = parent_atom
self._add_parent_atom(pkg, parent_atom)
- config_issues = \
- self._dynamic_config._pkg_config_issues.setdefault(pkg, {})
- parent_atoms = config_issues.setdefault("required use", set())
- all_parent_atoms = self._dynamic_config._parent_atoms.get(pkg)
- if all_parent_atoms is not None:
- for parent, atom in all_parent_atoms:
- parent_atoms.add((parent, pkg.root, atom))
+ atom = dep.atom
+ if atom is None:
+ atom = Atom("=" + pkg.cpv)
+ self._dynamic_config._unsatisfied_deps_for_display.append(
+ ((pkg.root, atom), {"myparent":dep.parent}))
return 0
if not pkg.onlydeps:
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: bc41037a5ad34c8812fe1f4ac36a051660a0fca6
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 3 04:18:47 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Thu Feb 3 04:18:47 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=bc41037a
depgraph: skip backtrack for fatal errors
---
pym/_emerge/depgraph.py | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 920cd21..d0ceb33 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -1598,6 +1598,7 @@ class depgraph(object):
if os.path.realpath(x) != \
os.path.realpath(self._frozen_config.trees[myroot]["bintree"].getname(mykey)):
writemsg(colorize("BAD", "\n*** You need to adjust PKGDIR to emerge this package.\n\n"), noiselevel=-1)
+ self._dynamic_config._skip_restart = True
return 0, myfavorites
pkg = self._pkg(mykey, "binary", root_config,
@@ -1623,6 +1624,7 @@ class depgraph(object):
if ebuild_path != os.path.join(os.path.realpath(tree_root),
cp, os.path.basename(ebuild_path)):
writemsg(colorize("BAD", "\n*** You need to adjust PORTDIR or PORTDIR_OVERLAY to emerge this package.\n\n"), noiselevel=-1)
+ self._dynamic_config._skip_restart = True
return 0, myfavorites
if mykey not in portdb.xmatch(
"match-visible", portage.cpv_getkey(mykey)):
@@ -1643,6 +1645,7 @@ class depgraph(object):
if not x.startswith(myroot):
portage.writemsg(("\n\n!!! '%s' does not start with" + \
" $ROOT.\n") % x, noiselevel=-1)
+ self._dynamic_config._skip_restart = True
return 0, []
# Queue these up since it's most efficient to handle
# multiple files in a single iter_owners() call.
@@ -1652,6 +1655,7 @@ class depgraph(object):
if not f.startswith(myroot):
portage.writemsg(("\n\n!!! '%s' (resolved from '%s') does not start with" + \
" $ROOT.\n") % (f, x), noiselevel=-1)
+ self._dynamic_config._skip_restart = True
return 0, []
lookup_owners.append(f)
else:
@@ -1673,6 +1677,7 @@ class depgraph(object):
noiselevel=-1)
portage.writemsg("!!! Please check ebuild(5) for full details.\n")
portage.writemsg("!!! (Did you specify a version but forget to prefix with '='?)\n")
+ self._dynamic_config._skip_restart = True
return (0,[])
# Don't expand categories or old-style virtuals here unless
# necessary. Expansion of old-style virtuals here causes at
@@ -1730,6 +1735,7 @@ class depgraph(object):
writemsg("\n\n", noiselevel=-1)
ambiguous_package_name(x, expanded_atoms, root_config,
self._frozen_config.spinner, self._frozen_config.myopts)
+ self._dynamic_config._skip_restart = True
return False, myfavorites
if expanded_atoms:
atom = expanded_atoms[0]
@@ -1769,6 +1775,7 @@ class depgraph(object):
if not owners:
portage.writemsg(("\n\n!!! '%s' is not claimed " + \
"by any package.\n") % lookup_owners[0], noiselevel=-1)
+ self._dynamic_config._skip_restart = True
return 0, []
for cpv in owners:
@@ -4074,6 +4081,7 @@ class depgraph(object):
raise self._unknown_internal_error()
if not self._validate_blockers():
+ self._dynamic_config._skip_restart = True
raise self._unknown_internal_error()
if self._dynamic_config._slot_collision_info:
@@ -4656,6 +4664,7 @@ class depgraph(object):
if not selected_nodes:
self._dynamic_config._circular_deps_for_display = mygraph
+ self._dynamic_config._skip_restart = True
raise self._unknown_internal_error()
# At this point, we've succeeded in selecting one or more nodes, so
@@ -4764,6 +4773,7 @@ class depgraph(object):
self._dynamic_config._unsatisfied_blockers_for_display = unsolvable_blockers
self._dynamic_config._serialized_tasks_cache = retlist[:]
self._dynamic_config._scheduler_graph = scheduler_graph
+ self._dynamic_config._skip_restart = True
raise self._unknown_internal_error()
if self._dynamic_config._slot_collision_info and \
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: 93328d0d02f4f0f6ce3fbaad93e978148a130238
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 3 03:41:10 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Thu Feb 3 03:41:10 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=93328d0d
depgraph: rm obsolete AmbguousPackageName handler
---
pym/_emerge/depgraph.py | 23 ++---------------------
1 files changed, 2 insertions(+), 21 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 05ca187..920cd21 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -1174,8 +1174,8 @@ class depgraph(object):
debug = "--debug" in self._frozen_config.myopts
strict = mytype != "installed"
- try:
- for dep_root, dep_string, dep_priority, ignore_blockers in deps:
+
+ for dep_root, dep_string, dep_priority, ignore_blockers in deps:
if not dep_string:
continue
if debug:
@@ -1229,25 +1229,6 @@ class depgraph(object):
allow_unsatisfied, ignore_blockers=ignore_blockers):
return 0
- except portage.exception.AmbiguousPackageName as e:
- pkgs = e.args[0]
- portage.writemsg("\n\n!!! An atom in the dependencies " + \
- "is not fully-qualified. Multiple matches:\n\n", noiselevel=-1)
- for cpv in pkgs:
- portage.writemsg(" %s\n" % cpv, noiselevel=-1)
- portage.writemsg("\n", noiselevel=-1)
- if mytype == "binary":
- portage.writemsg(
- "!!! This binary package cannot be installed: '%s'\n" % \
- mykey, noiselevel=-1)
- elif mytype == "ebuild":
- portdb = self._frozen_config.roots[myroot].trees["porttree"].dbapi
- myebuild, mylocation = portdb.findname2(mykey, myrepo = pkg.repo)
- portage.writemsg("!!! This ebuild cannot be installed: " + \
- "'%s'\n" % myebuild, noiselevel=-1)
- portage.writemsg("!!! Please notify the package maintainer " + \
- "that atoms must be fully-qualified.\n", noiselevel=-1)
- return 0
self._dynamic_config._traversed_pkg_deps.add(pkg)
return 1
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: 2f944dceba509832f3cc070e8c74b8a4e3ba3474
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 3 04:30:37 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Thu Feb 3 04:30:37 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=2f944dce
depgraph: remove obsolete gpg exception handlers
---
pym/_emerge/depgraph.py | 14 --------------
1 files changed, 0 insertions(+), 14 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index d0ceb33..27a854b 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -1952,20 +1952,6 @@ class depgraph(object):
(atom,), noiselevel=-1)
return 0, myfavorites
- except portage.exception.MissingSignature as e:
- portage.writemsg("\n\n!!! A missing gpg signature is preventing portage from calculating the\n")
- portage.writemsg("!!! required dependencies. This is a security feature enabled by the admin\n")
- portage.writemsg("!!! to aid in the detection of malicious intent.\n\n")
- portage.writemsg("!!! THIS IS A POSSIBLE INDICATION OF TAMPERED FILES -- CHECK CAREFULLY.\n")
- portage.writemsg("!!! Affected file: %s\n" % (e), noiselevel=-1)
- return 0, myfavorites
- except portage.exception.InvalidSignature as e:
- portage.writemsg("\n\n!!! An invalid gpg signature is preventing portage from calculating the\n")
- portage.writemsg("!!! required dependencies. This is a security feature enabled by the admin\n")
- portage.writemsg("!!! to aid in the detection of malicious intent.\n\n")
- portage.writemsg("!!! THIS IS A POSSIBLE INDICATION OF TAMPERED FILES -- CHECK CAREFULLY.\n")
- portage.writemsg("!!! Affected file: %s\n" % (e), noiselevel=-1)
- return 0, myfavorites
except SystemExit as e:
raise # Needed else can't exit
except Exception as e:
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: f3827387522ab3c9fef1c8d5efb56f2eb3e75731
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 3 07:39:09 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Thu Feb 3 07:39:09 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=f3827387
depgraph: use catsplit where appropriate
---
pym/_emerge/depgraph.py | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 27a854b..8f04c44 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2624,7 +2624,7 @@ class depgraph(object):
writemsg_stdout("\nemerge: there are no ebuilds to satisfy "+green(xinfo)+".\n", noiselevel=-1)
if isinstance(myparent, AtomArg):
cp = myparent.atom.cp
- cat, pkg = cp.split("/")
+ cat, pkg = portage.catsplit(cp)
if cat == "null":
cat = None
@@ -2642,7 +2642,7 @@ class depgraph(object):
else:
pkg_to_cp = {}
for other_cp in all_cp:
- other_pkg = other_cp.split("/")[1]
+ other_pkg = portage.catsplit(other_cp)[1]
pkg_to_cp.setdefault(other_pkg, set()).add(other_cp)
pkg_matches = difflib.get_close_matches(pkg, pkg_to_cp)
matches = []
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: 3b4262ff0e1903f1c8dc8a9e3c34bb442deea04b
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 3 08:14:49 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Thu Feb 3 08:14:49 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=3b4262ff
action_uninstall: allow repo with wildcard atom
---
pym/_emerge/actions.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index 2c6ce87..278002b 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -2528,7 +2528,7 @@ def action_uninstall(settings, trees, ldpath_mtimes,
atom += "::" + ext_atom.repo
if vardb.match(atom):
- valid_atoms.append(Atom(atom))
+ valid_atoms.append(Atom(atom, allow_repo=True))
else:
msg = []
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: 6503980e0e3bcfce9fbaff85c33d87f616e955a9
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 4 15:41:45 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Feb 4 15:41:45 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=6503980e
depgraph: don't drop deps in _add_dep
This will fix bug #353613. We remove a hunk of code that was meant
to limit recursion, but is obsolete an buggy. The recursion limiting
is now handled by _add_pkg and the _ignored_deps stack.
---
pym/_emerge/depgraph.py | 29 -----------------------------
1 files changed, 0 insertions(+), 29 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 811eda6..4334a33 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -683,8 +683,6 @@ class depgraph(object):
dep_pkg = dep.child
existing_node = self._dynamic_config._slot_pkg_map[
dep.root].get(dep_pkg.slot_atom)
- if existing_node is not dep_pkg:
- existing_node = None
if not dep_pkg:
if dep.priority.optional:
@@ -731,33 +729,6 @@ class depgraph(object):
noiselevel=-1, level=logging.DEBUG)
return 0
- # In some cases, dep_check will return deps that shouldn't
- # be proccessed any further, so they are identified and
- # discarded here. Try to discard as few as possible since
- # discarded dependencies reduce the amount of information
- # available for optimization of merge order.
- if dep.priority.satisfied and \
- dep.priority.satisfied.visible and \
- not dep_pkg.installed and \
- not (existing_node or recurse):
- myarg = None
- if dep.root == self._frozen_config.target_root:
- try:
- myarg = next(self._iter_atoms_for_pkg(dep_pkg))
- except StopIteration:
- pass
- except portage.exception.InvalidDependString:
- if not dep_pkg.installed:
- # This shouldn't happen since the package
- # should have been masked.
- raise
- if not myarg:
- # Existing child selection may not be valid unless
- # it's added to the graph immediately, since "complete"
- # mode may select a different child later.
- dep.child = None
- self._dynamic_config._ignored_deps.append(dep)
- return 1
if not self._add_pkg(dep_pkg, dep):
return 0
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: f90df89f9053bdad96d61935d704f33239f3fed5
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 4 17:41:30 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Feb 4 17:41:30 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=f90df89f
depgraph: make downgrades trigger complete graph
It's common for downgrades to break dependencies, as in bug #353613, so
automatically trigger complete graph mode when a downgrade is found.
---
pym/_emerge/depgraph.py | 23 +++++++++++++++++++++--
1 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 4334a33..f131889 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -3456,8 +3456,27 @@ class depgraph(object):
return 1
if "complete" not in self._dynamic_config.myparams:
- # Skip this to avoid consuming enough time to disturb users.
- return 1
+ # Automatically enable complete mode if there are any
+ # downgrades, since they often break dependencies
+ # (like in bug #353613).
+ have_downgrade = False
+ for node in self._dynamic_config.digraph:
+ if not isinstance(node, Package) or \
+ node.operation != "merge":
+ continue
+ vardb = self._frozen_config.roots[
+ node.root].trees["vartree"].dbapi
+ inst_pkg = vardb.match_pkgs(node.slot_atom)
+ if inst_pkg and inst_pkg[0] > node:
+ have_downgrade = True
+ break
+
+ if have_downgrade:
+ self._dynamic_config.myparams["complete"] = True
+ else:
+ # Skip complete graph mode, in order to avoid consuming
+ # enough time to disturb users.
+ return 1
self._load_vdb()
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: 4d6d55b00d1e08453397c37f6b986c60175fd30f
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 5 03:20:37 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sat Feb 5 03:20:37 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=4d6d55b0
get_dep_chain: add "set" node type
---
pym/_emerge/depgraph.py | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index f131889..6e8ca31 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2199,7 +2199,11 @@ class depgraph(object):
traversed_nodes.add(node)
if isinstance(node, DependencyArg):
- dep_chain.append((_unicode_decode("%s") % (node,), "argument"))
+ if self._dynamic_config.digraph.parent_nodes(node):
+ node_type = "set"
+ else:
+ node_type = "argument"
+ dep_chain.append((_unicode_decode("%s") % (node,), node_type))
elif node is not start_node:
for ppkg, patom in all_parents[child]:
@@ -2650,7 +2654,6 @@ class depgraph(object):
# It's redundant to show parent for AtomArg since
# it's the same as 'xinfo' displayed above.
dep_chain = self._get_dep_chain(myparent, atom)
-
for node, node_type in dep_chain:
msg.append('(dependency required by "%s" [%s])' % \
(colorize('INFORM', _unicode_decode("%s") % \
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-02-06 13:10 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-02-06 13:10 UTC (permalink / raw
To: gentoo-commits
commit: a7c3400c1c8022b5b1b00e1d5b871bf902b25f48
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 5 07:32:54 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sat Feb 5 07:32:54 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a7c3400c
backtrack_depgraph: get_best_run for last run
It's essential to feed back autounmask config changes, especially
USE changes, in order to make the last run as successful as possible.
This fixes a regression in the master branch, since commit
2186f87c22e0c4bdb86065855c2034bdbb66fa45.
---
pym/_emerge/depgraph.py | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 6e8ca31..c4d84ab 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -5771,7 +5771,8 @@ def _backtrack_depgraph(settings, trees, myopts, myparams, myaction, myfiles, sp
mydepgraph = depgraph(settings, trees, myopts, myparams, spinner,
frozen_config=frozen_config,
- allow_backtracking=False)
+ allow_backtracking=False,
+ backtrack_parameters=backtracker.get_best_run())
success, favorites = mydepgraph.select_files(myfiles)
return (success, mydepgraph, favorites)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-10-23 11:05 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-10-23 11:05 UTC (permalink / raw
To: gentoo-commits
commit: 4befce5fc2f0985989b0b393567301827fb9a463
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 23 10:59:30 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Oct 23 10:59:30 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=4befce5f
Add warning for switched overlay
---
pym/_emerge/actions.py | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index d8f9032..e9a0928 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -3037,6 +3037,10 @@ def display_news_notification(root_config, myopts):
return
permission_msgs = set()
+ print(colorize("WARN", " * IMPORTANT:"), end=' ')
+ print("The overlay location has changed, so please do the following:")
+ print(" layman -d multilib ; layman -a multilib-portage")
+ print(" Afterwards update portage as usual.")
for repo in portdb.getRepositories():
try:
unreadItems = checkUpdatedNewsItems(
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-10-23 11:42 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-10-23 11:42 UTC (permalink / raw
To: gentoo-commits
commit: 0d7597d0b8634e66851ed8a521109bb8ceb7bb55
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 23 11:41:43 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Oct 23 11:41:43 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=0d7597d0
Revert "Add warning for switched overlay"
This reverts commit 4befce5fc2f0985989b0b393567301827fb9a463.
---
pym/_emerge/actions.py | 4 ----
1 files changed, 0 insertions(+), 4 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index e9a0928..d8f9032 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -3037,10 +3037,6 @@ def display_news_notification(root_config, myopts):
return
permission_msgs = set()
- print(colorize("WARN", " * IMPORTANT:"), end=' ')
- print("The overlay location has changed, so please do the following:")
- print(" layman -d multilib ; layman -a multilib-portage")
- print(" Afterwards update portage as usual.")
for repo in portdb.getRepositories():
try:
unreadItems = checkUpdatedNewsItems(
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2011-11-15 20:20 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2011-11-15 20:20 UTC (permalink / raw
To: gentoo-commits
commit: eee8b76256c978c486befed81ad35e3f452e64c9
Author: Nathan Phillip Brink <binki <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 15 19:53:19 2011 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Tue Nov 15 20:20:42 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=eee8b762
Support multilib for non-multilib setups (where MULTILIB_ABIS=).
---
pym/_emerge/Package.py | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index 27af1e6..ee2855d 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -638,9 +638,8 @@ class _PackageMetadataWrapper(_PackageMetadataWrapperBase):
self._pkg.inherited = v
def _set_iuse(self, k, v):
- if self._pkg.root_config.settings['MULTILIB_ABIS'].count(' ') != 0:
- for multilib_abis in self._pkg.root_config.settings.get("MULTILIB_ABIS", '').split(' '):
- v = v + " multilib_abi_" + multilib_abis
+ for multilib_abis in self._pkg.root_config.settings.get("MULTILIB_ABIS", '').split(' '):
+ v = v + " multilib_abi_" + multilib_abis
self._pkg.iuse = self._pkg._iuse(
v.split(), self._pkg.root_config.settings._iuse_implicit_match)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-02-18 16:14 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-02-18 16:14 UTC (permalink / raw
To: gentoo-commits
commit: b3b15821591c75268c0d4ade3fdee14795fdb059
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 18 16:14:10 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sat Feb 18 16:14:10 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=b3b15821
Fix intend, drop dublicated entry
---
pym/_emerge/EbuildExecuter.py | 4 ----
1 files changed, 0 insertions(+), 4 deletions(-)
diff --git a/pym/_emerge/EbuildExecuter.py b/pym/_emerge/EbuildExecuter.py
index 6591ee5..eb19c6c 100644
--- a/pym/_emerge/EbuildExecuter.py
+++ b/pym/_emerge/EbuildExecuter.py
@@ -109,10 +109,6 @@ class EbuildExecuter(CompositeTask):
# This initializes PORTAGE_LOG_FILE.
portage.prepare_build_dirs(pkg.root, settings, cleanup)
- setup_phase = EbuildPhase(background=self.background,
- phase="setup", scheduler=scheduler,
- settings=settings)
-
setup_phase = EbuildPhase(background=self.background,
phase="setup", scheduler=scheduler,
settings=settings)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-02-26 16:27 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-02-26 16:27 UTC (permalink / raw
To: gentoo-commits
commit: f7cdc96239e36ff6012b8e06f5666ed3f675d3eb
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 12:54:14 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Feb 26 12:54:14 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=f7cdc962
main.py: Move multilib behind force-multilib FEATURE, extend error message
---
pym/_emerge/main.py | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py
index 6f2f1d7..a1c44ea 100644
--- a/pym/_emerge/main.py
+++ b/pym/_emerge/main.py
@@ -1653,10 +1653,13 @@ def emerge_main(args=None):
adjust_configs(myopts, trees)
apply_priorities(settings)
- if settings.get("NO_AUTO_FLAG", "") is "":
- writemsg_level(bad("!!! Failed to find vars from extra profile") + "\n",level=logging.ERROR, noiselevel=-1)
- writemsg_level(bad("!!! Please make sure that you did follow the instructions and included the extra profile\n"),level=logging.ERROR, noiselevel=-1)
- return 1
+ if 'force-multilib' in settings.get("FEATURES", ""):
+ if settings.get("NO_AUTO_FLAG", "") is "":
+ writemsg_level(bad("!!! Failed to find vars from extra profile") + "\n",level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! Please make sure that you did follow the instructions and included the extra profile\n"),level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! http://git.overlays.gentoo.org/gitweb/?p=proj/multilib-portage.git;a=blob;f=doc/portage-multilib-instructions\n"),level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! has some basic instructions for the setup\n"),level=logging.ERROR, noiselevel=-1)
+ return 1
if myaction == 'version':
writemsg_stdout(getportageversion(
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-02-26 16:27 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-02-26 16:27 UTC (permalink / raw
To: gentoo-commits
commit: 48f913ef67b49383304e2c17456634d770073c32
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 12:55:48 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Feb 26 12:55:48 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=48f913ef
actions.py: Move multilib behind force-multilib FEATURE
---
pym/_emerge/actions.py | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index ac8f7ea..7cb451e 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1470,7 +1470,8 @@ def action_info(settings, trees, myopts, myfiles):
myvars = portage.util.unique_array(myvars)
use_expand = settings.get('USE_EXPAND', '').split()
- use_expand.append("MULTILIB_ABIS")
+ if 'force-multilib' in settings.get("FEATURES", ""):
+ use_expand.append("MULTILIB_ABIS")
use_expand.sort()
unset_vars = []
myvars.sort()
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-02-26 16:27 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-02-26 16:27 UTC (permalink / raw
To: gentoo-commits
commit: 5077a3273c1f6224b1e954b1cd0063d97f383c86
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 13:02:10 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Feb 26 13:02:10 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=5077a327
Package.py: Move multilib behind force-multilib FEATURE
---
pym/_emerge/Package.py | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index ee2855d..0243c04 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -638,8 +638,9 @@ class _PackageMetadataWrapper(_PackageMetadataWrapperBase):
self._pkg.inherited = v
def _set_iuse(self, k, v):
- for multilib_abis in self._pkg.root_config.settings.get("MULTILIB_ABIS", '').split(' '):
- v = v + " multilib_abi_" + multilib_abis
+ if 'force-multilib' in self._pkg.root_config.settings.get("FEATURES", ''):
+ for multilib_abis in self._pkg.root_config.settings.get("MULTILIB_ABIS", '').split(' '):
+ v = v + " multilib_abi_" + multilib_abis
self._pkg.iuse = self._pkg._iuse(
v.split(), self._pkg.root_config.settings._iuse_implicit_match)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-02-26 16:27 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-02-26 16:27 UTC (permalink / raw
To: gentoo-commits
commit: 7d34d970195bf751c33a0357c6b068ffd5da6d57
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 14:14:39 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Feb 26 14:14:39 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=7d34d970
Ebuild_Executer.py: Fix FEATURES check
---
pym/_emerge/EbuildExecuter.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/EbuildExecuter.py b/pym/_emerge/EbuildExecuter.py
index 5e3bebb..14ef437 100644
--- a/pym/_emerge/EbuildExecuter.py
+++ b/pym/_emerge/EbuildExecuter.py
@@ -93,7 +93,7 @@ class EbuildExecuter(CompositeTask):
phase=phase, scheduler=self.scheduler,
settings=self.settings))
- if 'force-multilib' in self.settings:
+ if 'force-multilib' in self.settings["FEATURES"]:
self._start_task(ebuild_phases, self._install_exit)
else:
self._start_task(ebuild_phases, self._default_final_exit)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-02-26 16:27 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-02-26 16:27 UTC (permalink / raw
To: gentoo-commits
commit: 847cb24b3cdd577dc893865c1a91dae640d7b30a
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 13:03:14 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Feb 26 13:03:14 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=847cb24b
Ebuild_Executer.py: Move multilib behind force-multilib FEATURE
---
pym/_emerge/EbuildExecuter.py | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/EbuildExecuter.py b/pym/_emerge/EbuildExecuter.py
index eb19c6c..5e3bebb 100644
--- a/pym/_emerge/EbuildExecuter.py
+++ b/pym/_emerge/EbuildExecuter.py
@@ -93,7 +93,10 @@ class EbuildExecuter(CompositeTask):
phase=phase, scheduler=self.scheduler,
settings=self.settings))
- self._start_task(ebuild_phases, self._install_exit)
+ if 'force-multilib' in self.settings:
+ self._start_task(ebuild_phases, self._install_exit)
+ else:
+ self._start_task(ebuild_phases, self._default_final_exit)
def _install_exit(self, install_phase):
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-07-19 21:03 Zac Medico
0 siblings, 0 replies; 45+ messages in thread
From: Zac Medico @ 2012-07-19 21:03 UTC (permalink / raw
To: gentoo-commits
commit: 6a1c5d1beba5367cefc9417416b364f520acde63
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 19 21:02:31 2012 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Thu Jul 19 21:02:31 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=6a1c5d1b
actions.py: remove unnecessary use_expand code
This hunk was adding MULTILIB_ABIS to use_expand, but it's actually
the wrong variable. The correct variable is MULTILIB_ABI and it's
already added to USE_EXPAND by the config class.
---
pym/_emerge/actions.py | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index e469f0a..af42828 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1504,8 +1504,6 @@ def action_info(settings, trees, myopts, myfiles):
myvars = portage.util.unique_array(myvars)
use_expand = settings.get('USE_EXPAND', '').split()
- if 'force-multilib' in settings.features:
- use_expand.append("MULTILIB_ABIS")
use_expand.sort()
unset_vars = []
myvars.sort()
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-09-17 20:15 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-09-17 20:15 UTC (permalink / raw
To: gentoo-commits
commit: fd72996029dacbcc7e42b6d395a412f070297fd8
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 17 20:15:00 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Mon Sep 17 20:15:00 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=fd729960
Apply patch from zmedico, readds missing code from iuse_implicit changes
---
pym/_emerge/Package.py | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index 957d5d3..c9ca411 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -69,7 +69,14 @@ class Package(Task):
implicit_match = self.root_config.settings._iuse_effective_match
else:
implicit_match = self.root_config.settings._iuse_implicit_match
- self.iuse = self._iuse(self.metadata["IUSE"].split(), implicit_match)
+ iuse = self.metadata["IUSE"]
+ if 'force-multilib' in self.root_config.settings.features:
+ if self.built is False:
+ for multilib_abis in self.root_config.settings.get("MULTILIB_ABIS", '').split():
+ iuse += " multilib_abi_" + multilib_abis
+ iuse += " abiwrapper"
+ self.metadata["IUSE"] = iuse
+ self.iuse = self._iuse(iuse.split(), implicit_match)
if (self.iuse.enabled or self.iuse.disabled) and \
not eapi_attrs.iuse_defaults:
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-10-22 9:24 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-10-22 9:24 UTC (permalink / raw
To: gentoo-commits
commit: db4fd960ae7299820d613c080b38c3ece6ed3a3d
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 22 09:24:23 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Mon Oct 22 09:24:23 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=db4fd960
Finish the merge of alpha141
---
pym/_emerge/actions.py | 10 +-
pym/_emerge/main.py | 418 +-----------------------------------------------
2 files changed, 11 insertions(+), 417 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index fec2dfa..af203ac 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1,4 +1,4 @@
-# Copyright 1999-2012 Gentoo Foundation
+w# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from __future__ import print_function
@@ -3460,6 +3460,14 @@ def run_action(settings, trees, mtimedb, myaction, myopts, myfiles,
adjust_configs(myopts, trees)
apply_priorities(settings)
+ if 'force-multilib' in settings.features:
+ if settings.get("NO_AUTO_FLAG", "") is "":
+ writemsg_level(bad("!!! Failed to find vars from extra profile") + "\n",level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! Please make sure that you did follow the instructions and included the extra profile\n"),level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! http://git.overlays.gentoo.org/gitweb/?p=proj/multilib-portage.git;a=blob;f=doc/portage-multilib-instructions\n"),level=logging.ERROR, noiselevel=-1)
+ writemsg_level(bad("!!! has some basic instructions for the setup\n"),level=logging.ERROR, noiselevel=-1)
+ return 1
+
if myaction == 'version':
writemsg_stdout(getportageversion(
settings["PORTDIR"], None,
diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py
index d4fd8b1..be5a5ca 100644
--- a/pym/_emerge/main.py
+++ b/pym/_emerge/main.py
@@ -1017,419 +1017,5 @@ def emerge_main(args=None):
tmpcmdline.extend(args)
myaction, myopts, myfiles = parse_opts(tmpcmdline)
- # skip global updates prior to sync, since it's called after sync
- if myaction not in ('help', 'info', 'sync', 'version') and \
- myopts.get('--package-moves') != 'n' and \
- _global_updates(trees, mtimedb["updates"], quiet=("--quiet" in myopts)):
- mtimedb.commit()
- # Reload the whole config from scratch.
- settings, trees, mtimedb = load_emerge_config(trees=trees)
- portdb = trees[settings['EROOT']]['porttree'].dbapi
-
- xterm_titles = "notitles" not in settings.features
- if xterm_titles:
- xtermTitle("emerge")
-
- if "--digest" in myopts:
- os.environ["FEATURES"] = os.environ.get("FEATURES","") + " digest"
- # Reload the whole config from scratch so that the portdbapi internal
- # config is updated with new FEATURES.
- settings, trees, mtimedb = load_emerge_config(trees=trees)
- portdb = trees[settings['EROOT']]['porttree'].dbapi
-
- # NOTE: adjust_configs() can map options to FEATURES, so any relevant
- # options adjustments should be made prior to calling adjust_configs().
- if "--buildpkgonly" in myopts:
- myopts["--buildpkg"] = True
-
- adjust_configs(myopts, trees)
- apply_priorities(settings)
-
- if 'force-multilib' in settings.features:
- if settings.get("NO_AUTO_FLAG", "") is "":
- writemsg_level(bad("!!! Failed to find vars from extra profile") + "\n",level=logging.ERROR, noiselevel=-1)
- writemsg_level(bad("!!! Please make sure that you did follow the instructions and included the extra profile\n"),level=logging.ERROR, noiselevel=-1)
- writemsg_level(bad("!!! http://git.overlays.gentoo.org/gitweb/?p=proj/multilib-portage.git;a=blob;f=doc/portage-multilib-instructions\n"),level=logging.ERROR, noiselevel=-1)
- writemsg_level(bad("!!! has some basic instructions for the setup\n"),level=logging.ERROR, noiselevel=-1)
- return 1
-
- if myaction == 'version':
- writemsg_stdout(getportageversion(
- settings["PORTDIR"], None,
- settings.profile_path, settings["CHOST"],
- trees[settings['EROOT']]['vartree'].dbapi) + '\n', noiselevel=-1)
- return 0
- elif myaction == 'help':
- _emerge.help.help()
- return 0
-
- spinner = stdout_spinner()
- if "candy" in settings.features:
- spinner.update = spinner.update_scroll
-
- if "--quiet" not in myopts:
- portage.deprecated_profile_check(settings=settings)
- if portage.const._ENABLE_REPO_NAME_WARN:
- # Bug #248603 - Disable warnings about missing
- # repo_name entries for stable branch.
- repo_name_check(trees)
- repo_name_duplicate_check(trees)
- config_protect_check(trees)
- check_procfs()
-
- if "getbinpkg" in settings.features:
- myopts["--getbinpkg"] = True
-
- if "--getbinpkgonly" in myopts:
- myopts["--getbinpkg"] = True
-
- if "--getbinpkgonly" in myopts:
- myopts["--usepkgonly"] = True
-
- if "--getbinpkg" in myopts:
- myopts["--usepkg"] = True
-
- if "--usepkgonly" in myopts:
- myopts["--usepkg"] = True
-
- if "--buildpkgonly" in myopts:
- # --buildpkgonly will not merge anything, so
- # it cancels all binary package options.
- for opt in ("--getbinpkg", "--getbinpkgonly",
- "--usepkg", "--usepkgonly"):
- myopts.pop(opt, None)
-
- for mytrees in trees.values():
- mydb = mytrees["porttree"].dbapi
- # Freeze the portdbapi for performance (memoize all xmatch results).
- mydb.freeze()
-
- if myaction in ('search', None) and \
- "--usepkg" in myopts:
- # Populate the bintree with current --getbinpkg setting.
- # This needs to happen before expand_set_arguments(), in case
- # any sets use the bintree.
- mytrees["bintree"].populate(
- getbinpkgs="--getbinpkg" in myopts)
-
- del mytrees, mydb
-
- if "moo" in myfiles:
- print(COWSAY_MOO % platform.system())
- msg = ("The above `emerge moo` display is deprecated. "
- "Please use `emerge --moo` instead.")
- for line in textwrap.wrap(msg, 50):
- print(" %s %s" % (colorize("WARN", "*"), line))
-
- for x in myfiles:
- ext = os.path.splitext(x)[1]
- if (ext == ".ebuild" or ext == ".tbz2") and os.path.exists(os.path.abspath(x)):
- print(colorize("BAD", "\n*** emerging by path is broken and may not always work!!!\n"))
- break
-
- root_config = trees[settings['EROOT']]['root_config']
- if myaction == "moo":
- print(COWSAY_MOO % platform.system())
- return os.EX_OK
- elif myaction == "list-sets":
- writemsg_stdout("".join("%s\n" % s for s in sorted(root_config.sets)))
- return os.EX_OK
- elif myaction == "check-news":
- news_counts = count_unread_news(
- root_config.trees["porttree"].dbapi,
- root_config.trees["vartree"].dbapi)
- if any(news_counts.values()):
- display_news_notifications(news_counts)
- elif "--quiet" not in myopts:
- print("", colorize("GOOD", "*"), "No news items were found.")
- return os.EX_OK
-
- ensure_required_sets(trees)
-
- # only expand sets for actions taking package arguments
- oldargs = myfiles[:]
- if myaction in ("clean", "config", "depclean", "info", "prune", "unmerge", None):
- myfiles, retval = expand_set_arguments(myfiles, myaction, root_config)
- if retval != os.EX_OK:
- return retval
-
- # Need to handle empty sets specially, otherwise emerge will react
- # with the help message for empty argument lists
- if oldargs and not myfiles:
- print("emerge: no targets left after set expansion")
- return 0
-
- if ("--tree" in myopts) and ("--columns" in myopts):
- print("emerge: can't specify both of \"--tree\" and \"--columns\".")
- return 1
-
- if '--emptytree' in myopts and '--noreplace' in myopts:
- writemsg_level("emerge: can't specify both of " + \
- "\"--emptytree\" and \"--noreplace\".\n",
- level=logging.ERROR, noiselevel=-1)
- return 1
-
- if ("--quiet" in myopts):
- spinner.update = spinner.update_quiet
- portage.util.noiselimit = -1
-
- if "--fetch-all-uri" in myopts:
- myopts["--fetchonly"] = True
-
- if "--skipfirst" in myopts and "--resume" not in myopts:
- myopts["--resume"] = True
-
- # Allow -p to remove --ask
- if "--pretend" in myopts:
- myopts.pop("--ask", None)
-
- # forbid --ask when not in a terminal
- # note: this breaks `emerge --ask | tee logfile`, but that doesn't work anyway.
- if ("--ask" in myopts) and (not sys.stdin.isatty()):
- portage.writemsg("!!! \"--ask\" should only be used in a terminal. Exiting.\n",
- noiselevel=-1)
- return 1
-
- if settings.get("PORTAGE_DEBUG", "") == "1":
- spinner.update = spinner.update_quiet
- portage.util.noiselimit = 0
- if "python-trace" in settings.features:
- import portage.debug as portage_debug
- portage_debug.set_trace(True)
-
- if not ("--quiet" in myopts):
- if '--nospinner' in myopts or \
- settings.get('TERM') == 'dumb' or \
- not sys.stdout.isatty():
- spinner.update = spinner.update_basic
-
- if "--debug" in myopts:
- print("myaction", myaction)
- print("myopts", myopts)
-
- if not myaction and not myfiles and "--resume" not in myopts:
- _emerge.help.help()
- return 1
-
- pretend = "--pretend" in myopts
- fetchonly = "--fetchonly" in myopts or "--fetch-all-uri" in myopts
- buildpkgonly = "--buildpkgonly" in myopts
-
- # check if root user is the current user for the actions where emerge needs this
- if portage.secpass < 2:
- # We've already allowed "--version" and "--help" above.
- if "--pretend" not in myopts and myaction not in ("search","info"):
- need_superuser = myaction in ('clean', 'depclean', 'deselect',
- 'prune', 'unmerge') or not \
- (fetchonly or \
- (buildpkgonly and secpass >= 1) or \
- myaction in ("metadata", "regen", "sync"))
- if portage.secpass < 1 or \
- need_superuser:
- if need_superuser:
- access_desc = "superuser"
- else:
- access_desc = "portage group"
- # Always show portage_group_warning() when only portage group
- # access is required but the user is not in the portage group.
- from portage.data import portage_group_warning
- if "--ask" in myopts:
- writemsg_stdout("This action requires %s access...\n" % \
- (access_desc,), noiselevel=-1)
- if portage.secpass < 1 and not need_superuser:
- portage_group_warning()
- if userquery("Would you like to add --pretend to options?",
- "--ask-enter-invalid" in myopts) == "No":
- return 128 + signal.SIGINT
- myopts["--pretend"] = True
- del myopts["--ask"]
- else:
- sys.stderr.write(("emerge: %s access is required\n") \
- % access_desc)
- if portage.secpass < 1 and not need_superuser:
- portage_group_warning()
- return 1
-
- # Disable emergelog for everything except build or unmerge operations.
- # This helps minimize parallel emerge.log entries that can confuse log
- # parsers like genlop.
- disable_emergelog = False
- for x in ("--pretend", "--fetchonly", "--fetch-all-uri"):
- if x in myopts:
- disable_emergelog = True
- break
- if disable_emergelog:
- pass
- elif myaction in ("search", "info"):
- disable_emergelog = True
- elif portage.data.secpass < 1:
- disable_emergelog = True
-
- _emerge.emergelog._disable = disable_emergelog
-
- if not disable_emergelog:
- if 'EMERGE_LOG_DIR' in settings:
- try:
- # At least the parent needs to exist for the lock file.
- portage.util.ensure_dirs(settings['EMERGE_LOG_DIR'])
- except portage.exception.PortageException as e:
- writemsg_level("!!! Error creating directory for " + \
- "EMERGE_LOG_DIR='%s':\n!!! %s\n" % \
- (settings['EMERGE_LOG_DIR'], e),
- noiselevel=-1, level=logging.ERROR)
- portage.util.ensure_dirs(_emerge.emergelog._emerge_log_dir)
- else:
- _emerge.emergelog._emerge_log_dir = settings["EMERGE_LOG_DIR"]
- else:
- _emerge.emergelog._emerge_log_dir = os.path.join(os.sep,
- settings["EPREFIX"].lstrip(os.sep), "var", "log")
- portage.util.ensure_dirs(_emerge.emergelog._emerge_log_dir)
-
- if not "--pretend" in myopts:
- emergelog(xterm_titles, "Started emerge on: "+\
- _unicode_decode(
- time.strftime("%b %d, %Y %H:%M:%S", time.localtime()),
- encoding=_encodings['content'], errors='replace'))
- myelogstr=""
- if myopts:
- opt_list = []
- for opt, arg in myopts.items():
- if arg is True:
- opt_list.append(opt)
- elif isinstance(arg, list):
- # arguments like --exclude that use 'append' action
- for x in arg:
- opt_list.append("%s=%s" % (opt, x))
- else:
- opt_list.append("%s=%s" % (opt, arg))
- myelogstr=" ".join(opt_list)
- if myaction:
- myelogstr += " --" + myaction
- if myfiles:
- myelogstr += " " + " ".join(oldargs)
- emergelog(xterm_titles, " *** emerge " + myelogstr)
- del oldargs
-
- def emergeexitsig(signum, frame):
- signal.signal(signal.SIGINT, signal.SIG_IGN)
- signal.signal(signal.SIGTERM, signal.SIG_IGN)
- portage.util.writemsg("\n\nExiting on signal %(signal)s\n" % {"signal":signum})
- sys.exit(128 + signum)
- signal.signal(signal.SIGINT, emergeexitsig)
- signal.signal(signal.SIGTERM, emergeexitsig)
-
- def emergeexit():
- """This gets out final log message in before we quit."""
- if "--pretend" not in myopts:
- emergelog(xterm_titles, " *** terminating.")
- if xterm_titles:
- xtermTitleReset()
- portage.atexit_register(emergeexit)
-
- if myaction in ("config", "metadata", "regen", "sync"):
- if "--pretend" in myopts:
- sys.stderr.write(("emerge: The '%s' action does " + \
- "not support '--pretend'.\n") % myaction)
- return 1
-
- if "sync" == myaction:
- return action_sync(settings, trees, mtimedb, myopts, myaction)
- elif "metadata" == myaction:
- action_metadata(settings, portdb, myopts)
- elif myaction=="regen":
- validate_ebuild_environment(trees)
- return action_regen(settings, portdb, myopts.get("--jobs"),
- myopts.get("--load-average"))
- # HELP action
- elif "config"==myaction:
- validate_ebuild_environment(trees)
- action_config(settings, trees, myopts, myfiles)
-
- # SEARCH action
- elif "search"==myaction:
- validate_ebuild_environment(trees)
- action_search(trees[settings['EROOT']]['root_config'],
- myopts, myfiles, spinner)
-
- elif myaction in ('clean', 'depclean', 'deselect', 'prune', 'unmerge'):
- validate_ebuild_environment(trees)
- rval = action_uninstall(settings, trees, mtimedb["ldpath"],
- myopts, myaction, myfiles, spinner)
- if not (myaction == 'deselect' or buildpkgonly or fetchonly or pretend):
- post_emerge(myaction, myopts, myfiles, settings['EROOT'],
- trees, mtimedb, rval)
- return rval
-
- elif myaction == 'info':
-
- # Ensure atoms are valid before calling unmerge().
- vardb = trees[settings['EROOT']]['vartree'].dbapi
- portdb = trees[settings['EROOT']]['porttree'].dbapi
- bindb = trees[settings['EROOT']]["bintree"].dbapi
- valid_atoms = []
- for x in myfiles:
- if is_valid_package_atom(x, allow_repo=True):
- try:
- #look at the installed files first, if there is no match
- #look at the ebuilds, since EAPI 4 allows running pkg_info
- #on non-installed packages
- valid_atom = dep_expand(x, mydb=vardb, settings=settings)
- if valid_atom.cp.split("/")[0] == "null":
- valid_atom = dep_expand(x, mydb=portdb, settings=settings)
- if valid_atom.cp.split("/")[0] == "null" and "--usepkg" in myopts:
- valid_atom = dep_expand(x, mydb=bindb, settings=settings)
- valid_atoms.append(valid_atom)
- except portage.exception.AmbiguousPackageName as e:
- msg = "The short ebuild name \"" + x + \
- "\" is ambiguous. Please specify " + \
- "one of the following " + \
- "fully-qualified ebuild names instead:"
- for line in textwrap.wrap(msg, 70):
- writemsg_level("!!! %s\n" % (line,),
- level=logging.ERROR, noiselevel=-1)
- for i in e.args[0]:
- writemsg_level(" %s\n" % colorize("INFORM", i),
- level=logging.ERROR, noiselevel=-1)
- writemsg_level("\n", level=logging.ERROR, noiselevel=-1)
- return 1
- continue
- msg = []
- msg.append("'%s' is not a valid package atom." % (x,))
- msg.append("Please check ebuild(5) for full details.")
- writemsg_level("".join("!!! %s\n" % line for line in msg),
- level=logging.ERROR, noiselevel=-1)
- return 1
-
- return action_info(settings, trees, myopts, valid_atoms)
-
- # "update", "system", or just process files:
- else:
- validate_ebuild_environment(trees)
-
- for x in myfiles:
- if x.startswith(SETPREFIX) or \
- is_valid_package_atom(x, allow_repo=True):
- continue
- if x[:1] == os.sep:
- continue
- try:
- os.lstat(x)
- continue
- except OSError:
- pass
- msg = []
- msg.append("'%s' is not a valid package atom." % (x,))
- msg.append("Please check ebuild(5) for full details.")
- writemsg_level("".join("!!! %s\n" % line for line in msg),
- level=logging.ERROR, noiselevel=-1)
- return 1
-
- # GLEP 42 says to display news *after* an emerge --pretend
- if "--pretend" not in myopts:
- display_news_notification(root_config, myopts)
- retval = action_build(settings, trees, mtimedb,
- myopts, myaction, myfiles, spinner)
- post_emerge(myaction, myopts, myfiles, settings['EROOT'],
- trees, mtimedb, retval)
-
- return retval
+ return run_action(settings, trees, mtimedb, myaction, myopts, myfiles,
+ gc_locals=locals().clear)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-10-22 9:43 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-10-22 9:43 UTC (permalink / raw
To: gentoo-commits
commit: c13439f0d8979387d42ebfa6eaff9799f41918c4
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 22 09:43:51 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Mon Oct 22 09:43:51 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=c13439f0
Remove random character
---
pym/_emerge/actions.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index af203ac..7a7f60e 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1,4 +1,4 @@
-w# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from __future__ import print_function
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-11-30 16:49 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-11-30 16:49 UTC (permalink / raw
To: gentoo-commits
commit: 844f073fdd6626082b5138ae6e1d7b9d0634fe18
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 30 16:49:02 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Nov 30 16:49:02 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=844f073f
Removed missed line from merge conflict
---
pym/_emerge/Package.py | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index aac309a..e6fd33d 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -89,7 +89,6 @@ class Package(Task):
usealiases = self.root_config.settings._use_manager.getUseAliases(self)
self.iuse = self._iuse(self, iuse.split(), implicit_match,
usealiases, self.eapi)
->>>>>>> v2.2.0_alpha143
if (self.iuse.enabled or self.iuse.disabled) and \
not eapi_attrs.iuse_defaults:
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2012-11-30 16:58 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2012-11-30 16:58 UTC (permalink / raw
To: gentoo-commits
commit: e934977a22ae99293d4ec03415ddd28be6fee1c6
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 30 16:58:38 2012 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Fri Nov 30 16:58:38 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=e934977a
USE _metadata instead of metadata
---
pym/_emerge/Package.py | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index e6fd33d..5c9600e 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -79,13 +79,13 @@ class Package(Task):
implicit_match = self.root_config.settings._iuse_effective_match
else:
implicit_match = self.root_config.settings._iuse_implicit_match
- iuse = self.metadata["IUSE"]
+ iuse = self._metadata["IUSE"]
if 'force-multilib' in self.root_config.settings.features:
if self.built is False:
for multilib_abis in self.root_config.settings.get("MULTILIB_ABIS", '').split():
iuse += " multilib_abi_" + multilib_abis
iuse += " abiwrapper"
- self.metadata["IUSE"] = iuse
+ self._metadata["IUSE"] = iuse
usealiases = self.root_config.settings._use_manager.getUseAliases(self)
self.iuse = self._iuse(self, iuse.split(), implicit_match,
usealiases, self.eapi)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2013-08-04 20:23 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2013-08-04 20:23 UTC (permalink / raw
To: gentoo-commits
commit: 5f1b2875c4d9ceb6e6fad3db65147e7b5acc86a9
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 4 20:23:21 2013 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Aug 4 20:23:21 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=5f1b2875
Fix check for overlay content
---
pym/_emerge/actions.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index f3874ec..2e03b86 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -3620,8 +3620,8 @@ def run_action(emerge_config):
adjust_configs(emerge_config.opts, emerge_config.trees)
apply_priorities(emerge_config.target_config.settings)
- if 'force-multilib' in settings.features:
- if settings.get("NO_AUTO_FLAG", "") is "":
+ if 'force-multilib' in emerge_config.target_config.settings.features:
+ if emerge_config.target_config.settings.get("NO_AUTO_FLAG", "") is "":
writemsg_level(bad("!!! Failed to find vars from extra profile") + "\n",level=logging.ERROR, noiselevel=-1)
writemsg_level(bad("!!! Please make sure that you did follow the instructions and included the extra profile\n"),level=logging.ERROR, noiselevel=-1)
writemsg_level(bad("!!! http://git.overlays.gentoo.org/gitweb/?p=proj/multilib-portage.git;a=blob;f=doc/portage-multilib-instructions\n"),level=logging.ERROR, noiselevel=-1)
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2013-08-04 22:08 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2013-08-04 22:08 UTC (permalink / raw
To: gentoo-commits
commit: c7f1ce526769123ea129eb3ec0d5239aa1b5e610
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 4 22:07:49 2013 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Sun Aug 4 22:07:49 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=c7f1ce52
Add -multilib string to version output of emerge --info, on request by mgorny, patch by zmedico
---
pym/_emerge/actions.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index 2e03b86..8df1141 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -3019,7 +3019,7 @@ def getportageversion(portdir, _unused, profile, chost, vardb):
unameout=platform.release()+" "+platform.machine()
return "Portage %s (%s, %s, %s, %s)" % \
- (portage.VERSION, profilever, gccver, ",".join(libcver), unameout)
+ (portage.VERSION + "-multilib", profilever, gccver, ",".join(libcver), unameout)
def git_sync_timestamps(portdb, portdir):
"""
^ permalink raw reply related [flat|nested] 45+ messages in thread
* [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/
@ 2018-05-23 12:46 Thomas Sachau
0 siblings, 0 replies; 45+ messages in thread
From: Thomas Sachau @ 2018-05-23 12:46 UTC (permalink / raw
To: gentoo-commits
commit: 370a5832a66713a17ff010f137fda7cfc7a26fe3
Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
AuthorDate: Wed May 23 12:46:05 2018 +0000
Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
CommitDate: Wed May 23 12:46:05 2018 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=370a5832
Fix build
pym/_emerge/Package.py | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py
index 2be526471..e73c9d9d1 100644
--- a/pym/_emerge/Package.py
+++ b/pym/_emerge/Package.py
@@ -95,11 +95,11 @@ class Package(Task):
implicit_match = db._iuse_implicit_cnstr(self.cpv, self._metadata)
if 'force-multilib' in self.root_config.settings.features:
- if self.built is False:
- for multilib_abis in self.root_config.settings.get("MULTILIB_ABIS", '').split():
- iuse += " multilib_abi_" + multilib_abis
- iuse += " abiwrapper"
- self._metadata["IUSE"] = iuse
+ iuse = self._metadata["IUSE"]
+ for multilib_abis in self.root_config.settings.get("MULTILIB_ABIS", '').split():
+ iuse += " multilib_abi_" + multilib_abis
+ iuse += " abiwrapper"
+ self._metadata["IUSE"] = iuse
usealiases = self.root_config.settings._use_manager.getUseAliases(self)
self.iuse = self._iuse(self, self._metadata["IUSE"].split(),
implicit_match, usealiases, self.eapi)
^ permalink raw reply related [flat|nested] 45+ messages in thread
end of thread, other threads:[~2018-05-23 12:46 UTC | newest]
Thread overview: 45+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-06 13:09 [gentoo-commits] proj/portage:multilib commit in: pym/_emerge/ Thomas Sachau
-- strict thread matches above, loose matches on Subject: below --
2018-05-23 12:46 Thomas Sachau
2013-08-04 22:08 Thomas Sachau
2013-08-04 20:23 Thomas Sachau
2012-11-30 16:58 Thomas Sachau
2012-11-30 16:49 Thomas Sachau
2012-10-22 9:43 Thomas Sachau
2012-10-22 9:24 Thomas Sachau
2012-09-17 20:15 Thomas Sachau
2012-07-19 21:03 Zac Medico
2012-02-26 16:27 Thomas Sachau
2012-02-26 16:27 Thomas Sachau
2012-02-26 16:27 Thomas Sachau
2012-02-26 16:27 Thomas Sachau
2012-02-26 16:27 Thomas Sachau
2012-02-18 16:14 Thomas Sachau
2011-11-15 20:20 Thomas Sachau
2011-10-23 11:42 Thomas Sachau
2011-10-23 11:05 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:10 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
2011-02-06 13:09 Thomas Sachau
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox