Message ID | 20220210115201.1729034-1-ross.burton@arm.com |
---|---|
State | Accepted, archived |
Commit | 1c90b27d2c65cfb4f9debf0272820b6a95942f76 |
Headers | show |
Series | kernel: make kernel-base recommend kernel-image, not depend | expand |
On Thu, Feb 10, 2022 at 6:52 AM Ross Burton <ross@burtonini.com> wrote: > > As kernel modules depend on the base kernel package, and the base kernel > recipe depends on the kernel image, it's impossible to build file system > images which contain kernel modules but not the kernel itself, such as > an initramfs. > > Change the RDEPENDS to RRECOMMENDS so that the disk images can set > PACKAGE_EXCLUDE = "kernel-image-*" to remove the kernel. > Looks good to me. Acked-by: Bruce Ashfield <bruce.ashfield@gmail.com> > Signed-off-by: Ross Burton <ross.burton@arm.com> > --- > meta/classes/kernel.bbclass | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass > index 880ee614064..4f304eb9c7a 100644 > --- a/meta/classes/kernel.bbclass > +++ b/meta/classes/kernel.bbclass > @@ -655,7 +655,7 @@ FILES:${KERNEL_PACKAGE_NAME}-modules = "" > RDEPENDS:${KERNEL_PACKAGE_NAME} = "${KERNEL_PACKAGE_NAME}-base (= ${EXTENDPKGV})" > # Allow machines to override this dependency if kernel image files are > # not wanted in images as standard > -RDEPENDS:${KERNEL_PACKAGE_NAME}-base ?= "${KERNEL_PACKAGE_NAME}-image (= ${EXTENDPKGV})" > +RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base ?= "${KERNEL_PACKAGE_NAME}-image (= ${EXTENDPKGV})" > PKG:${KERNEL_PACKAGE_NAME}-image = "${KERNEL_PACKAGE_NAME}-image-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}" > RDEPENDS:${KERNEL_PACKAGE_NAME}-image += "${@oe.utils.conditional('KERNEL_IMAGETYPE', 'vmlinux', '${KERNEL_PACKAGE_NAME}-vmlinux (= ${EXTENDPKGV})', '', d)}" > PKG:${KERNEL_PACKAGE_NAME}-base = "${KERNEL_PACKAGE_NAME}-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}" > -- > 2.25.1 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#161611): https://lists.openembedded.org/g/openembedded-core/message/161611 > Mute This Topic: https://lists.openembedded.org/mt/89043865/1050810 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [bruce.ashfield@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 880ee614064..4f304eb9c7a 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -655,7 +655,7 @@ FILES:${KERNEL_PACKAGE_NAME}-modules = "" RDEPENDS:${KERNEL_PACKAGE_NAME} = "${KERNEL_PACKAGE_NAME}-base (= ${EXTENDPKGV})" # Allow machines to override this dependency if kernel image files are # not wanted in images as standard -RDEPENDS:${KERNEL_PACKAGE_NAME}-base ?= "${KERNEL_PACKAGE_NAME}-image (= ${EXTENDPKGV})" +RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base ?= "${KERNEL_PACKAGE_NAME}-image (= ${EXTENDPKGV})" PKG:${KERNEL_PACKAGE_NAME}-image = "${KERNEL_PACKAGE_NAME}-image-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}" RDEPENDS:${KERNEL_PACKAGE_NAME}-image += "${@oe.utils.conditional('KERNEL_IMAGETYPE', 'vmlinux', '${KERNEL_PACKAGE_NAME}-vmlinux (= ${EXTENDPKGV})', '', d)}" PKG:${KERNEL_PACKAGE_NAME}-base = "${KERNEL_PACKAGE_NAME}-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}"
As kernel modules depend on the base kernel package, and the base kernel recipe depends on the kernel image, it's impossible to build file system images which contain kernel modules but not the kernel itself, such as an initramfs. Change the RDEPENDS to RRECOMMENDS so that the disk images can set PACKAGE_EXCLUDE = "kernel-image-*" to remove the kernel. Signed-off-by: Ross Burton <ross.burton@arm.com> --- meta/classes/kernel.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)