diff mbox series

[meta-oe] vboxguestdrivers: Provide target kernel version

Message ID 20260803171813.318922-1-rouven.rastetter.ext@karlstorz.com
State Under Review
Headers show
Series [meta-oe] vboxguestdrivers: Provide target kernel version | expand

Commit Message

Rouven Rastetter Aug. 3, 2026, 5:18 p.m. UTC
The Makefile uses `uname` to determine the kernel version. We must
override this with the actual target kernel version.

The kernel version might be empty during parsing (e.g. when using
linux-dummy), therefore `or ''` is needed.
---
 .../vboxguestdrivers/vboxguestdrivers_7.2.14.bb               | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Khem Raj Aug. 3, 2026, 11:51 p.m. UTC | #1
On Mon, Aug 3, 2026 at 10:19 AM Rouven Rastetter via lists.openembedded.org
<rouven.rastetter.ext=karlstorz.com@lists.openembedded.org> wrote:

> The Makefile uses `uname` to determine the kernel version. We must
> override this with the actual target kernel version.
>
> The kernel version might be empty during parsing (e.g. when using
> linux-dummy), therefore `or ''` is needed.
> ---
>  .../vboxguestdrivers/vboxguestdrivers_7.2.14.bb               | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/meta-oe/recipes-support/vboxguestdrivers/
> vboxguestdrivers_7.2.14.bb b/meta-oe/recipes-support/vboxguestdrivers/
> vboxguestdrivers_7.2.14.bb
> index 18fda0393d..6a870c267c 100644
> --- a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.2.14.bb
> +++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.2.14.bb
> @@ -14,7 +14,7 @@ DEPENDS = "virtual/kernel"
>  # compiler-runtime deps needed to compile and link the userspace utility.
>  DEPENDS += "virtual/compilerlibs virtual/libc"
>
> -inherit module kernel-module-split
> +inherit linux-kernel-base module kernel-module-split
>

linux-kernel-base is deprecated in oe-core/master now. I would suggest to
use the new ways of using it via oe.kernel.get_version_file


>
>  COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm64)"
>
> @@ -32,7 +32,7 @@ S:task-patch = "${UNPACKDIR}/${BP}"
>  export VBOX_KBUILD_TARGET_ARCH = "${ARCH}"
>  export VBOX_KBUILD_TARGET_ARCH:x86-64 = "amd64"
>
> -EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build'
> KBUILD_VERBOSE=1 CC='${CC} ${DEBUG_PREFIX_MAP}
> -ffile-prefix-map=${STAGING_KERNEL_DIR}=${KERNEL_SRC_PATH}
> -ffile-prefix-map=${STAGING_KERNEL_BUILDDIR}=${KERNEL_SRC_PATH}'"
> +EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build'
> KERN_MAJ='${@(get_kernelversion_file('${STAGING_KERNEL_BUILDDIR}') or
> '').split('.')[0]}' KBUILD_VERBOSE=1 CC='${CC} ${DEBUG_PREFIX_MAP}
> -ffile-prefix-map=${STAGING_KERNEL_DIR}=${KERNEL_SRC_PATH}
> -ffile-prefix-map=${STAGING_KERNEL_BUILDDIR}=${KERNEL_SRC_PATH}'"
>
>  # otherwise 5.2.22 builds just vboxguest
>  MAKE_TARGETS = "all"
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#128696):
> https://lists.openembedded.org/g/openembedded-devel/message/128696
> Mute This Topic: https://lists.openembedded.org/mt/120580604/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [
> raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.2.14.bb b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.2.14.bb
index 18fda0393d..6a870c267c 100644
--- a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.2.14.bb
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.2.14.bb
@@ -14,7 +14,7 @@  DEPENDS = "virtual/kernel"
 # compiler-runtime deps needed to compile and link the userspace utility.
 DEPENDS += "virtual/compilerlibs virtual/libc"
 
-inherit module kernel-module-split
+inherit linux-kernel-base module kernel-module-split
 
 COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm64)"
 
@@ -32,7 +32,7 @@  S:task-patch = "${UNPACKDIR}/${BP}"
 export VBOX_KBUILD_TARGET_ARCH = "${ARCH}"
 export VBOX_KBUILD_TARGET_ARCH:x86-64 = "amd64"
 
-EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build' KBUILD_VERBOSE=1 CC='${CC} ${DEBUG_PREFIX_MAP} -ffile-prefix-map=${STAGING_KERNEL_DIR}=${KERNEL_SRC_PATH} -ffile-prefix-map=${STAGING_KERNEL_BUILDDIR}=${KERNEL_SRC_PATH}'"
+EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build' KERN_MAJ='${@(get_kernelversion_file('${STAGING_KERNEL_BUILDDIR}') or '').split('.')[0]}' KBUILD_VERBOSE=1 CC='${CC} ${DEBUG_PREFIX_MAP} -ffile-prefix-map=${STAGING_KERNEL_DIR}=${KERNEL_SRC_PATH} -ffile-prefix-map=${STAGING_KERNEL_BUILDDIR}=${KERNEL_SRC_PATH}'"
 
 # otherwise 5.2.22 builds just vboxguest
 MAKE_TARGETS = "all"