[OE-core] [PATCH v2 1/2] uboot-sign: Refactor do_deploy prefunc to do_deploy_prepend
Daniel Klauer
daniel.klauer at gin.de
Thu Aug 29 15:31:33 UTC 2019
When inherited by the u-boot recipe (UBOOT_PN), uboot-sign.bbclass adds
a concat_dtb step, which places additional files into ${DEPLOYDIR}
before do_deploy.
The use of prefuncs for this prevents us from adding
do_deploy[cleandirs] = "${DEPLOYDIR}"
because that would remove the files produced by the prefunc.
Thus, it seems good to make concat_dtb a part of do_deploy, such that it
runs after removal of do_deploy's cleandirs. As before, care is taken to
not interfere with the kernel's do_deploy definition, since concat_dtb
was only needed for u-boot.
I tested this with poky, putting the following in local.conf:
UBOOT_SIGN_ENABLE = "1"
KERNEL_CLASSES = " kernel-fitimage "
KERNEL_IMAGETYPE = "fitImage"
and then doing
bitbake core-image-minimal
bitbake u-boot
It built successfully and concat_dtb was still called.
Signed-off-by: Daniel Klauer <daniel.klauer at gin.de>
---
meta/classes/uboot-sign.bbclass | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/meta/classes/uboot-sign.bbclass b/meta/classes/uboot-sign.bbclass
index 982ed46d01..713196df41 100644
--- a/meta/classes/uboot-sign.bbclass
+++ b/meta/classes/uboot-sign.bbclass
@@ -117,15 +117,16 @@ do_install_append() {
fi
}
+do_deploy_prepend_pn-${UBOOT_PN}() {
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" -a -n "${UBOOT_DTB_BINARY}" ]; then
+ concat_dtb
+ fi
+}
+
python () {
if d.getVar('UBOOT_SIGN_ENABLE') == '1' and d.getVar('PN') == d.getVar('UBOOT_PN') and d.getVar('UBOOT_DTB_BINARY'):
kernel_pn = d.getVar('PREFERRED_PROVIDER_virtual/kernel')
# Make "bitbake u-boot -cdeploy" deploys the signed u-boot.dtb
d.appendVarFlag('do_deploy', 'depends', ' %s:do_deploy' % kernel_pn)
-
- # kernerl's do_deploy is a litle special, so we can't use
- # do_deploy_append, otherwise it would override
- # kernel_do_deploy.
- d.appendVarFlag('do_deploy', 'prefuncs', ' concat_dtb')
}
--
2.17.1
More information about the Openembedded-core
mailing list