keywords_check – parse the KEYWORDS variable and set up the status of the build.
Description
KEYWORDS
is a list of words, which describe supported configuration for the current package.
The list has the following format:
The words without modificators at the beginning represent restricting set of flags, which mark the working configuration. That means package works only when at least one of given restricting conditions is met. If none of given flags are met between words of AUSE or as a value of ANYARCH, ANYARCHMODE, ANYOS, ANYARCHCAP, ANYARCHENDIAN variables for current package, build is marked as skipped. Use this form with care, as it requires to explicitly mark the working configuration instead of separating the unneeded variants with known troubles.
If any of ANYARCH, ANYARCHMODE, ANYOS variables contains the value all, the build is passed, even if restricting set of flags has not been met. With the value all the build is still skipped, if given ~words have been met in AUSE.
Masking and restricting words can be listed in any order inside the variable.
The list has the following format:
- KEYWORDS="~nottested ~badarch itworked goodone ..."
The words without modificators at the beginning represent restricting set of flags, which mark the working configuration. That means package works only when at least one of given restricting conditions is met. If none of given flags are met between words of AUSE or as a value of ANYARCH, ANYARCHMODE, ANYOS, ANYARCHCAP, ANYARCHENDIAN variables for current package, build is marked as skipped. Use this form with care, as it requires to explicitly mark the working configuration instead of separating the unneeded variants with known troubles.
If any of ANYARCH, ANYARCHMODE, ANYOS variables contains the value all, the build is passed, even if restricting set of flags has not been met. With the value all the build is still skipped, if given ~words have been met in AUSE.
Masking and restricting words can be listed in any order inside the variable.
Note the build is interrupted not in the described method, but in a separate status_check(3). That is for ability to perform some actions before actual exit.
When data from other packages is retrieved (reading their deps, for example), the method may be used to filter out non-actual ones. For that it just should be called after load_dump.
Writing
The method does not write to any files.
Variables
The method uses any-api(7)
variables:
- KEYWORDS
- AUSE
- ANYOS
- ANYARCH
- ANYARCHMODE
- ANYARCHCAP
- ANYARCHENDIAN