[nvidia-340xx-kmod/f38] Fix build on kernel-6.5.2
by wojnilowicz
commit 433c19ff37511a5ed0d303f452f4ca4decb6ae96
Author: Łukasz Wojniłowicz <lukasz.wojnilowicz(a)gmail.com>
Date: Mon Sep 11 17:39:58 2023 +0200
Fix build on kernel-6.5.2
kernel-6.5.2.patch | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++
nvidia-340xx-kmod.spec | 7 ++++-
2 files changed, 83 insertions(+), 1 deletion(-)
---
diff --git a/kernel-6.5.2.patch b/kernel-6.5.2.patch
new file mode 100644
index 0000000..16a854b
--- /dev/null
+++ b/kernel-6.5.2.patch
@@ -0,0 +1,77 @@
+diff -Naur a/kernel/conftest.sh b/kernel/conftest.sh
+--- a/kernel/conftest.sh 2023-03-04 13:09:34.870313112 +0100
++++ b/kernel/conftest.sh 2023-09-11 17:10:38.066651279 +0200
+@@ -3213,6 +3213,30 @@
+ return
+ fi
+
++ # Conftest #4: check if vma arg was dropped
++ # Return if available.
++ # Fall through to default case if absent.
++
++ echo "$CONFTEST_PREAMBLE
++ #include <linux/mm.h>
++ long get_user_pages(unsigned long start,
++ unsigned long nr_pages,
++ unsigned int gup_flags,
++ struct page **pages) {
++ return 0;
++ }" > conftest$$.c
++
++ $CC $CFLAGS -c conftest$$.c > /dev/null 2>&1
++ rm -f conftest$$.c
++
++ if [ -f conftest$$.o ]; then
++ echo "#define NV_GET_USER_PAGES_DROPPED_VMA" | append_conftest "functions"
++ echo "#undef NV_GET_USER_PAGES_HAS_WRITE_AND_FORCE_ARGS" | append_conftest "functions"
++ echo "#undef NV_GET_USER_PAGES_HAS_TASK_STRUCT" | append_conftest "functions"
++ rm -f conftest$$.o
++ return
++ fi
++
+ echo "#define NV_GET_USER_PAGES_HAS_WRITE_AND_FORCE_ARGS" | append_conftest "functions"
+ echo "#define NV_GET_USER_PAGES_HAS_TASK_STRUCT" | append_conftest "functions"
+
+@@ -3220,6 +3244,8 @@
+ ;;
+
+ get_user_pages_remote)
++ echo "#define NV_GET_USER_PAGES_REMOTE_UNUSED" | append_conftest "functions"
++ return
+ #
+ # Determine if the function get_user_pages_remote() is
+ # present and has write/force/locked/tsk parameters.
+diff -Naur a/kernel/nv-mm.h b/kernel/nv-mm.h
+--- a/kernel/nv-mm.h 2022-10-12 11:30:26.000000000 +0200
++++ b/kernel/nv-mm.h 2023-09-11 17:17:20.528698065 +0200
+@@ -93,7 +93,11 @@
+ if (force)
+ flags |= FOLL_FORCE;
+
+- return get_user_pages(start, nr_pages, flags, pages, vmas);
++ #if defined(NV_GET_USER_PAGES_DROPPED_VMA)
++ return get_user_pages(start, nr_pages, flags, pages);
++ #else
++ return get_user_pages(start, nr_pages, flags, pages, vmas);
++ #endif
+ }
+ #endif
+ #endif
+@@ -129,7 +133,8 @@
+ * all gup code") in v5.9-rc1 (2020-08-11).
+ *
+ */
+-
++#if defined(NV_GET_USER_PAGES_REMOTE_UNUSED)
++#else
+ #if defined(NV_GET_USER_PAGES_REMOTE_PRESENT)
+ #if defined(NV_GET_USER_PAGES_REMOTE_HAS_WRITE_AND_FORCE_ARGS)
+ #define NV_GET_USER_PAGES_REMOTE get_user_pages_remote
+@@ -195,6 +200,7 @@
+ }
+ #endif
+ #endif
++#endif
+
+
+ /*
diff --git a/nvidia-340xx-kmod.spec b/nvidia-340xx-kmod.spec
index ce20db1..20ff302 100644
--- a/nvidia-340xx-kmod.spec
+++ b/nvidia-340xx-kmod.spec
@@ -12,7 +12,7 @@ Name: nvidia-340xx-kmod
Epoch: 1
Version: 340.108
# Taken over by kmodtool
-Release: 28%{?dist}
+Release: 29%{?dist}
Summary: NVIDIA display driver kernel module
Group: System Environment/Kernel
License: Redistributable, no modification permitted
@@ -22,6 +22,7 @@ Source11: nvidia-kmodtool-excludekernel-filterfile
Patch0: import-files-from-390.157.patch
Patch1: fix-build-issues.patch
Patch2: kernel-6.3.1.patch
+Patch3: kernel-6.5.2.patch
BuildRequires: elfutils-libelf-devel
BuildRequires: gcc
@@ -51,6 +52,7 @@ tar --use-compress-program xz -xf %{_datadir}/%{name}-%{version}/%{name}-%{versi
%patch 0 -p1
%patch 1 -p1
%patch 2 -p1
+%patch 3 -p1
for kernel_version in %{?kernel_versions} ; do
cp -a kernel _kmod_build_${kernel_version%%___*}
@@ -79,6 +81,9 @@ done
%{?akmod_install}
%changelog
+* Mon Sep 11 2023 Łukasz Wojniłowicz <lukasz.wojnilowicz(a)gmail.com> - 1:340.108-29
+- Fix build on kernel-6.5.2
+
* Mon May 08 2023 Łukasz Wojniłowicz <lukasz.wojnilowicz(a)gmail.com> - 1:340.108-28
- Fix build on kernel-6.3.1
1 year, 2 months
[VirtualBox-kmod] Fixes for kernel-6.5 copied from OpenSuse
by Sérgio M. Basto
commit 15442e50fc879d9cb0f713bd99000dc4e7e327d3
Author: Sérgio M. Basto <sergio(a)serjux.com>
Date: Sun Sep 10 22:19:23 2023 +0100
Fixes for kernel-6.5 copied from OpenSuse
VirtualBox-kmod.spec | 7 +-
kernel-6.5.patch | 441 +++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 447 insertions(+), 1 deletion(-)
---
diff --git a/VirtualBox-kmod.spec b/VirtualBox-kmod.spec
index 8fce7b6..cecc049 100644
--- a/VirtualBox-kmod.spec
+++ b/VirtualBox-kmod.spec
@@ -40,7 +40,7 @@
Name: VirtualBox-kmod
Version: 7.0.10
-Release: 2%{?dist}
+Release: 3%{?dist}
#Release: 1%%{?prerel:.%%{prerel}}%%{?dist}
Summary: Kernel module for VirtualBox
@@ -50,6 +50,7 @@ URL: http://www.virtualbox.org/wiki/VirtualBox
Source1: excludekernel-filter.txt
Patch1: fix_7.0.6_locking_problems.patch
Patch2: kernel-6.4.10.patch
+Patch3: kernel-6.5.patch
%global AkmodsBuildRequires %{_bindir}/kmodtool VirtualBox-kmodsrc = %{version} xz time elfutils-libelf-devel gcc
@@ -74,6 +75,7 @@ pushd %{name}-%{version}
%patch -P 1 -p1
%patch -P 2 -p1
popd
+%patch -P 3 -p1
# error out if there was something wrong with kmodtool
%{?kmodtool_check}
@@ -135,6 +137,9 @@ DIRS=$(ls %{name}-%{version} |wc -l)
[ $MODS = $DIRS ] || [ $MODS = 0 ]
%changelog
+* Sun Sep 10 2023 Sérgio Basto <sergio(a)serjux.com> - 7.0.10-3
+- Fixes for kernel-6.5 copied from OpenSuse
+
* Sat Aug 12 2023 Sérgio Basto <sergio(a)serjux.com> - 7.0.10-2
- Add fix for kernel-6.4.10
diff --git a/kernel-6.5.patch b/kernel-6.5.patch
new file mode 100644
index 0000000..2b55196
--- /dev/null
+++ b/kernel-6.5.patch
@@ -0,0 +1,441 @@
+Only in VirtualBox-kmod-7.0.10: vboxnetadp
+diff -urp VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxdrv/include/iprt/cdefs.h VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxdrv/include/iprt/cdefs.h
+--- VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxdrv/include/iprt/cdefs.h 2023-07-12 17:25:21.000000000 +0100
++++ VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxdrv/include/iprt/cdefs.h 2023-09-10 22:13:17.207356435 +0100
+@@ -38,8 +38,9 @@
+ #ifndef RT_WITHOUT_PRAGMA_ONCE
+ # pragma once
+ #endif
+-
+-
++#if defined(DECLARE_FLEX_ARRAY)
++# include <linux/version.h>
++#endif
+ /** @defgroup grp_rt_cdefs IPRT Common Definitions and Macros
+ * @{
+ */
+@@ -2960,6 +2961,12 @@
+ * @note GCC does not permit using this in nested structures, where as MSC
+ * does. So, use RT_FLEXIBLE_ARRAY_NESTED for that.
+ *
++ * @note Linux kernels 6.5+ enforce field-spanning write operations
++ * and require flexible arrays to end with 'array[]' rather than array[1].
++ * This construct fails with unions, but VB does not have any such unions.
++ * This header is used with both kernel- and user-mode code. In user-mode,
++ * the old method works. If DECLARE_FLEX_ARRAY is defined, we are
++ * building kernel-mode code and RT_FLEXIBLE_ARRAY is set to blank.
+ * @sa RT_FLEXIBLE_ARRAY_NESTED, RT_FLEXIBLE_ARRAY_IN_UNION
+ */
+ #if RT_MSC_PREREQ(RT_MSC_VER_VS2005) /** @todo Probably much much earlier. */ \
+@@ -2975,10 +2982,18 @@
+ # if __STDC_VERSION__ >= 1999901L
+ # define RT_FLEXIBLE_ARRAY
+ # else
+-# define RT_FLEXIBLE_ARRAY 1
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
++# define RT_FLEXIBLE_ARRAY 1
++# endif
+ # endif
+ #else
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
+ # define RT_FLEXIBLE_ARRAY 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_EXTENSION
+@@ -3007,7 +3022,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_NESTED RT_FLEXIBLE_ARRAY
+ #else
++# if !defined(DECLARE_FLEX_ARRAY)
+ # define RT_FLEXIBLE_ARRAY_NESTED 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_UNION
+@@ -3023,7 +3040,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_UNION RT_FLEXIBLE_ARRAY
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_NESTED_UNION
+@@ -3036,7 +3055,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION RT_FLEXIBLE_ARRAY_NESTED
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# endif
+ #endif
+
+ /** @def RT_UNION_NM
+Only in VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxdrv/include/iprt: cdefs.h.orig
+diff -urp VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxguest/include/iprt/cdefs.h VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxguest/include/iprt/cdefs.h
+--- VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxguest/include/iprt/cdefs.h 2023-07-12 17:25:21.000000000 +0100
++++ VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxguest/include/iprt/cdefs.h 2023-09-10 22:12:41.853471376 +0100
+@@ -38,8 +38,9 @@
+ #ifndef RT_WITHOUT_PRAGMA_ONCE
+ # pragma once
+ #endif
+-
+-
++#if defined(DECLARE_FLEX_ARRAY)
++# include <linux/version.h>
++#endif
+ /** @defgroup grp_rt_cdefs IPRT Common Definitions and Macros
+ * @{
+ */
+@@ -2960,6 +2961,12 @@
+ * @note GCC does not permit using this in nested structures, where as MSC
+ * does. So, use RT_FLEXIBLE_ARRAY_NESTED for that.
+ *
++ * @note Linux kernels 6.5+ enforce field-spanning write operations
++ * and require flexible arrays to end with 'array[]' rather than array[1].
++ * This construct fails with unions, but VB does not have any such unions.
++ * This header is used with both kernel- and user-mode code. In user-mode,
++ * the old method works. If DECLARE_FLEX_ARRAY is defined, we are
++ * building kernel-mode code and RT_FLEXIBLE_ARRAY is set to blank.
+ * @sa RT_FLEXIBLE_ARRAY_NESTED, RT_FLEXIBLE_ARRAY_IN_UNION
+ */
+ #if RT_MSC_PREREQ(RT_MSC_VER_VS2005) /** @todo Probably much much earlier. */ \
+@@ -2975,10 +2982,18 @@
+ # if __STDC_VERSION__ >= 1999901L
+ # define RT_FLEXIBLE_ARRAY
+ # else
+-# define RT_FLEXIBLE_ARRAY 1
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
++# define RT_FLEXIBLE_ARRAY 1
++# endif
+ # endif
+ #else
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
+ # define RT_FLEXIBLE_ARRAY 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_EXTENSION
+@@ -3007,7 +3022,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_NESTED RT_FLEXIBLE_ARRAY
+ #else
++# if !defined(DECLARE_FLEX_ARRAY)
+ # define RT_FLEXIBLE_ARRAY_NESTED 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_UNION
+@@ -3023,7 +3040,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_UNION RT_FLEXIBLE_ARRAY
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_NESTED_UNION
+@@ -3036,7 +3055,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION RT_FLEXIBLE_ARRAY_NESTED
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# endif
+ #endif
+
+ /** @def RT_UNION_NM
+Only in VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxguest/include/iprt: cdefs.h.orig
+diff -urp VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxguest/include/VBox/VBoxGuest.h VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxguest/include/VBox/VBoxGuest.h
+--- VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxguest/include/VBox/VBoxGuest.h 2023-07-12 17:25:14.000000000 +0100
++++ VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxguest/include/VBox/VBoxGuest.h 2023-09-10 22:15:25.028940841 +0100
+@@ -458,8 +458,12 @@ typedef struct VBGLIOCLOG
+ {
+ /** The log message.
+ * The length is determined from the input size and zero termination. */
+- char szMsg[RT_FLEXIBLE_ARRAY_IN_NESTED_UNION];
+- } In;
++#if defined(DECLARE_FLEX_ARRAY)
++ DECLARE_FLEX_ARRAY(char, szMsg);
++#else
++ char szMsg[RT_FLEXIBLE_ARRAY_IN_NESTED_UNION];
++#endif
++ } In;
+ } u;
+ } VBGLIOCLOG, RT_FAR *PVBGLIOCLOG;
+ /** @} */
+diff -urp VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxnetadp/include/iprt/cdefs.h VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxnetadp/include/iprt/cdefs.h
+--- VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxnetadp/include/iprt/cdefs.h 2023-07-12 17:25:21.000000000 +0100
++++ VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxnetadp/include/iprt/cdefs.h 2023-09-10 22:12:28.116516034 +0100
+@@ -38,8 +38,9 @@
+ #ifndef RT_WITHOUT_PRAGMA_ONCE
+ # pragma once
+ #endif
+-
+-
++#if defined(DECLARE_FLEX_ARRAY)
++# include <linux/version.h>
++#endif
+ /** @defgroup grp_rt_cdefs IPRT Common Definitions and Macros
+ * @{
+ */
+@@ -2960,6 +2961,12 @@
+ * @note GCC does not permit using this in nested structures, where as MSC
+ * does. So, use RT_FLEXIBLE_ARRAY_NESTED for that.
+ *
++ * @note Linux kernels 6.5+ enforce field-spanning write operations
++ * and require flexible arrays to end with 'array[]' rather than array[1].
++ * This construct fails with unions, but VB does not have any such unions.
++ * This header is used with both kernel- and user-mode code. In user-mode,
++ * the old method works. If DECLARE_FLEX_ARRAY is defined, we are
++ * building kernel-mode code and RT_FLEXIBLE_ARRAY is set to blank.
+ * @sa RT_FLEXIBLE_ARRAY_NESTED, RT_FLEXIBLE_ARRAY_IN_UNION
+ */
+ #if RT_MSC_PREREQ(RT_MSC_VER_VS2005) /** @todo Probably much much earlier. */ \
+@@ -2975,10 +2982,18 @@
+ # if __STDC_VERSION__ >= 1999901L
+ # define RT_FLEXIBLE_ARRAY
+ # else
+-# define RT_FLEXIBLE_ARRAY 1
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
++# define RT_FLEXIBLE_ARRAY 1
++# endif
+ # endif
+ #else
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
+ # define RT_FLEXIBLE_ARRAY 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_EXTENSION
+@@ -3007,7 +3022,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_NESTED RT_FLEXIBLE_ARRAY
+ #else
++# if !defined(DECLARE_FLEX_ARRAY)
+ # define RT_FLEXIBLE_ARRAY_NESTED 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_UNION
+@@ -3023,7 +3040,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_UNION RT_FLEXIBLE_ARRAY
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_NESTED_UNION
+@@ -3036,7 +3055,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION RT_FLEXIBLE_ARRAY_NESTED
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# endif
+ #endif
+
+ /** @def RT_UNION_NM
+Only in VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxnetadp/include/iprt: cdefs.h.orig
+diff -urp VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxnetflt/include/iprt/cdefs.h VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxnetflt/include/iprt/cdefs.h
+--- VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxnetflt/include/iprt/cdefs.h 2023-07-12 17:25:21.000000000 +0100
++++ VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxnetflt/include/iprt/cdefs.h 2023-09-10 22:13:08.768383873 +0100
+@@ -38,8 +38,9 @@
+ #ifndef RT_WITHOUT_PRAGMA_ONCE
+ # pragma once
+ #endif
+-
+-
++#if defined(DECLARE_FLEX_ARRAY)
++# include <linux/version.h>
++#endif
+ /** @defgroup grp_rt_cdefs IPRT Common Definitions and Macros
+ * @{
+ */
+@@ -2960,6 +2961,12 @@
+ * @note GCC does not permit using this in nested structures, where as MSC
+ * does. So, use RT_FLEXIBLE_ARRAY_NESTED for that.
+ *
++ * @note Linux kernels 6.5+ enforce field-spanning write operations
++ * and require flexible arrays to end with 'array[]' rather than array[1].
++ * This construct fails with unions, but VB does not have any such unions.
++ * This header is used with both kernel- and user-mode code. In user-mode,
++ * the old method works. If DECLARE_FLEX_ARRAY is defined, we are
++ * building kernel-mode code and RT_FLEXIBLE_ARRAY is set to blank.
+ * @sa RT_FLEXIBLE_ARRAY_NESTED, RT_FLEXIBLE_ARRAY_IN_UNION
+ */
+ #if RT_MSC_PREREQ(RT_MSC_VER_VS2005) /** @todo Probably much much earlier. */ \
+@@ -2975,10 +2982,18 @@
+ # if __STDC_VERSION__ >= 1999901L
+ # define RT_FLEXIBLE_ARRAY
+ # else
+-# define RT_FLEXIBLE_ARRAY 1
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
++# define RT_FLEXIBLE_ARRAY 1
++# endif
+ # endif
+ #else
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
+ # define RT_FLEXIBLE_ARRAY 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_EXTENSION
+@@ -3007,7 +3022,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_NESTED RT_FLEXIBLE_ARRAY
+ #else
++# if !defined(DECLARE_FLEX_ARRAY)
+ # define RT_FLEXIBLE_ARRAY_NESTED 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_UNION
+@@ -3023,7 +3040,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_UNION RT_FLEXIBLE_ARRAY
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_NESTED_UNION
+@@ -3036,7 +3055,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION RT_FLEXIBLE_ARRAY_NESTED
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# endif
+ #endif
+
+ /** @def RT_UNION_NM
+Only in VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxnetflt/include/iprt: cdefs.h.orig
+diff -urp VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxsf/include/iprt/cdefs.h VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxsf/include/iprt/cdefs.h
+--- VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxsf/include/iprt/cdefs.h 2023-07-12 17:25:21.000000000 +0100
++++ VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxsf/include/iprt/cdefs.h 2023-09-10 22:13:26.540326093 +0100
+@@ -38,8 +38,9 @@
+ #ifndef RT_WITHOUT_PRAGMA_ONCE
+ # pragma once
+ #endif
+-
+-
++#if defined(DECLARE_FLEX_ARRAY)
++# include <linux/version.h>
++#endif
+ /** @defgroup grp_rt_cdefs IPRT Common Definitions and Macros
+ * @{
+ */
+@@ -2960,6 +2961,12 @@
+ * @note GCC does not permit using this in nested structures, where as MSC
+ * does. So, use RT_FLEXIBLE_ARRAY_NESTED for that.
+ *
++ * @note Linux kernels 6.5+ enforce field-spanning write operations
++ * and require flexible arrays to end with 'array[]' rather than array[1].
++ * This construct fails with unions, but VB does not have any such unions.
++ * This header is used with both kernel- and user-mode code. In user-mode,
++ * the old method works. If DECLARE_FLEX_ARRAY is defined, we are
++ * building kernel-mode code and RT_FLEXIBLE_ARRAY is set to blank.
+ * @sa RT_FLEXIBLE_ARRAY_NESTED, RT_FLEXIBLE_ARRAY_IN_UNION
+ */
+ #if RT_MSC_PREREQ(RT_MSC_VER_VS2005) /** @todo Probably much much earlier. */ \
+@@ -2975,10 +2982,18 @@
+ # if __STDC_VERSION__ >= 1999901L
+ # define RT_FLEXIBLE_ARRAY
+ # else
+-# define RT_FLEXIBLE_ARRAY 1
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
++# define RT_FLEXIBLE_ARRAY 1
++# endif
+ # endif
+ #else
++# if defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY
++# else
+ # define RT_FLEXIBLE_ARRAY 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_EXTENSION
+@@ -3007,7 +3022,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_NESTED RT_FLEXIBLE_ARRAY
+ #else
++# if !defined(DECLARE_FLEX_ARRAY)
+ # define RT_FLEXIBLE_ARRAY_NESTED 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_UNION
+@@ -3023,7 +3040,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_UNION RT_FLEXIBLE_ARRAY
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_UNION 1
++# endif
+ #endif
+
+ /** @def RT_FLEXIBLE_ARRAY_IN_NESTED_UNION
+@@ -3036,7 +3055,9 @@
+ #ifdef _MSC_VER
+ # define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION RT_FLEXIBLE_ARRAY_NESTED
+ #else
+-# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# if !defined(DECLARE_FLEX_ARRAY)
++# define RT_FLEXIBLE_ARRAY_IN_NESTED_UNION 1
++# endif
+ #endif
+
+ /** @def RT_UNION_NM
+diff -urp VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxsf/include/VBox/VBoxGuest.h VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxsf/include/VBox/VBoxGuest.h
+--- VirtualBox-kmod-7.0.10.orig/VirtualBox-kmod-7.0.10/vboxsf/include/VBox/VBoxGuest.h 2023-07-12 17:25:14.000000000 +0100
++++ VirtualBox-kmod-7.0.10/VirtualBox-kmod-7.0.10/vboxsf/include/VBox/VBoxGuest.h 2023-09-10 22:15:34.166911131 +0100
+@@ -458,8 +458,12 @@ typedef struct VBGLIOCLOG
+ {
+ /** The log message.
+ * The length is determined from the input size and zero termination. */
+- char szMsg[RT_FLEXIBLE_ARRAY_IN_NESTED_UNION];
+- } In;
++#if defined(DECLARE_FLEX_ARRAY)
++ DECLARE_FLEX_ARRAY(char, szMsg);
++#else
++ char szMsg[RT_FLEXIBLE_ARRAY_IN_NESTED_UNION];
++#endif
++ } In;
+ } u;
+ } VBGLIOCLOG, RT_FAR *PVBGLIOCLOG;
+ /** @} */
1 year, 2 months
[vdr-skindesigner] Update to 1.2.21
by Martin Gansser
commit 687744965c3d57ac0750a753cc2493040175312c
Author: Martin Gansser <mgansser(a)online.de>
Date: Thu Sep 7 14:47:03 2023 +0200
Update to 1.2.21
.gitignore | 1 +
sources | 2 +-
vdr-skindesigner.spec | 5 ++++-
3 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 18af5ec..d349739 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,3 +36,4 @@ vdr-plugin-skindesigner-0.9.5.tar.bz2
/skindesigner-1.2.18.tar.bz2
/skindesigner-1.2.19.tar.bz2
/skindesigner-1.2.20.tar.bz2
+/skindesigner-1.2.21.tar.bz2
diff --git a/sources b/sources
index d87e02b..0aa5262 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (skindesigner-1.2.20.tar.bz2) = 30924491510c00cd133432e96ffe7dc480cb71647738f80d9b47b99a9867ca00881aa18b60a162ed15d087e1681068d83b914c97f98f9d687620b5d43bfd8d72
+SHA512 (skindesigner-1.2.21.tar.bz2) = 9bc62cd4bd1b428204ce2372ef11ba40292fec9ed2576bd55c84406879f474d451760d1697cddbdf203ef8c1d2709a7ea8e94f3a3cdea30f68caca85ad4756a8
diff --git a/vdr-skindesigner.spec b/vdr-skindesigner.spec
index 7c39d59..9879ad7 100644
--- a/vdr-skindesigner.spec
+++ b/vdr-skindesigner.spec
@@ -6,7 +6,7 @@
%endif
Name: vdr-skindesigner
-Version: 1.2.20
+Version: 1.2.21
Release: 1%{?dist}
Summary: A VDR skinning engine that displays XML based Skins
License: GPLv2+
@@ -142,6 +142,9 @@ ln -s %{vdr_resdir}/plugins/skindesigner/dtd %{buildroot}/%{vdr_configdir}/plugi
%{_includedir}/libskindesignerapi/*
%changelog
+* Wed Sep 06 2023 Martin Gansser <martinkg(a)fedoraproject.org> - 1.2.21-1
+- Update to 1.2.21
+
* Sat Aug 19 2023 Martin Gansser <martinkg(a)fedoraproject.org> - 1.2.20-1
- Update to 1.2.20
1 year, 2 months
[vcmi/f37] Rebuilt with Qt6 for Fedora 39
by runlevel5
commit 4042e8c80915fca00e12748b6617f57e9c514628
Author: 8(a)tle.id.au <Trung Lê>
Date: Thu Sep 7 21:11:21 2023 +1000
Rebuilt with Qt6 for Fedora 39
vcmi.spec | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
---
diff --git a/vcmi.spec b/vcmi.spec
index 88fda9f..1bd99e9 100644
--- a/vcmi.spec
+++ b/vcmi.spec
@@ -8,7 +8,7 @@ URL: https://vcmi.eu/
Version: 1.3.1
-Release: 1%{?dist}
+Release: 2%{?dist}
# vcmi is GPLv2+, fyzzylight is GPLv3
License: GPLv2+ and GPLv3
@@ -43,8 +43,14 @@ BuildRequires: minizip-ng-devel
BuildRequires: tbb-devel
BuildRequires: zlib-devel
BuildRequires: ffmpeg-devel
+%if 0%{?fedora} >= 39
+BuildRequires: qt6-qtbase-devel
+BuildRequires: qt6-qttools-devel
+BuildRequires: qt6-linguist
+%else
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-linguist
+%endif
Requires: hicolor-icon-theme
Requires: %{name}-data = %{version}-%{release}
@@ -130,6 +136,9 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/eu.vcmi.VCMI.m
%changelog
+* Thu Aug 31 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-2
+- Rebuilt with Qt6 for Fedora 39
+
* Sat Aug 19 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-1
- New upstream release
- Re-enable support for ppc64le
1 year, 2 months
[vcmi/f38] Rebuilt with Qt6 for Fedora 39
by runlevel5
commit 71e52ffa10039dd962345d2612955536a1c88b44
Author: 8(a)tle.id.au <Trung Lê>
Date: Thu Sep 7 21:11:21 2023 +1000
Rebuilt with Qt6 for Fedora 39
vcmi.spec | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
---
diff --git a/vcmi.spec b/vcmi.spec
index 88fda9f..1bd99e9 100644
--- a/vcmi.spec
+++ b/vcmi.spec
@@ -8,7 +8,7 @@ URL: https://vcmi.eu/
Version: 1.3.1
-Release: 1%{?dist}
+Release: 2%{?dist}
# vcmi is GPLv2+, fyzzylight is GPLv3
License: GPLv2+ and GPLv3
@@ -43,8 +43,14 @@ BuildRequires: minizip-ng-devel
BuildRequires: tbb-devel
BuildRequires: zlib-devel
BuildRequires: ffmpeg-devel
+%if 0%{?fedora} >= 39
+BuildRequires: qt6-qtbase-devel
+BuildRequires: qt6-qttools-devel
+BuildRequires: qt6-linguist
+%else
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-linguist
+%endif
Requires: hicolor-icon-theme
Requires: %{name}-data = %{version}-%{release}
@@ -130,6 +136,9 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/eu.vcmi.VCMI.m
%changelog
+* Thu Aug 31 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-2
+- Rebuilt with Qt6 for Fedora 39
+
* Sat Aug 19 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-1
- New upstream release
- Re-enable support for ppc64le
1 year, 2 months
[vcmi/f39] Rebuilt with Qt6 for Fedora 39
by runlevel5
commit 4ea0f7763597c584f541d7e0053d9a2e6ba0963d
Author: 8(a)tle.id.au <Trung Lê>
Date: Thu Sep 7 21:11:21 2023 +1000
Rebuilt with Qt6 for Fedora 39
vcmi.spec | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
---
diff --git a/vcmi.spec b/vcmi.spec
index 88fda9f..1bd99e9 100644
--- a/vcmi.spec
+++ b/vcmi.spec
@@ -8,7 +8,7 @@ URL: https://vcmi.eu/
Version: 1.3.1
-Release: 1%{?dist}
+Release: 2%{?dist}
# vcmi is GPLv2+, fyzzylight is GPLv3
License: GPLv2+ and GPLv3
@@ -43,8 +43,14 @@ BuildRequires: minizip-ng-devel
BuildRequires: tbb-devel
BuildRequires: zlib-devel
BuildRequires: ffmpeg-devel
+%if 0%{?fedora} >= 39
+BuildRequires: qt6-qtbase-devel
+BuildRequires: qt6-qttools-devel
+BuildRequires: qt6-linguist
+%else
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-linguist
+%endif
Requires: hicolor-icon-theme
Requires: %{name}-data = %{version}-%{release}
@@ -130,6 +136,9 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/eu.vcmi.VCMI.m
%changelog
+* Thu Aug 31 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-2
+- Rebuilt with Qt6 for Fedora 39
+
* Sat Aug 19 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-1
- New upstream release
- Re-enable support for ppc64le
1 year, 2 months
[vcmi] Rebuilt with Qt6 for Fedora 39
by runlevel5
commit 39c7a12cb9d7c7f5613ccd7ca030e35d17514d58
Author: 8(a)tle.id.au <Trung Lê>
Date: Thu Sep 7 21:11:21 2023 +1000
Rebuilt with Qt6 for Fedora 39
vcmi.spec | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
---
diff --git a/vcmi.spec b/vcmi.spec
index 88fda9f..1bd99e9 100644
--- a/vcmi.spec
+++ b/vcmi.spec
@@ -8,7 +8,7 @@ URL: https://vcmi.eu/
Version: 1.3.1
-Release: 1%{?dist}
+Release: 2%{?dist}
# vcmi is GPLv2+, fyzzylight is GPLv3
License: GPLv2+ and GPLv3
@@ -43,8 +43,14 @@ BuildRequires: minizip-ng-devel
BuildRequires: tbb-devel
BuildRequires: zlib-devel
BuildRequires: ffmpeg-devel
+%if 0%{?fedora} >= 39
+BuildRequires: qt6-qtbase-devel
+BuildRequires: qt6-qttools-devel
+BuildRequires: qt6-linguist
+%else
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-linguist
+%endif
Requires: hicolor-icon-theme
Requires: %{name}-data = %{version}-%{release}
@@ -130,6 +136,9 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/eu.vcmi.VCMI.m
%changelog
+* Thu Aug 31 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-2
+- Rebuilt with Qt6 for Fedora 39
+
* Sat Aug 19 2023 Trung Lê <8(a)tle.id.au> - 1.3.1-1
- New upstream release
- Re-enable support for ppc64le
1 year, 2 months