[OE-core] Ensuring a task is re-ran when local.conf is updated

Paul Barker paul at paulbarker.me.uk
Fri May 2 16:43:43 UTC 2014


Hi all, I'm wondering if someone can help me debug this problem a
little as it's getting into the parts of bitbake I don't know very
well, in particular the determination of whether a task needs to
re-run or not.

I've attached a patch which adds code to do_package_write_ipk in
package_ipk.bbclass to split up the package feed if
IPK_HIERARCHICAL_FEED is set to "1". The commit message in the patch
explains why I'm doing this and if it all works I'll submit this to
master. The attached patch isn't ready for submission yet, it needs
more testing first.

As expected, if IPK_HIERARCHICAL_FEED is not set in local.conf, the
package feed is created in the old way. If IPK_HIERARCHICAL_FEED is
set to "1" in local.conf, the package feed is created in my modified
way. This was tested by building from scratch in each case, with no
sstate or tmp directory present.

However if IPK_HIERARCHICAL_FEED is changed in local.conf, the package
feed is not recreated. I can force do_write_package_ipk and the new
value is taken into account, but if I just do my usual 'bitbake
kitchen-sink' where kitchen-sink is a packagegroup which depends on
everything I want in the package feed, do_write_package_ipk is not
re-ran for any recipe.

Am I missing something here? Is it expected that this variable change
is detected and the relevant tasks re-executed? I know changing
variables like PREFERRED_PROVIDER_* in local.conf causes things to be
rebuilt, so why does that work and this not?

Cheers,

-- 
Paul Barker

Email: paul at paulbarker.me.uk
http://www.paulbarker.me.uk
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-package_ipk.bbclass-Support-hierarchical-feed.patch
Type: text/x-diff
Size: 3053 bytes
Desc: not available
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20140502/764cec8d/attachment-0002.bin>


More information about the Openembedded-core mailing list