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 (From OE-Core rev: 64148a30397b8c92414262c0d414d103d2b97ddd) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
a46cebeaf9
commit
e61b6e96b0
|
@ -630,6 +630,6 @@ do_deploy[cleandirs] = "${DEPLOYDIR}"
|
|||
do_deploy[dirs] = "${DEPLOYDIR} ${B}"
|
||||
do_deploy[prefuncs] += "package_get_auto_pr"
|
||||
|
||||
addtask deploy after do_populate_sysroot
|
||||
addtask deploy after do_populate_sysroot do_packagedata
|
||||
|
||||
EXPORT_FUNCTIONS do_deploy
|
||||
|
|
Loading…
Reference in New Issue