summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/Scheduler.py
diff options
context:
space:
mode:
authorSebastian Luther <SebastianLuther@gmx.de>2011-10-16 20:43:17 +0200
committerZac Medico <zmedico@gentoo.org>2011-10-16 11:58:12 -0700
commit2d78dcda11d753a54f821c7fb482b4bb3b511d0b (patch)
tree19ae2e382ef4e47f772f54f7b47008170a98dd82 /pym/_emerge/Scheduler.py
parentc9e22480dbb1767cc0e59eee5c1c3b358da7a078 (diff)
downloadportage-2d78dcda11d753a54f821c7fb482b4bb3b511d0b.tar.gz
portage-2d78dcda11d753a54f821c7fb482b4bb3b511d0b.tar.bz2
portage-2d78dcda11d753a54f821c7fb482b4bb3b511d0b.zip
Add --binpkg-exclude option
This options disables creation of binary packages, no matter what enabled it in the first place. See bug 386903.
Diffstat (limited to 'pym/_emerge/Scheduler.py')
-rw-r--r--pym/_emerge/Scheduler.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index 95cc104e0..3221b8620 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -96,7 +96,7 @@ class Scheduler(PollScheduler):
("merge", "jobs", "ebuild_locks", "fetch", "unpack"), prefix="")
class _build_opts_class(SlotObject):
- __slots__ = ("buildpkg", "buildpkgonly",
+ __slots__ = ("buildpkg", "buildpkg_exclude", "buildpkgonly",
"fetch_all_uri", "fetchonly", "pretend")
class _binpkg_opts_class(SlotObject):
@@ -159,8 +159,13 @@ class Scheduler(PollScheduler):
self._favorites = favorites
self._args_set = InternalPackageSet(favorites, allow_repo=True)
self._build_opts = self._build_opts_class()
+
for k in self._build_opts.__slots__:
setattr(self._build_opts, k, "--" + k.replace("_", "-") in myopts)
+ self._build_opts.buildpkg_exclude = InternalPackageSet( \
+ initial_atoms=" ".join(myopts.get("--buildpkg-exclude", [])).split(), \
+ allow_wildcard=True, allow_repo=True)
+
self._binpkg_opts = self._binpkg_opts_class()
for k in self._binpkg_opts.__slots__:
setattr(self._binpkg_opts, k, "--" + k.replace("_", "-") in myopts)