[bitbake-devel] [PATCH v2] parse/ConfHander/BBHandler/utils: Fix cache dependency bugs

Richard Purdie richard.purdie at linuxfoundation.org
Fri Nov 29 23:31:51 UTC 2013


On Sat, 2013-11-30 at 00:27 +0100, Martin Jansa wrote:
> On Fri, Nov 29, 2013 at 11:15:56PM +0000, Richard Purdie wrote:
> > 
> > Currently bitbake only adds files to its dependency list if they exist.
> > If you add 'include foo.inc' to your recipe and the file doesn't exist,
> > then later you add the file, the cache will not be invalidated.
> > 
> > This leads to another bug which is that if files don't exist and then
> > you add them and they should be found first due to BBPATH, again the
> > cache won't invalidate.
> > 
> > This patch adds in tracking of files we check for the existence of so
> > that if they are added later, the cache correctly invalidates. This
> > necessitated a new version of bb.utils.which which returns a list of
> > files tested for.
> > 
> > The patch also adds in checks for duplicate file includes and for now
> > prints a warning about this. That will likely become a fatal error at
> > some point since its never usually desired to include a file twice.
> > 
> > The same issue is also fixed for class inheritance. Now when a class 
> > is added which would be found in the usual search path, it will cause
> > the cache to be invalidated.
> > 
> > Unfortunately this is old code in bitbake and the patch isn't the
> > neatest since we have to work within that framework.
> 
> Does it depend on any other patches? Even after removing extra bitbake/
> prefix (I guess the patch is for poky not bitbake repo) it doesn't apply
> in current master:
> 
> error: patch failed: lib/bb/parse/parse_py/ConfHandler.py:82
> error: lib/bb/parse/parse_py/ConfHandler.py: patch does not apply
> Patch failed at 0001 parse/ConfHander/BBHandler/utils: Fix cache
> dependency bugs
> The copy of the patch that failed is found in:
>    /OE/bitbake/.git/rebase-apply/patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> 

Sorry, I screwed up the patch I sent out. The right version is applied
in master-next of bitbake though:

http://git.openembedded.org/bitbake/commit/?h=master-next&id=78d285871e4b8c54ccc4602d571e85f922e37ccd

Cheers,

Richard




More information about the bitbake-devel mailing list