diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-10-19 03:37:16 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-10-19 03:37:16 +0000 |
commit | 077024f43c3c482b2eb1c70e2e1ba414c9ffcff8 (patch) | |
tree | d2d180116e36789bdc65e8f389de70312a79b9b5 /pym | |
parent | d47feac9df36d524568f24e291123501117aab13 (diff) | |
download | portage-077024f43c3c482b2eb1c70e2e1ba414c9ffcff8.tar.gz portage-077024f43c3c482b2eb1c70e2e1ba414c9ffcff8.tar.bz2 portage-077024f43c3c482b2eb1c70e2e1ba414c9ffcff8.zip |
Add a --use-ebuild-visibility option, for using unbuilt ebuild metadata
in visibility checks for built ebuilds. Thanks to Sebastian Mingramm (few)
for reporting the problem and testing the patch. (trunk r14665)
svn path=/main/branches/2.1.7/; revision=14685
Diffstat (limited to 'pym')
-rw-r--r-- | pym/_emerge/depgraph.py | 4 | ||||
-rw-r--r-- | pym/_emerge/help.py | 6 | ||||
-rw-r--r-- | pym/_emerge/main.py | 12 |
3 files changed, 21 insertions, 1 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 2236bff0e..d0151bfab 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -2319,6 +2319,8 @@ class depgraph(object): reinstall = False noreplace = "--noreplace" in self._frozen_config.myopts avoid_update = "--update" not in self._frozen_config.myopts + use_ebuild_visibility = self._frozen_config.myopts.get( + '--use-ebuild-visibility', 'n') != 'n' # Behavior of the "selective" parameter depends on # whether or not a package matches an argument atom. # If an installed package provides an old-style @@ -2392,7 +2394,7 @@ class depgraph(object): # instances (installed or binary). # If --usepkgonly is enabled, assume that # the ebuild status should be ignored. - if usepkgonly: + if not use_ebuild_visibility and usepkgonly: if installed and \ pkgsettings._getMissingKeywords( pkg.cpv, pkg.metadata): diff --git a/pym/_emerge/help.py b/pym/_emerge/help.py index 3f18b5429..bf8a7d526 100644 --- a/pym/_emerge/help.py +++ b/pym/_emerge/help.py @@ -535,6 +535,12 @@ def help(myopts, havecolor=1): print(" a package's dependencies follow the package. Only really useful") print(" in combination with --emptytree, --update or --deep.") print() + print(" " + green("--use-ebuild-visibility") + "[=%s]" % turquoise("n")) + desc = "Use unbuilt ebuild metadata for visibility " + \ + "checks on built packages." + for line in wrap(desc, desc_width): + print(desc_indent + line) + print() print(" "+green("--usepkg")+ "[=%s]" % turquoise("n") + " ("+green("-k")+" short option)") print(" Tell emerge to use binary packages (from $PKGDIR) if they are") print(" available, thus possibly avoiding some time-consuming compiles.") diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py index 5007ecfef..c09eef800 100644 --- a/pym/_emerge/main.py +++ b/pym/_emerge/main.py @@ -313,6 +313,7 @@ def insert_optional_args(args): '--root-deps' : ('rdeps',), '--select' : ('n',), '--selective' : ('n',), + "--use-ebuild-visibility": ('n',), '--usepkg' : ('n',), '--usepkgonly' : ('n',), } @@ -550,6 +551,12 @@ def parse_opts(tmpcmdline, silent=False): "choices" : ("True", "n") }, + "--use-ebuild-visibility": { + "help" : "use unbuilt ebuild metadata for visibility checks on built packages", + "type" : "choice", + "choices" : ("True", "n") + }, + "--usepkg": { "shortopt" : "-k", "help" : "use binary packages", @@ -693,6 +700,11 @@ def parse_opts(tmpcmdline, silent=False): myoptions.load_average = load_average + if myoptions.use_ebuild_visibility in ("True",): + myoptions.use_ebuild_visibility = True + else: + myoptions.use_ebuild_visibility = None + if myoptions.usepkg in ("True",): myoptions.usepkg = True else: |