diff options
author | 2012-05-06 18:05:31 +0100 | |
---|---|---|
committer | 2012-09-13 08:28:16 +0200 | |
commit | 6411e547f7ca417ce12c05289211ec96b2d11042 (patch) | |
tree | 63d8b37cf8d9496cc1ecace0e13852b42e878615 /dependencies.tex | |
parent | Profile IUSE injection is in EAPI 5. (diff) | |
download | pms-6411e547f7ca417ce12c05289211ec96b2d11042.tar.gz pms-6411e547f7ca417ce12c05289211ec96b2d11042.tar.bz2 pms-6411e547f7ca417ce12c05289211ec96b2d11042.zip |
EAPI 5 supports ?? ( ) groups
See bug 354219
Diffstat (limited to 'dependencies.tex')
-rw-r--r-- | dependencies.tex | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/dependencies.tex b/dependencies.tex index 8f78f3d..ff12299 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -66,6 +66,12 @@ be surrounded on both sides by whitespace, except at the start and end of the st parenthesis. More formally: \t{exactly-one-of ::= '\textasciicircum\textasciicircum' whitespace '(' whitespace (item whitespace)* ')'}. Permitted in \t{REQUIRED\_USE}. +\item \featurelabel{at-most-one-of} An at-most-one-of group, which consists of the string \t{??}, + followed by whitespace, followed by an open parenthesis, followed by whitespace, followed by + zero or more of (a dependency item of any kind followed by whitespace), followed by a close + parenthesis. More formally: \t{exactly-one-of ::= '??' whitespace '(' whitespace (item + whitespace)* ')'}. Permitted in \t{REQUIRED\_USE} in EAPIs listed in + table~\ref{tab:at-most-one-of-table} as supporting \t{REQUIRED\_USE ??}\ groups. \item A use-conditional group, which consists of an optional exclamation mark, followed by a use flag name, followed by a question mark, followed by whitespace, followed by an open parenthesis, followed by whitespace, followed by zero or more of (a dependency item @@ -93,6 +99,23 @@ In particular, note that whitespace is not optional. \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{5} +\begin{centertable}{EAPIs supporting \t{REQUIRED\_USE ??}\ groups} \label{tab:at-most-one-of-table} + \begin{tabular}{ l l } + \toprule + \multicolumn{1}{c}{\textbf{EAPI}} & + \multicolumn{1}{c}{\textbf{Supports \t{REQUIRED\_USE ??}\ groups?}} \\ + \midrule + \t{0} & No \\ + \t{1} & No \\ + \t{2} & No \\ + \t{3} & No \\ + \t{4} & No \\ + \t{5} & Yes \\ + \bottomrule + \end{tabular} +\end{centertable} + \subsection{All-of Dependency Specifications} In an all-of group, all of the child elements must be matched. @@ -126,6 +149,16 @@ In an exactly-one-of group, exactly one immediate child element must be matched. An empty exactly-one-of group counts as being matched. +\subsection{At-most-one-of Dependency Specifications} + +Any use-conditional group that is an immediate child of an at-most-one-of group, if not enabled +(disabled for an exclamation mark prefixed use flag name), is not considered a member of the +at-most-one-of group for match purposes. + +In an at-most-one-of group, at most one immediate child element must be matched. + +An empty at-most-one-of group counts as being matched. + \subsection{Package Dependency Specifications} A package dependency can be in one of the following base formats. A package manager must warn or |