From bd367143c6b97c5e618451cfdde63babfaaaf2c0 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Tue, 23 Jan 2007 20:55:51 +0000 Subject: Add new ** for package.keywords token to bypass keyword visibility layer (trunk r5758:5760) svn path=/main/branches/2.1.2/; revision=5762 --- NEWS | 5 +++-- man/portage.5 | 26 +++++++++++++++++--------- pym/portage.py | 4 +++- 3 files changed, 23 insertions(+), 12 deletions(-) diff --git a/NEWS b/NEWS index c24b5ecc3..436f9895d 100644 --- a/NEWS +++ b/NEWS @@ -1,8 +1,9 @@ News (mainly features/major bug fixes) portage-2.1.2 ------------- +------------- +* Add ** as new token for package.keywords to bypass the keyword visibility layer * Ebuilds support default USE flags via +flag in IUSE. * New-style virtuals are now usable for packages that depend on themselves for bootstrap. @@ -32,7 +33,7 @@ portage-2.1.2 * FEATURES="test" automatically implies USE="test". portage-2.1.1 ------------- +------------- * Profiles support use.force, package.use.force, and package.use.mask files. diff --git a/man/portage.5 b/man/portage.5 index 66547521e..4b19dc909 100644 --- a/man/portage.5 +++ b/man/portage.5 @@ -384,13 +384,9 @@ Per\-package KEYWORDS. Useful for mixing unstable packages in with a normally stable system or vice versa. This will allow ACCEPT_KEYWORDS to be augmented for a single package. -.nf -\fINote:\fR There are two special KEYWORDS to help out here: -\fB*\fR Match any stable KEYWORD -\fB~*\fR Match any unstable KEYWORD - .I Format: -\- comments begin with # +.nf +\- comment lines begin with # (no inline comments) \- one DEPEND atom per line followed by additional KEYWORDS \- lines without any KEYWORDS imply unstable host arch @@ -403,6 +399,17 @@ media\-video/mplayer \-~x86 net-analyzer/netcat .fi +.I Note: +.fi +In addition to the normal values from ACCEPT_KEYWORDS package.keywords supports +three special tokens: + +.nf +\fB*\fR package is visible if it is stable on any architecture +\fB~*\fR package is visible if it is in testing on any architecture +\fB**\fR package is always visible (KEYWORDS are ignored completely) +.fi + .I Additional Note: If you encounter the \fB-*\fR KEYWORD, this indicates that the package is known to be broken on all systems which are not otherwise listed in KEYWORDS. For @@ -410,10 +417,11 @@ example, a binary only package which is built for x86 will look like: games-fps/quake3-demo-1.11.ebuild:KEYWORDS="-* x86" -If you wish to accept this package anyways, then add \fB-*\fR to your +If you wish to accept this package anyways, then use one of the other keywords in your package.keywords like this: -games-fps/quake3-demo -* +games-fps/quake3-demo x86 + .TP .BR package.mask A list of package atoms to mask. Useful if specific versions of packages do @@ -422,7 +430,7 @@ versions earlier than 1.0.4496. No problem! .I Format: .nf -\- comments begin with # +\- comment lines begin with # (no inline comments) \- one DEPEND atom per line .fi diff --git a/pym/portage.py b/pym/portage.py index 9070a04d1..667066597 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -6146,6 +6146,8 @@ class portdbapi(dbapi): if matches: inc_pgroups = [] for x in pgroups: + # The -* special case should be removed once the tree + # is clean of KEYWORDS=-* crap if x != "-*" and x.startswith("-"): try: inc_pgroups.remove(x[1:]) @@ -6170,7 +6172,7 @@ class portdbapi(dbapi): hastesting = True elif gp[0] != "-": hasstable = True - if not match and ((hastesting and "~*" in pgroups) or (hasstable and "*" in pgroups)): + if not match and ((hastesting and "~*" in pgroups) or (hasstable and "*" in pgroups) or "**" in pgroups): match=1 if match and eapi_is_supported(eapi): newlist.append(mycpv) -- cgit v1.2.3-1-g7c22