diff mbox series

[meta-oe] vboxguestdrivers: Fix build with C23/GCC15

Message ID 20250502035508.3097649-1-raj.khem@gmail.com
State New
Headers show
Series [meta-oe] vboxguestdrivers: Fix build with C23/GCC15 | expand

Commit Message

Khem Raj May 2, 2025, 3:55 a.m. UTC
bool is a keyword in C23 onwards

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...x-bool-reserved-word-error-in-gcc-15.patch | 28 +++++++++++++++++++
 .../vboxguestdrivers_7.1.8.bb                 |  5 ++--
 2 files changed, 31 insertions(+), 2 deletions(-)
 create mode 100644 meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-fix-bool-reserved-word-error-in-gcc-15.patch
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-fix-bool-reserved-word-error-in-gcc-15.patch b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-fix-bool-reserved-word-error-in-gcc-15.patch
new file mode 100644
index 0000000000..ec75d5a423
--- /dev/null
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/0001-fix-bool-reserved-word-error-in-gcc-15.patch
@@ -0,0 +1,28 @@ 
+From 76c443dfd209ddbed3ed4102596a568670d4c59f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 1 May 2025 20:16:11 -0700
+Subject: [PATCH] fix bool reserved word error in gcc 15
+
+gcc-15 switched to -std=c23 by default. https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
+
+Upstream-Status: Submitted [https://www.virtualbox.org/pipermail/vbox-dev/2025-May/010316.html]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ vboxsf/include/iprt/types.h | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/vboxsf/include/iprt/types.h b/vboxsf/include/iprt/types.h
+index 3bcc4146..33b46ef6 100644
+--- a/vboxsf/include/iprt/types.h
++++ b/vboxsf/include/iprt/types.h
+@@ -282,7 +282,9 @@ typedef _Bool bool;
+ #   endif
+ #  else
+ #   undef bool /* see above netbsd explanation */
+-typedef _Bool bool;
++#   if defined __STDC__ && defined __STDC_VERSION__ && __STDC_VERSION__ <= 201710L
++     typedef _Bool bool;
++#   endif
+ #  endif
+ # else
+ #  if RT_MSC_PREREQ(RT_MSC_VER_VC120)
diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.1.8.bb b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.1.8.bb
index 1560c8094f..c894a61617 100644
--- a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.1.8.bb
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.1.8.bb
@@ -13,13 +13,14 @@  VBOX_NAME = "VirtualBox-${PV}"
 
 SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
     file://Makefile.utils \
+    file://0001-fix-bool-reserved-word-error-in-gcc-15.patch \
 "
 
 SRC_URI[sha256sum] = "3f7132c55ac6c5f50585bfaa115d29e30b47ccf535cb0a12ff50214ddae2f63d"
 
 S ?= "${WORKDIR}/vbox_module"
 S:task-unpack = "${UNPACKDIR}/${VBOX_NAME}"
-S:task-patch = "${WORKDIR}/${VBOX_NAME}"
+S:task-patch = "${WORKDIR}/${BP}"
 
 export VBOX_KBUILD_TARGET_ARCH = "${ARCH}"
 export VBOX_KBUILD_TARGET_ARCH:x86-64 = "amd64"
@@ -29,7 +30,7 @@  EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build' KBUILD_VERBOSE=1
 # otherwise 5.2.22 builds just vboxguest
 MAKE_TARGETS = "all"
 
-addtask export_sources after do_patch before do_configure
+addtask export_sources before do_patch after do_unpack
 do_export_sources[depends] += "virtual/kernel:do_shared_workdir"
 
 do_export_sources() {