[OE-core] [PATCH 1/1] meta/conf/bitbake.conf: add STAMPCLEAN to BB_HASHBASE_WHITELIST
Robert Yang
liezhi.yang at windriver.com
Tue Mar 25 03:18:39 UTC 2014
On 03/25/2014 10:20 AM, Chris Larson wrote:
> On Mon, Mar 24, 2014 at 7:18 PM, Robert Yang <liezhi.yang at windriver.com>wrote:
>
>> The problem is that do_configure.sigdata depends on STAMPS_DIR because:
>>
>> do_configure -> STAMPCLEAN -> STAMPS_DIR
>>
>> this will make the sigdata generated by "STAMPS_DIR=/tmp/stps bitbake -S
>> recipe" doesn't match the ones in our build dir, but it should. We can
>> add STAMPS_DIR or STAMPCLEAN to BB_HASHBASE_WHITELIST to fix the
>> problem, but we can't add STAMPS_DIR since once it is in
>> BB_HASHBASE_WHITELIST, the "STAMPS_DIR=/tmp/stps bitbake -S recipe"
>> would not run again.
>>
>> [YOCTO $6031]
>>
>> Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
>>
>
> Oh good, I was hoping someone would dig into this, hadn't had the time, but
> kept noticing STAMPS_DIR was leaking in, in the bitbake-whatchanged output
> :) Nice work.
>
Thanks, the bitbake-whatchanged will work with another base-files fix now.
The left problem is that:
$ bitbake-whatchanged core-image-sato-sdk
=== Newly added tasks: (3 tasks)
core-image-sato-sdk: do_compile do_configure do_install
Nothing should be run in fact, the root cause is that "bitbake -S recipe"
generates the sigdata file for all the tasks including noexec one, but
"bitbake recipe" doesn't generate stamps for do_populate_sysroot's
dependencies tasks when:
do_populate_sysroot[noexec] = "1"
We also have these set for a image recipe:
[snip]
do_install[noexec] = "1"
do_compile[noexec] = "1"
do_configure[noexec] = "1"
[snip]
If we remove 'do_populate_sysroot[noexec] = "1"' and keep the others,
then "bitbake recipe" will generate stamps for all the tasks including
do_install, do_compile and do_configure though they have noexec set.
I've tried to dig lib/bb/build.py, lib/bb/siggen.py and lib/bb/runqueue.py,
but didn't figure it out.
For bitbake-whatchanged, maybe we can enhance the "bitbake -S" in YP 1.7
to do the similar thing since the later one can handle the sstate tasks
(and covered task) better.
// Robert
More information about the Openembedded-core
mailing list