From a40c1905e53d3af20df6d4f940e1235551a6840e Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 13 Jun 2011 14:50:04 -0700 Subject: [PATCH] pkg_use_enabled: return early for built pkgs Built/installed packages have frozen USE settings, so there's no sense in considering them for autounmask USE config changes. They'll simply be rejected by select_package, and an unbuilt ebuild will be selected instead. This will fix bug 371423 by avoiding unnecessary use_reduce calls on the deps of installed packages. --- pym/_emerge/depgraph.py | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 9ce199b..da48f2a 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -3440,6 +3440,8 @@ class depgraph(object): Example: target_use = { "foo": True, "bar": False } The flags target_use must be in the pkg's IUSE. """ + if pkg.built: + return pkg.use.enabled needed_use_config_change = self._dynamic_config._needed_use_config_changes.get(pkg) if target_use is None: @@ -3739,7 +3741,7 @@ class depgraph(object): if atom.use: matched_pkgs_ignore_use.append(pkg) - if allow_use_changes: + if allow_use_changes and not pkg.built: target_use = {} for flag in atom.use.enabled: target_use[flag] = True -- 1.7.5.3