Date
1 - 2 of 2
[meta-zephyr][PATCH 1/2] zephyr-core/zephyr-kernel: Refactor zephyr-image and zephyr-sample
Peter Hoyes
From: Peter Hoyes <Peter.Hoyes@...>
At the moment: * zephyr-image.inc depends on zephyr-sample.inc, which doesn't really make sense. * zephyr-image.inc inherits testimage, even though it may not be required. * Out-of-tree Zephyr apps have to include zephyr-sample.inc in order to deploy the binaries, which is confusingly named if your application isn't a "sample". Do some minor refactoring to untangle the above. Now: * zephyr-sample.inc depends on zephyr-image.inc * zephyrtest.bbclass inherits testimage. * Out-of-tree Zephyr apps can include zephyr-image.inc Additionally, remove QEMU_BIN_PATH, as recent Zephyr versions now pick up the QEMU binary automatically from PATH. Signed-off-by: Peter Hoyes <Peter.Hoyes@...> --- meta-zephyr-core/classes/zephyrtest.bbclass | 4 ++-- .../zephyr-kernel/zephyr-image.inc | 23 +++++++++++++++---- .../zephyr-kernel/zephyr-sample.inc | 23 +------------------ 3 files changed, 21 insertions(+), 29 deletions(-) diff --git a/meta-zephyr-core/classes/zephyrtest.bbclass b/meta-zephyr-co= re/classes/zephyrtest.bbclass index aa48e6c..d4fc75e 100644 --- a/meta-zephyr-core/classes/zephyrtest.bbclass +++ b/meta-zephyr-core/classes/zephyrtest.bbclass @@ -1,4 +1,4 @@ -inherit rootfs-postcommands +inherit rootfs-postcommands testimage =20 python zephyrtest_virtclass_handler () { variant =3D e.data.getVar("BBEXTENDVARIANT", True) @@ -14,7 +14,7 @@ python zephyrtest_virtclass_handler () { e.data.setVar("ZEPHYR_IMAGENAME", pn + ".elf") =20 # Most tests for Zephyr 1.6 are in the "legacy" folder - e.data.setVar("ZEPHYR_SRC_DIR", "tests/kernel/" + variant) + e.data.setVar("ZEPHYR_SRC_DIR", "${ZEPHYR_BASE}/tests/kernel/" + var= iant) e.data.setVar("ZEPHYR_MAKE_OUTPUT", "zephyr.elf") =20 # Allow to build using both foo-some_test form as well as foo-some-t= est diff --git a/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-image.i= nc b/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-image.inc index f4c9db1..fc8c077 100644 --- a/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-image.inc +++ b/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-image.inc @@ -1,9 +1,22 @@ -require zephyr-sample.inc -inherit testimage +require zephyr-kernel-src.inc +require zephyr-kernel-common.inc +inherit deploy =20 -QEMU_BIN_PATH =3D "${STAGING_BINDIR_NATIVE}" +OECMAKE_SOURCEPATH =3D "${ZEPHYR_SRC_DIR}" =20 -OECMAKE_SOURCEPATH =3D "${ZEPHYR_BASE}/${ZEPHYR_SRC_DIR}" +do_install[noexec] =3D "1" + +do_deploy() { + install -D ${B}/zephyr/${ZEPHYR_MAKE_OUTPUT} ${DEPLOYDIR}/${PN}.elf =20 + if [ -f ${B}/zephyr/${ZEPHYR_MAKE_BIN_OUTPUT} ] + then + install -D ${B}/zephyr/${ZEPHYR_MAKE_BIN_OUTPUT} ${DEPLOYDIR}/${PN= }.bin + fi + + if [ -f ${B}/zephyr/${ZEPHYR_MAKE_EFI_OUTPUT} ] + then + install -D ${B}/zephyr/${ZEPHYR_MAKE_EFI_OUTPUT} ${DEPLOYDIR}/${PN= }.efi + fi +} addtask deploy after do_compile -do_install[noexec] =3D "1" diff --git a/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-sample.= inc b/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-sample.inc index 10c25c5..5f6dea9 100644 --- a/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-sample.inc +++ b/meta-zephyr-core/recipes-kernel/zephyr-kernel/zephyr-sample.inc @@ -1,22 +1 @@ -require zephyr-kernel-src.inc -require zephyr-kernel-common.inc -inherit deploy - -OECMAKE_SOURCEPATH =3D "${ZEPHYR_SRC_DIR}" - -do_install[noexec] =3D "1" - -do_deploy () { - install -D ${B}/zephyr/${ZEPHYR_MAKE_OUTPUT} ${DEPLOYDIR}/${PN}.elf - - if [ -f ${B}/zephyr/${ZEPHYR_MAKE_BIN_OUTPUT} ] - then - install -D ${B}/zephyr/${ZEPHYR_MAKE_BIN_OUTPUT} ${DEPLOYDIR}/${PN= }.bin - fi - - if [ -f ${B}/zephyr/${ZEPHYR_MAKE_EFI_OUTPUT} ] - then - install -D ${B}/zephyr/${ZEPHYR_MAKE_EFI_OUTPUT} ${DEPLOYDIR}/${PN= }.efi - fi -} -addtask deploy after do_compile +require zephyr-image.inc --=20 2.25.1 |
|
Jon Mason
On Fri, Sep 30, 2022 at 05:34:36PM +0100, Peter Hoyes wrote:
From: Peter Hoyes <Peter.Hoyes@...>Series verified in a batch CI job (on top of the other submitted patches). See https://gitlab.com/jonmason00/meta-zephyr/-/pipelines/655489776 Tested-by: Jon Mason <jon.mason@...> --- |
|