summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Marc Lenoir2021-11-24 01:43:46 +0100
committerJean-Marc Lenoir2021-11-24 01:43:46 +0100
commit2ecb1665431ecadd3e5764c763aa8d89f10cd3bd (patch)
tree1382034a11228e0b78833c947e3a0751c22329ca
parentabe052eea0a8822046c0abb2422b958cdc8b7c20 (diff)
downloadaur-2ecb1665431ecadd3e5764c763aa8d89f10cd3bd.tar.gz
Compatibility with Linux 5.16-rc1
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD6
-rw-r--r--vmmon.patch66
-rw-r--r--vmnet.patch68
4 files changed, 139 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 71ad6d3f3a61..860e5bddb5c0 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = vmware-workstation
pkgdesc = The industry standard for running multiple operating systems as virtual machines on a single Linux PC.
pkgver = 16.2.1
- pkgrel = 2
+ pkgrel = 3
url = https://www.vmware.com/products/workstation-for-linux.html
install = vmware-workstation.install
arch = x86_64
@@ -55,7 +55,7 @@ pkgbase = vmware-workstation
sha256sums = fe1b1be8297f4170406f97dd1f8b385d911faf45afe19cbc0c26b8092b3ddf8d
sha256sums = 10562d11d50edab9abc2b29c8948714edcb9b084f99b3766d07ddd21259e372e
sha256sums = 273d4357599a3e54259c78cc49054fef8ecfd2c2eda35cbcde3a53a62777a5ac
- sha256sums = 1060b5d45caeda5119b220fab4e1ece398af34d75131139a5dc6f74ee06672c3
- sha256sums = 4384bb0ed7e4d17445641874e87cf53defa7c613e7a649349bbfbe4cb3b1b4f7
+ sha256sums = 001844356d381d29d2b40ba53df5c902b487471d64cfb4df39498c5d2189e35b
+ sha256sums = 5c05b0188543c085e1caf2795b6b151399396f4f437390aca6f6983714d5f48c
pkgname = vmware-workstation
diff --git a/PKGBUILD b/PKGBUILD
index acb8018711b8..2021a59a0358 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -17,7 +17,7 @@ pkgname=vmware-workstation
pkgver=16.2.1
_buildver=18811642
_pkgver=${pkgver}_${_buildver}
-pkgrel=2
+pkgrel=3
pkgdesc='The industry standard for running multiple operating systems as virtual machines on a single Linux PC.'
arch=(x86_64)
url='https://www.vmware.com/products/workstation-for-linux.html'
@@ -91,8 +91,8 @@ sha256sums=(
'10562d11d50edab9abc2b29c8948714edcb9b084f99b3766d07ddd21259e372e'
'273d4357599a3e54259c78cc49054fef8ecfd2c2eda35cbcde3a53a62777a5ac'
- '1060b5d45caeda5119b220fab4e1ece398af34d75131139a5dc6f74ee06672c3'
- '4384bb0ed7e4d17445641874e87cf53defa7c613e7a649349bbfbe4cb3b1b4f7'
+ '001844356d381d29d2b40ba53df5c902b487471d64cfb4df39498c5d2189e35b'
+ '5c05b0188543c085e1caf2795b6b151399396f4f437390aca6f6983714d5f48c'
)
options=(!strip emptydirs)
diff --git a/vmmon.patch b/vmmon.patch
index f2e32d6d0270..56f7da0a9828 100644
--- a/vmmon.patch
+++ b/vmmon.patch
@@ -12,3 +12,69 @@
# Header directory for the running kernel
ifdef LINUXINCLUDE
+From 9a6a17fe0bc6d1ab9e0e0dfa8d587b12a21cd49e Mon Sep 17 00:00:00 2001
+From: Michal Kubecek <mkubecek@suse.cz>
+Date: Sun, 17 Oct 2021 17:06:26 +0200
+Subject: [PATCH] modules: include <linux/stdarg.h> when available
+
+Workstation/Player code changes between 16.1.2 and 16.2.0 added some
+includes of <stdarg.h> which is interpreted as regular (userspace) header
+file in /usr/include. Shortly before that, mainline commit c0891ac15f04
+("isystem: ship and use stdarg.h") added minimalistic kernel version of
+stdarg.h to avoid including userspace headers from kernel code. As the
+kernel version is sometimes included via other header files, build against
+5.15 kernel results in a lot of warnings (about redefined va_* macros).
+
+Include <stdarg.h> when building against kernel < 5.15 and <linux/stdarg.h>
+when building against kernel >= 5.15.
+---
+ vmmon-only/include/vm_assert.h | 4 ++++
+ vmnet-only/vm_assert.h | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/vmmon-only/include/vm_assert.h b/vmmon-only/include/vm_assert.h
+index 4a69dcc..2817a08 100644
+--- a/vmmon-only/include/vm_assert.h
++++ b/vmmon-only/include/vm_assert.h
+@@ -40,7 +40,11 @@
+
+ // XXX not necessary except some places include vm_assert.h improperly
+ #include "vm_basic_types.h"
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
+ #include <stdarg.h>
++#else
++#include <linux/stdarg.h>
++#endif
+
+ #ifdef __cplusplus
+ extern "C" {
+From 4232f780eb114f22498f3274eaeef81d8c63f2ab Mon Sep 17 00:00:00 2001
+From: Michal Kubecek <mkubecek@suse.cz>
+Date: Tue, 9 Nov 2021 09:01:57 +0100
+Subject: [PATCH] modules: fix stddef.h include
+
+After mainline commit 04e85bbf71c9 ("isystem: delete global -isystem
+compile option") in 5.16-rc1, vm_basic_types.h in both vmmon and vmnet
+does not find (userspace) stddef.h any more. As it should not include this
+header anyway, fix the include directives to include stddef.h from kernel.
+
+Kernel version of stddef.h has been available since the beginning of git so
+that it is safe to include it regardless of kernel version.
+---
+ vmmon-only/include/vm_basic_defs.h | 2 +-
+ vmnet-only/vm_basic_defs.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/vmmon-only/include/vm_basic_defs.h b/vmmon-only/include/vm_basic_defs.h
+index 0ec30b3..b920e2d 100644
+--- a/vmmon-only/include/vm_basic_defs.h
++++ b/vmmon-only/include/vm_basic_defs.h
+@@ -51,7 +51,7 @@
+ * C90 7.17, C99 7.19, C11 7.19
+ */
+ #if !defined(VMKERNEL)
+-# include <stddef.h>
++# include <linux/stddef.h>
+ #else
+ /*
+ * Vmkernel's bogus __FreeBSD__ value causes gcc <stddef.h> to break.
diff --git a/vmnet.patch b/vmnet.patch
index 109bae29c29b..4686fa43db46 100644
--- a/vmnet.patch
+++ b/vmnet.patch
@@ -12,9 +12,9 @@
# Header directory for the running kernel
ifdef LINUXINCLUDE
-# Fixing VMWare Player on Linux when using DHCP addresses: https://www.nikhef.nl/~janjust/vmnet/
--- a/vmnet/userif.c
+++ b/vmnet/userif.c
+# Fixing VMWare Player on Linux when using DHCP addresses: https://www.nikhef.nl/~janjust/vmnet/
@@ -998,6 +998,9 @@
userIf = (VNetUserIF *)port->jack.private;
hubJack = port->jack.peer;
@@ -25,3 +25,69 @@
if (port->jack.state == FALSE || hubJack == NULL) {
return -EINVAL;
}
+From 9a6a17fe0bc6d1ab9e0e0dfa8d587b12a21cd49e Mon Sep 17 00:00:00 2001
+From: Michal Kubecek <mkubecek@suse.cz>
+Date: Sun, 17 Oct 2021 17:06:26 +0200
+Subject: [PATCH] modules: include <linux/stdarg.h> when available
+
+Workstation/Player code changes between 16.1.2 and 16.2.0 added some
+includes of <stdarg.h> which is interpreted as regular (userspace) header
+file in /usr/include. Shortly before that, mainline commit c0891ac15f04
+("isystem: ship and use stdarg.h") added minimalistic kernel version of
+stdarg.h to avoid including userspace headers from kernel code. As the
+kernel version is sometimes included via other header files, build against
+5.15 kernel results in a lot of warnings (about redefined va_* macros).
+
+Include <stdarg.h> when building against kernel < 5.15 and <linux/stdarg.h>
+when building against kernel >= 5.15.
+---
+ vmmon-only/include/vm_assert.h | 4 ++++
+ vmnet-only/vm_assert.h | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/vmnet-only/vm_assert.h b/vmnet-only/vm_assert.h
+index cf34446..430c74d 100644
+--- a/vmnet-only/vm_assert.h
++++ b/vmnet-only/vm_assert.h
+@@ -40,7 +40,11 @@
+
+ // XXX not necessary except some places include vm_assert.h improperly
+ #include "vm_basic_types.h"
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
+ #include <stdarg.h>
++#else
++#include <linux/stdarg.h>
++#endif
+
+ #ifdef __cplusplus
+ extern "C" {
+From 4232f780eb114f22498f3274eaeef81d8c63f2ab Mon Sep 17 00:00:00 2001
+From: Michal Kubecek <mkubecek@suse.cz>
+Date: Tue, 9 Nov 2021 09:01:57 +0100
+Subject: [PATCH] modules: fix stddef.h include
+
+After mainline commit 04e85bbf71c9 ("isystem: delete global -isystem
+compile option") in 5.16-rc1, vm_basic_types.h in both vmmon and vmnet
+does not find (userspace) stddef.h any more. As it should not include this
+header anyway, fix the include directives to include stddef.h from kernel.
+
+Kernel version of stddef.h has been available since the beginning of git so
+that it is safe to include it regardless of kernel version.
+---
+ vmmon-only/include/vm_basic_defs.h | 2 +-
+ vmnet-only/vm_basic_defs.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/vmnet-only/vm_basic_defs.h b/vmnet-only/vm_basic_defs.h
+index 0ec30b3..b920e2d 100644
+--- a/vmnet-only/vm_basic_defs.h
++++ b/vmnet-only/vm_basic_defs.h
+@@ -51,7 +51,7 @@
+ * C90 7.17, C99 7.19, C11 7.19
+ */
+ #if !defined(VMKERNEL)
+-# include <stddef.h>
++# include <linux/stddef.h>
+ #else
+ /*
+ * Vmkernel's bogus __FreeBSD__ value causes gcc <stddef.h> to break.