]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commit
rootfs_xxx.bbclass: fix bitbake -S hashes mismatch error
authorRobert Yang <liezhi.yang@windriver.com>
Thu, 7 Mar 2013 03:26:13 +0000 (11:26 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 12 Mar 2013 18:33:27 +0000 (18:33 +0000)
commitcdd103823ecf1d6df5ac9855a855e7302773b702
treeb8818e4ac4c623007455f6f23d4dc77d571d77df
parentd6a06cf42a26dc2c7ec26d61b4a50d251daddd84
rootfs_xxx.bbclass: fix bitbake -S hashes mismatch error

The bitbake -S <image> has errors, e.g.:

NOTE: Reparsing files to collect dependency data
ERROR: Bitbake's cached basehash does not match the one we just generated
(/buildarea/lyang1/poky/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)!
ERROR: The mismatched hashes were 8e44f2296f2d6cdf2ccb0236910ef59b and
46357d5e36713646b47b0fe2233e3c8c

This is caused by the BUILDNAME which is defined in cooker.py:

if not self.configuration.data.getVar("BUILDNAME"):
    self.configuration.data.setVar("BUILDNAME", time.strftime('%Y%m%d%H%M'))

The time changes during the first parsing and reparsing, so there is the
error, we already have:

do_rootfs[vardepsexclude] += "BUILDNAME"

but what we need is
rootfs_xxx_do_rootfs[vardepsexclude] +=  "BUILDNAME"

The do_rootfs doesn't depend on BUILDNAME directly, but indirectly, the
depends tree is:

do_rootfs -> rootfs_xxx_do_rootfs -> BUILDNAME

So add BUILDNAME to rootfs_xxx_do_rootfs[vardepsexclude] would fix the
problem.

[YOCTO #3299]

(From OE-Core rev: 9d039f482c84dde264564fde93f39764113cc0d3)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/rootfs_deb.bbclass
meta/classes/rootfs_ipk.bbclass
meta/classes/rootfs_rpm.bbclass