[bitbake-devel] [PATCH 00/11] bitbake-diffsigs fixes/improvements
Patrick Ohly
patrick.ohly at intel.com
Fri Apr 7 07:56:19 UTC 2017
On Fri, 2017-04-07 at 09:52 +1200, Paul Eggleton wrote:
> As part of an effort to add task signature recording and comparison to
> buildhistory in OE, I went digging into bitbake-diffsigs and the code
> that supports it and discovered that unfortunately it had a number of
> bugs - in particular the -t option despite being around for a while and
> having numerous band-aids applied in the past still wasn't really
> working properly.
I'm not sure whether it is working now, even with your changes. My
test, using poky master and your bitbake branch:
1. bitbake -c cleansstate m4
2. bitbake m4
3. patch m4:
diff --git a/meta/recipes-devtools/m4/m4_1.4.18.bb
b/meta/recipes-devtools/m4/m4_1.4.18.bb
index b12c0adf3ad..0a8e9c10778 100644
--- a/meta/recipes-devtools/m4/m4_1.4.18.bb
+++ b/meta/recipes-devtools/m4/m4_1.4.18.bb
@@ -1,3 +1,7 @@
require m4-${PV}.inc
+do_install_append () {
+ echo hello world
+}
+
BBCLASSEXTEND = "nativesdk"
4. bitbake m4
5. bitbake-diffsigs -t m4 do_build
=> ERROR: No sigdata files found matching m4 do_build
There is one file for do_build in tmp/stamps/i586-poky-linux/m4 and
several for do_install:
$ ls -l tmp/stamps/i586-poky-linux/m4/*do_build* tmp/stamps/i586-poky-linux/m4/*do_install*
-rw-r--r-- 1 pohly pohly 0 Apr 7 09:53 tmp/stamps/i586-poky-linux/m4/1.4.18-r0.do_build.aa7d33bbb2dfef67ef3ca1b5d3f2cde1
-rw-r--r-- 1 pohly pohly 0 Apr 7 09:53 tmp/stamps/i586-poky-linux/m4/1.4.18-r0.do_install.a0954ae23d8da50c4af22f719255411f
-rw-r--r-- 1 pohly pohly 20573 Apr 7 09:52 tmp/stamps/i586-poky-linux/m4/1.4.18-r0.do_install.sigdata.464e707d80ec982fb5b0c50a6526f05a
-rw-r--r-- 1 pohly pohly 19610 Apr 7 09:53 tmp/stamps/i586-poky-linux/m4/1.4.18-r0.do_install.sigdata.a0954ae23d8da50c4af22f719255411f
bitbake-diffsigs does not fail for do_install, but does not print
anything either (= no output at all from "bitbake-diffsigs -t m4
do_install").
Hmm, does it pick the right files to compare?
$ bitbake-diffsigs -d -t m4 do_install
DEBUG: Signature file (previous): /fast/build/poky/x86/sstate-cache/a0/sstate:m4:i586-poky-linux:1.4.18:r0:i586:3:a0954ae23d8da50c4af22f719255411f_install.tgz.siginfo
DEBUG: Signature file (latest): /fast/build/poky/x86/tmp/stamps/i586-poky-linux/m4/1.4.18-r0.do_install.sigdata.a0954ae23d8da50c4af22f719255411f
Am I using the tool incorrectly or are my expectations wrong?
My expectation was that "bitbake-diffsigs -t m4 do_build" would tell me
that m4 was rebuilt because some tasks that it depends on changed, and
then I would drill down to those tasks, eventually arriving at
do_install.
--
Best Regards, Patrick Ohly
The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.
More information about the bitbake-devel
mailing list