From: Jan Palus Date: Mon, 13 Aug 2018 15:30:41 +0000 (+0200) Subject: patch to fix build with kernel 4.18 from opensuse; rel 2 X-Git-Tag: auto/th/VirtualBox-5.2.16-2 X-Git-Url: http://git.pld-linux.org/?p=packages%2FVirtualBox.git;a=commitdiff_plain;h=30dce754a8bee290df86e063cc2cf41b805a586c patch to fix build with kernel 4.18 from opensuse; rel 2 --- diff --git a/VirtualBox.spec b/VirtualBox.spec index d805815..0de66fd 100644 --- a/VirtualBox.spec +++ b/VirtualBox.spec @@ -42,7 +42,7 @@ exit 1 %define qtver 5.6.0 -%define rel 1 +%define rel 2 %define pname VirtualBox Summary: VirtualBox - x86 hardware virtualizer Summary(pl.UTF-8): VirtualBox - wirtualizator sprzętu x86 @@ -82,6 +82,7 @@ Patch14: %{pname}-multipython.patch Patch15: %{pname}-lightdm-1.19.2.patch Patch16: %{pname}-no-vboxvideo.patch Patch17: %{pname}-kerndir.patch +Patch18: kernel-4.18.patch URL: http://www.virtualbox.org/ %if %{with userspace} %ifarch %{x8664} @@ -551,6 +552,7 @@ cd ../..\ %patch15 -p0 %patch16 -p0 %patch17 -p1 +%patch18 -p1 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \ -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in diff --git a/kernel-4.18.patch b/kernel-4.18.patch new file mode 100644 index 0000000..2e0d9ed --- /dev/null +++ b/kernel-4.18.patch @@ -0,0 +1,29 @@ +Index: VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c +=================================================================== +--- VirtualBox-5.2.12.orig/src/VBox/Additions/linux/sharedfolders/utils.c ++++ VirtualBox-5.2.12/src/VBox/Additions/linux/sharedfolders/utils.c +@@ -50,7 +50,11 @@ static void sf_timespec_from_ftime(RTTIM + RTTimeSpecSetNano(ts, t); + } + #else /* >= 2.6.0 */ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 18, 0) ++static void sf_ftime_from_timespec(struct timespec64 *tv, RTTIMESPEC *ts) ++#else + static void sf_ftime_from_timespec(struct timespec *tv, RTTIMESPEC *ts) ++#endif + { + int64_t t = RTTimeSpecGetNano(ts); + int64_t nsec; +@@ -60,7 +64,11 @@ static void sf_ftime_from_timespec(struc + tv->tv_nsec = nsec; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 18, 0) ++static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec64 *tv) ++#else + static void sf_timespec_from_ftime(RTTIMESPEC *ts, struct timespec *tv) ++#endif + { + int64_t t = (int64_t)tv->tv_nsec + (int64_t)tv->tv_sec * 1000000000; + RTTimeSpecSetNano(ts, t); +