]> git.pld-linux.org Git - packages/VMware-workstation.git/blobdiff - VMware-workstation.spec
- add kernel epoch, adapterized
[packages/VMware-workstation.git] / VMware-workstation.spec
index 4e23d07f0ed2b8d6534ff8ed16022ea004e7df73..25bbb443ec3eea674e324c91e2a987c20c7479dc 100644 (file)
 %if %{with kernel24}
 %define         _kernelsrcdir          /usr/src/linux-2.4
 %endif
+
+%ifarch %{x8664}
+%undefine      with_userspace
+%endif
 #
-%define                _ver    5.0.0
-%define                _build  13124
-%define                _rel    2
-%define                _urel   96
+%define                _ver    5.5.1
+%define                _build  19175
+%define                _rel    0.2
+%define                _urel   101
+%define                _ccver  %(rpm -q --qf "%{VERSION}" gcc)
 #
 Summary:       VMware Workstation
 Summary(pl):   VMware Workstation - wirtualna platforma dla stacji roboczej
@@ -30,9 +35,9 @@ Release:      %{_rel}
 License:       custom, non-distributable
 Group:         Applications/Emulators
 Source0:       http://download3.vmware.com/software/wkst/%{name}-%{_ver}-%{_build}.tar.gz
-# NoSource0-md5:       91821fc2649749911f0e2d0ca37b3eb8
+# NoSource0-md5:       6101deb381beb49f5b99cb1f8a81a532
 Source1:       http://knihovny.cvut.cz/ftp/pub/vmware/vmware-any-any-update%{_urel}.tar.gz
-# Source1-md5: 79dd91c65f3719bb7847d63b314706c3
+# Source1-md5: b3ce457f5b9ae8b606fd70f56084877d
 Source2:       %{name}.init
 Source3:       %{name}-vmnet.conf
 Source4:       %{name}.png
@@ -44,13 +49,14 @@ Patch1:             %{name}-run_script.patch
 NoSource:      0
 URL:           http://www.vmware.com/
 BuildRequires: gcc-c++
-%{?with_dist_kernel:BuildRequires:     kernel-module-build >= 2.6.7}
+%{?with_dist_kernel:BuildRequires:     kernel-module-build >= 3:2.6.7}
 BuildRequires: rpm-perlprov
-BuildRequires: rpmbuild(macros) >= 1.217
+BuildRequires: rpmbuild(macros) >= 1.268
 BuildRequires: sed >= 4.0
 Requires:      kernel(vmmon) = %{version}-%{_rel}
 Requires:      libgnomecanvasmm
-ExclusiveArch: %{ix86}
+Requires:      libview >= 0.5.5-2
+ExclusiveArch: %{ix86} %{x8664}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _noautoprovfiles %{_libdir}/vmware/lib/.*\.so.*
@@ -271,16 +277,21 @@ SMP kernel module for VMware Workstation - vmnet-smp.
 Modu³y j±dra SMP dla VMware Workstation - vmnet-smp.
 
 %prep
-%setup -q -n vmware-distrib
+#%setup -q -n vmware-distrib
 %setup -qDT -n vmware-distrib -a1
+#mkdir vmware-any-any-update%{_urel}
 cd vmware-any-any-update%{_urel}
 tar xf vmmon.tar
 tar xf vmnet.tar
-%patch0 -p0
+#tar xf ../lib/modules/source/vmmon.tar
+#tar xf ../lib/modules/source/vmnet.tar
+#%patch0 -p0
 cp -a vmmon-only{,.clean}
 cp -a vmnet-only{,.clean}
+sed -e 's/filter x86_64%/filter x86_64% amd64% ia64%/' \
+       -i vmnet-only.clean/Makefile.kernel
 cd -
-%patch1 -p1
+#%patch1 -p1
 
 %build
 sed -i 's:vm_db_answer_LIBDIR:VM_LIBDIR:g;s:vm_db_answer_BINDIR:VM_BINDIR:g' bin/vmware
@@ -309,18 +320,33 @@ for mod in vmmon vmnet ; do
                rm -rf $mod-only
                cp -a $mod-only.clean $mod-only
                cd $mod-only
-               install -d include/{linux,config}
-               touch include/config/MARKER
-               ln -sf %{_kernelsrcdir}/config-$cfg .config
-               ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
-               ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
-               ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm-%{_target_base_arch}
-               ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
+               install -d o/include/linux
+               ln -sf %{_kernelsrcdir}/config-$cfg o/.config
+               ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
+               ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
+       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)/' \
+                       -i ../vmmon-only/linux/driver.c
+               sed -e 's/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(vnetHubLock)/' \
+                       -i ../vmnet-only/hub.c
+               sed -e 's/RW_LOCK_UNLOCKED/RW_LOCK_UNLOCKED(vnetPeerLock)/' \
+                       -i ../vmnet-only/driver.c
+       fi
+       %if %{with dist_kernel}
+               %{__make} -C %{_kernelsrcdir} O=$PWD/o prepare scripts
+       %else
+               install -d o/include/config
+               touch o/include/config/MARKER
+               ln -sf %{_kernelsrcdir}/scripts o/scripts
+               %endif
                %{__make} -C %{_kernelsrcdir} modules \
                        VMWARE_VER=VME_V5 \
-                       M=$PWD O=$PWD \
+                       SRCROOT=$PWD \
+                       M=$PWD O=$PWD/o \
                        VM_KBUILD=26 \
-                       %{?with_verbose:V=1}
+                       %{?with_verbose:V=1} \
+                       VM_CCVER=%{_ccver}
                mv -f $mod.ko ../built/$mod-$cfg.ko
                cd -
        done
@@ -329,7 +355,7 @@ done
 %else
 for mod in vmmon vmnet ; do
        rm -rf $mod-only
-       tar xf $mod.tar
+       tar xf ../lib/modules/source/$mod.tar
        cd $mod-only
        sed -i s/'^HEADER_DIR.*'/'HEADER_DIR = \/usr\/src\/linux-2.4\/include'/ Makefile
        sed -i s/'^BUILD_DIR.*'/'BUILD_DIR = .'/ Makefile
@@ -371,7 +397,7 @@ install -d \
        $RPM_BUILD_ROOT%{_sysconfdir}/vmware \
        $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/{nat,dhcpd} \
        $RPM_BUILD_ROOT%{_bindir} \
-       $RPM_BUILD_ROOT%{_libdir}/vmware/bin \
+       $RPM_BUILD_ROOT%{_libdir}/vmware/{bin,share/pixmaps} \
        $RPM_BUILD_ROOT%{_mandir} \
        $RPM_BUILD_ROOT%{_pixmapsdir} \
        $RPM_BUILD_ROOT%{_desktopdir} \
@@ -424,6 +450,8 @@ install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
 touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases
 touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases~
 
+install lib/share/pixmaps/* $RPM_BUILD_ROOT%{_libdir}/vmware/share/pixmaps
+
 install bin/*-* $RPM_BUILD_ROOT%{_bindir}
 install lib/bin/vmware-vmx $RPM_BUILD_ROOT%{_libdir}/vmware/bin
 
@@ -443,6 +471,7 @@ EOF
 install bin/vmware $RPM_BUILD_ROOT%{_bindir}
 install lib/bin/vmware $RPM_BUILD_ROOT%{_libdir}/vmware/bin
 cp -r  lib/lib $RPM_BUILD_ROOT%{_libdir}/vmware
+cp -r  lib/libconf $RPM_BUILD_ROOT%{_libdir}/vmware
 %else
 install lib/bin/vmware $RPM_BUILD_ROOT%{_bindir}
 %endif
@@ -453,17 +482,11 @@ rm -rf $RPM_BUILD_ROOT
 
 %post networking
 /sbin/chkconfig --add vmnet
-if [ -r /var/lock/subsys/vmnet ]; then
-       /etc/rc.d/init.d/vmnet restart >&2
-else
-       echo "Run \"/etc/rc.d/init.d/vmnet start\" to start VMware networking service."
-fi
+%service vmnet restart "VMware networking service"
 
 %preun networking
 if [ "$1" = "0" ]; then
-       if [ -r /var/lock/subsys/vmnet ]; then
-               /etc/rc.d/init.d/vmnet stop >&2
-       fi
+       %service vmnet stop
        /sbin/chkconfig --del vmnet
 fi
 
@@ -534,13 +557,15 @@ fi
 %{_libdir}/vmware/isoimages
 %if %{with internal_libs}
 %attr(755,root,root) %{_libdir}/vmware/bin/vmware
-%{_libdir}/vmware/lib
+%dir %{_libdir}/vmware/lib
+%{_libdir}/vmware/lib/lib*
 %attr(755,root,root) %{_libdir}/vmware/lib/wrapper-gtk24.sh
 %endif
 %{_libdir}/vmware/licenses
 %dir %{_libdir}/vmware/messages
 %{_libdir}/vmware/messages/en
 %lang(ja) %{_libdir}/vmware/messages/ja
+%{_libdir}/vmware/share
 %{_libdir}/vmware/xkeymap
 %{_mandir}/man1/*
 %attr(1777,root,root) %dir /var/run/vmware
This page took 0.071599 seconds and 4 git commands to generate.