Bug 1935

Summary: BBMASK is not documented
Product: [Build System, Metadata & Runtime] BitBake Reporter: Gary Thomas <gary>
Component: bitbakeAssignee: Scott Rifenbark <srifenbark>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Low CC: jessica.zhang, poky.bs.watcher, poky.watcher
Version: unspecified   
Target Milestone: 1.2   
Hardware: x86   
OS: Multiple   
URL: http://git.yoctoproject.org/cgit.cgi/yocto-docs/commit/?id=4406a8b0b85ac15070e2ccb1c57ef9801827a7f7
Whiteboard: 27-jan-2012: Resolved/Fixed
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---

Description Gary Thomas 2012-01-26 07:11:47 UTC
The BBMASK variable is not documented in the bitbake user manual.

The only web page I could find which mentioned this at all was
  http://www.uv-ac.de/openembedded/openembedded-2.html
but that information is incorrect.

To get it to work, I had to use a more complete regular expression.
For example, to skip a collection of recipes, I ended up with this:
  BBMASK = ".*/meta-ti/recipes-misc/"
Comment 1 Richard Purdie 2012-01-26 12:31:51 UTC
Assigning to Scott, I agree we should document this in the reference manual. As a quick start to documenting it:

The BBMASK variable can be used to "hide" recipes (and .bbappend files) which match the expression and stops bitbake from seeing them at all. Matching files would therefore never get parsed or otherwise used by bitbake. The value is passed to python's regular expression compiler so see python's documentation for complete syntax information. The expression is compared against the full paths to the files.
Comment 2 Gary Thomas 2012-01-26 12:51:44 UTC
(In reply to comment #1)
> Assigning to Scott, I agree we should document this in the reference manual. As
> a quick start to documenting it:
> 
> The BBMASK variable can be used to "hide" recipes (and .bbappend files) which
> match the expression and stops bitbake from seeing them at all. Matching files
> would therefore never get parsed or otherwise used by bitbake. The value is
> passed to python's regular expression compiler so see python's documentation
> for complete syntax information. The expression is compared against the full
> paths to the files.

Great start, thanks.

Remember, examples are often the best part of documentation :-)
Comment 3 Scott Rifenbark 2012-01-26 13:42:30 UTC
Gary... Can I use that example you put in the original bug report?

So the following skips a collection of recipes:

  BBMASK = ".*/meta-ti/recipes-misc/"


Does this mean all recipes in meta-ti/recipes-misc ?  why wouldn't the path end with some sort of wildcarding thing like ".*/meta-ti/recipes-misc/*.bb"
Comment 4 Gary Thomas 2012-01-26 14:30:47 UTC
(In reply to comment #3)
> Gary... Can I use that example you put in the original bug report?
> 
> So the following skips a collection of recipes:
> 
>   BBMASK = ".*/meta-ti/recipes-misc/"
> 
> 
> Does this mean all recipes in meta-ti/recipes-misc ?  why wouldn't the path end
> with some sort of wildcarding thing like ".*/meta-ti/recipes-misc/*.bb"

It's searching for a regular expression match, which without any
anchors can be anywhere in the string.  Thus this expression will
match all of the recipes within that directory.  Your expression
works as well, but it would ignore .bbappend files which might
cause problems.
Comment 5 Scott Rifenbark 2012-01-27 10:24:13 UTC
Created a new glossary entry for the variable BBMASK.  I will likely add some usage stuff in Section 3.2.4 of the YP Reference Manual to supplement this entry.

See http://git.yoctoproject.org/cgit.cgi/yocto-docs/commit/?id=4406a8b0b85ac15070e2ccb1c57ef9801827a7f7 for the fix.