]> code.ossystems Code Review - openembedded-core.git/commit
kernel.bbclass: let do_deploy depend on do_packagedata
authorRobert Yang <liezhi.yang@windriver.com>
Thu, 1 Dec 2016 08:12:38 +0000 (00:12 -0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 7 Dec 2016 10:36:12 +0000 (10:36 +0000)
commit64148a30397b8c92414262c0d414d103d2b97ddd
treec6af077b37a1221c0677d1a070d6a072bfbc7a4d
parent59c724db5628775e77fa090183897c6ae0fdf9a8
kernel.bbclass: let do_deploy depend on do_packagedata

The do_deploy runs depmodwrapper which requires
pkgdata/kernel-depmod/kernel-abiversion, which is generated by
PACKAGEFUNCS. So we need let do_deploy depend on do_packagedata.

This can fix the errors which happens sometimes when kernel upgrades:
DEBUG: Executing shell function do_deploy
Error: Kernel version 4.8.8-WR9.0.0.1_standard does not match kernel-abiversion (4.8.8-WR9.0.0.0_standard)

And we only see this error when kernel upgrades and rebuild, but doesn't
see it in a normal build, this is becuase depmodwrapper doesn't exit
error when kernel-depmod/kernel-abiversion doesn't exit, it just prints
an error which should go into log.do_deploy:
if [ ! -r /path/to/sysroots/qemux86-64/pkgdata/kernel-depmod/kernel-abiversion ]; then
    echo "Unable to read: /path/to/sysroots/qemux86-64/pkgdata/kernel-depmod/kernel-abiversion" >&2
else
    [foo]
fi

We can see that there is no "exit 1", I guess it was designed to let it
can run without kernel-abiversion

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/kernel.bbclass