From e3c25a84b29b07752d77716af2877ce3012ddff9 Mon Sep 17 00:00:00 2001 From: Jakub Bogusz Date: Sat, 2 Oct 2021 18:40:41 +0200 Subject: [PATCH] - up to 16.1.2 (build 17966106); now only x86_64, vmmon and vmnet modules --- VMware-player.spec | 167 ++++++--------------------------------------- installer.patch | 18 ++--- 2 files changed, 30 insertions(+), 155 deletions(-) diff --git a/VMware-player.spec b/VMware-player.spec index 9428c06..20b077b 100644 --- a/VMware-player.spec +++ b/VMware-player.spec @@ -1,5 +1,6 @@ # TODO # - sync modules -pl +# # Conditional build: %bcond_without dist_kernel # without distribution kernel %bcond_without kernel # don't build kernel modules @@ -14,8 +15,8 @@ %undefine with_userspace %endif -%define ver 3.0.0 -%define buildid 203739 +%define ver 16.1.2 +%define buildid 17966106 %define rel 0.1 # point to some working url @@ -29,14 +30,11 @@ Release: %{rel} License: custom, non-distributable Group: Applications/Emulators # https://www.vmware.com/go/downloadplayer/ -Source0: %{download_url}VMware-Player-%{ver}-%{buildid}.i386.bundle -# NoSource0-md5: 1c273da70347a381dc685b5fdf922e7d +Source0: %{download_url}VMware-Player-%{ver}-%{buildid}.x86_64.bundle +# NoSource0-md5: f50090a394730f20c0ae9c715e56f6ed NoSource: 0 -Source1: %{download_url}VMware-Player-%{ver}-%{buildid}.x86_64.bundle -# NoSource1-md5: cf8ac6a75e4fd51a8c9c527a594f5ffc -NoSource: 1 Patch0: installer.patch -URL: http://www.vmware.com/ +URL: https://www.vmware.com/products/workstation-player.html %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.7} BuildRequires: rpmbuild(macros) >= 1.268 BuildRequires: sed >= 4.0 @@ -77,11 +75,13 @@ Requires: xorg-lib-libXft Requires: xorg-lib-libXinerama Requires: xorg-lib-libXrandr Requires: xorg-lib-libXrender -ExclusiveArch: %{ix86} %{x8664} +ExclusiveArch: %{x8664} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _noautoprovfiles %{_libdir}/vmware/lib/.*\.so.* +%define debug_package %{nil} + %description VMware Player Virtual Platform is a thin software layer that allows multiple guest operating systems to run concurrently on a single @@ -133,43 +133,6 @@ VMware networking utilities. %description networking -l pl.UTF-8 Narzędzia VMware do obsługi sieci. -%package -n kernel%{_alt_kernel}-misc-vmci -Summary: VMware Virtual Machine Communication Interface (VMCI) -Summary(pl.UTF-8): VMCI (Virtual Machine Communication Interface) - interfejs komunikacyjny VMware -Release: %{rel}@%{_kernel_ver_str} -Group: Base/Kernel -Requires(post,postun): /sbin/depmod -Requires: dev >= 2.9.0-7 -%if %{with dist_kernel} -%requires_releq_kernel -Requires(postun): %releq_kernel -%endif - -%description -n kernel%{_alt_kernel}-misc-vmci -VMware Virtual Machine Communication Interface (VMCI). - -%description -n kernel%{_alt_kernel}-misc-vmci -l pl.UTF-8 -Moduł jądra Linuksa będący interfejsem komunikacyjnym VMware (VMCI - -Virtual Machine Communication Interface). - -%package -n kernel%{_alt_kernel}-misc-vmblock -Summary: VMware Blocking File System -Summary(pl.UTF-8): Moduł jądra dla VMware Player -Release: %{rel}@%{_kernel_ver_str} -Group: Base/Kernel -Requires(post,postun): /sbin/depmod -Requires: dev >= 2.9.0-7 -%if %{with dist_kernel} -%requires_releq_kernel -Requires(postun): %releq_kernel -%endif - -%description -n kernel%{_alt_kernel}-misc-vmblock -VMware Blocking File System. - -%description -n kernel%{_alt_kernel}-misc-vmblock -l pl.UTF-8 -Moduły jądra dla VMware Player - vmblock. - %package -n kernel%{_alt_kernel}-misc-vmmon Summary: VMware Virtual Machine Monitor Summary(pl.UTF-8): Moduł jądra dla VMware Player @@ -206,34 +169,10 @@ VMware Virtual Networking Driver. %description -n kernel%{_alt_kernel}-misc-vmnet -l pl.UTF-8 Moduły jądra dla VMware Player - vmnet. -%package -n kernel%{_alt_kernel}-misc-vsock -Summary: VMware Virtual Socket Family -Summary(pl.UTF-8): Obsługa Virtual Socket Family - rodziny gniazd wirtualnych VMware -Release: %{rel}@%{_kernel_ver_str} -Group: Base/Kernel -Requires(post,postun): /sbin/depmod -Requires: dev >= 2.9.0-7 -%if %{with dist_kernel} -%requires_releq_kernel -Requires(postun): %releq_kernel -%endif -Requires: kernel%{_alt_kernel}-misc-vmci = %{version}-%{rel}@%{_kernel_ver_str} - -%description -n kernel%{_alt_kernel}-misc-vsock -VMware Virtual Socket Family. - -%description -n kernel%{_alt_kernel}-misc-vsock -l pl.UTF-8 -Moduł jądra Linuksa obsługujący rodzinę gniazd wirtualnych VMware -(Virtual Socket Family). - %prep %setup -qcT -%ifarch %{ix86} + export SOURCE=%{SOURCE0} -%endif -%ifarch %{x8664} -export SOURCE=%{SOURCE1} -%endif # extract installer shell blob %{__sed} -ne '1,/^exit/{s,$0,$SOURCE,;p}' $SOURCE > install.sh @@ -243,77 +182,33 @@ chmod a+x install.sh ./install.sh --extract bundles -cd bundles/vmware-player-app/lib/modules -%{__tar} xf source/vmblock.tar -%{__tar} xf source/vmci.tar +cd bundles/vmware-vmx/lib/modules %{__tar} xf source/vmmon.tar %{__tar} xf source/vmnet.tar -%{__tar} xf source/vsock.tar -mv vmmon-only/linux/driver.c{,.dist} -mv vmnet-only/hub.c{,.dist} -mv vmnet-only/driver.c{,.dist} -rm -rf binary # unusable cd - -find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f - %build %if %{with kernel} -cd bundles/vmware-player-app/lib/modules - -%build_kernel_modules -C vmblock-only -m vmblock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} -%build_kernel_modules -C vmci-only -m vmci SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} -%build_kernel_modules -C vmmon-only -m vmmon SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} <<'EOF' -if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then - sed -e '/pollQueueLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(pollQueueLock)/' \ - -e '/timerLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(timerLock)/' \ - linux/driver.c.dist > linux/driver.c -else - cat linux/driver.c.dist > linux/driver.c -fi -EOF - -%build_kernel_modules -C vmnet-only -m vmnet SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} <<'EOF' -if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then - sed -e 's/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(vnetHubLock)/' \ - hub.c.dist > hub.c - sed -e 's/RW_LOCK_UNLOCKED/RW_LOCK_UNLOCKED(vnetPeerLock)/' \ - driver.c.dist > driver.c -else - cat hub.c.dist > hub.c - cat driver.c.dist > driver.c -fi -EOF - -cp -a vmci-only/Module.symvers vsock-only -%build_kernel_modules -C vsock-only -m vsock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} -c +cd bundles/vmware-vmx/lib/modules + +%build_kernel_modules -C vmmon-only -m vmmon SRCROOT=$PWD VM_KBUILD=yes + +%build_kernel_modules -C vmnet-only -m vmnet SRCROOT=$PWD VM_KBUILD=yes + +cd ../../../.. %endif %install rm -rf $RPM_BUILD_ROOT + %if %{with kernel} -%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmblock-only/vmblock -d misc -%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmci-only/vmci -d misc -%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmmon-only/vmmon -d misc -%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmnet-only/vmnet -d misc -%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vsock-only/vsock -d misc +%install_kernel_modules -m bundles/vmware-vmx/lib/modules/vmmon-only/vmmon -d misc +%install_kernel_modules -m bundles/vmware-vmx/lib/modules/vmnet-only/vmnet -d misc %endif %clean rm -rf $RPM_BUILD_ROOT -%post -n kernel%{_alt_kernel}-misc-vmblock -%depmod %{_kernel_ver} - -%postun -n kernel%{_alt_kernel}-misc-vmblock -%depmod %{_kernel_ver} - -%post -n kernel%{_alt_kernel}-misc-vmci -%depmod %{_kernel_ver} - -%postun -n kernel%{_alt_kernel}-misc-vmci -%depmod %{_kernel_ver} - %post -n kernel%{_alt_kernel}-misc-vmmon %depmod %{_kernel_ver} @@ -326,26 +221,11 @@ rm -rf $RPM_BUILD_ROOT %postun -n kernel%{_alt_kernel}-misc-vmnet %depmod %{_kernel_ver} -%post -n kernel%{_alt_kernel}-misc-vsock -%depmod %{_kernel_ver} - -%postun -n kernel%{_alt_kernel}-misc-vsock -%depmod %{_kernel_ver} - %if %{with userspace} %files %defattr(644,root,root,755) %endif -%if %{with kernel} -%files -n kernel%{_alt_kernel}-misc-vmblock -%defattr(644,root,root,755) -/lib/modules/%{_kernel_ver}/misc/vmblock.ko* - -%files -n kernel%{_alt_kernel}-misc-vmci -%defattr(644,root,root,755) -/lib/modules/%{_kernel_ver}/misc/vmci.ko* - %files -n kernel%{_alt_kernel}-misc-vmmon %defattr(644,root,root,755) /lib/modules/%{_kernel_ver}/misc/vmmon.ko* @@ -353,8 +233,3 @@ rm -rf $RPM_BUILD_ROOT %files -n kernel%{_alt_kernel}-misc-vmnet %defattr(644,root,root,755) /lib/modules/%{_kernel_ver}/misc/vmnet.ko* - -%files -n kernel%{_alt_kernel}-misc-vsock -%defattr(644,root,root,755) -/lib/modules/%{_kernel_ver}/misc/vsock.ko* -%endif diff --git a/installer.patch b/installer.patch index 4838d2a..6fee8d0 100644 --- a/installer.patch +++ b/installer.patch @@ -1,6 +1,6 @@ ---- VMware-player-3.0.0.203739/install.sh 2009-12-12 18:04:16.883512711 +0200 -+++ VMware-player-3.0.0.203739/install.sh 2009-12-12 17:57:25.533346342 +0200 -@@ -18,7 +18,7 @@ +--- VMware-player-16.1.2.17966106/install.sh.orig 2021-10-02 16:18:51.036146585 +0200 ++++ VMware-player-16.1.2.17966106/install.sh 2021-10-02 16:19:43.259477667 +0200 +@@ -18,7 +18,7 @@ if [ -z "$BASH" ]; then fi # dash flips out of $opts is quoted, so don't. @@ -9,7 +9,7 @@ echo "Unable to restart with bash shell" exit 1 fi -@@ -85,7 +85,7 @@ +@@ -85,7 +85,7 @@ on_exit() { fi } @@ -18,7 +18,7 @@ trap "" USR1 # Retrives and sets the various lengths that are extracted from the -@@ -182,7 +182,7 @@ +@@ -182,7 +182,7 @@ is_relative() { # Returns: # None extract_self() { @@ -26,8 +26,8 @@ + VMIS_TEMP=$(pwd) local file="$SOURCE" local filter="" - local bootstrapper="$PREPAYLOAD"/bootstrapper-gtk -@@ -213,7 +213,7 @@ + +@@ -206,7 +206,7 @@ extract_self() { } extract_prepayload() { @@ -36,7 +36,7 @@ local file="$SOURCE" if [ ! -d "$PREPAYLOAD" ]; then -@@ -568,6 +568,7 @@ +@@ -575,6 +575,7 @@ main() { esac fi @@ -44,7 +44,7 @@ if ! set_lengths "$SOURCE"; then echo "Unable to extract lengths from bundle." exit 1 -@@ -575,6 +576,9 @@ +@@ -582,6 +583,9 @@ main() { extract_prepayload extract_self -- 2.44.0