From 9b9ed8bbbbfaa4ceafbebe98e19a3031d71b8f46 Mon Sep 17 00:00:00 2001 From: Bertrand Marquis Date: Tue, 21 Apr 2020 11:48:55 +0100 Subject: [PATCH] arm-autonomy: Fix circle dependency in xen-dtb Solve circle dependency in xen-devicetree when initramfs is activated as compile depends on kernel:do_deploy and xen-devicetree is needed to create the arm-autonomy-host-image-minimal. Move all actions in do_deploy so that only do_deploy depends on the kernel do_deploy. Change-Id: I011df8f225550afa71b18a88e0ebe01debca0bed Issue-Id: SCM-949 Signed-off-by: Bertrand Marquis Reviewed-by: Diego Sueiro Signed-off-by: Jon Mason --- .../xen-devicetree/xen-devicetree.bb | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/meta-arm-autonomy/recipes-extended/xen-devicetree/xen-devicetree.bb b/meta-arm-autonomy/recipes-extended/xen-devicetree/xen-devicetree.bb index 0bb9defc..cef5f79e 100644 --- a/meta-arm-autonomy/recipes-extended/xen-devicetree/xen-devicetree.bb +++ b/meta-arm-autonomy/recipes-extended/xen-devicetree/xen-devicetree.bb @@ -29,7 +29,14 @@ inherit nopackages deploy DEPENDS += "dtc-native" -do_compile() { +do_configure[noexec] = "1" +do_compile[noexec] = "1" +do_install[noexec] = "1" + +do_deploy() { + if [ ! -f ${WORKDIR}/xen.dtsi.in ]; then + die "xen.dtsi.in does not exist" + fi cat ${WORKDIR}/xen.dtsi.in \ | sed -e "s,###XEN_DOM0_BOOTARGS###,${XEN_DEVICETREE_DOM0_BOOTARGS}," \ | sed -e "s,###XEN_XEN_BOOTARGS###,${XEN_DEVICETREE_XEN_BOOTARGS}," \ @@ -47,22 +54,19 @@ do_compile() { # Add external includes for inc in ${XEN_DEVICETREE_DTSI_MERGE}; do + if [ ! -f ${WORKDIR}/${inc} ]; then + die "Wrong file in XEN_DEVICETREE_DTSI_MERGE: ${WORKDIR}/${inc} does not exist" + fi echo "/include/ \"$inc\"" >> ${WORKDIR}/dom0-linux.dts done rdtbnoextn=`basename $dtbf ".dtb"` dtc -I dts -O dtb \ -o ${WORKDIR}/${rdtbnoextn}-xen.dtb ${WORKDIR}/dom0-linux.dts - done -} -do_compile[depends] += "${XEN_DEVICETREE_DEPEND}" - -do_deploy() { - # install generated dtbs - for dtbf in ${XEN_DEVICETREE_DTBS}; do - rdtbnoextn=`basename $dtbf ".dtb"` install -m 644 ${rdtbnoextn}-xen.dtb ${DEPLOYDIR}/. done } +do_deploy[depends] += "${XEN_DEVICETREE_DEPEND}" + +addtask deploy after do_install -addtask deploy before do_build after do_compile