# But hey, it's at least free ;-)
#
# I probably won't have time to work on this, switching to vmware-player.
-#
+# TODO:
+# problem with libsexy/libsexymm:
+# ln -s /usr/lib/libsexy.so.2 /usr/lib/libsexy.so.1
+# ln -s /usr/lib/libsexymm.so.2 /usr/lib/libsexymm.so.1
#
# Conditional build:
%bcond_without dist_kernel # without distribution kernel
%bcond_without kernel # don't build kernel modules
-%bcond_without smp # without SMP kernel modules
%bcond_without userspace # don't build userspace utilities
-%bcond_with kernel24 # build kernel24 modules (disable kernel26)
%bcond_with internal_libs # internal libs stuff
%bcond_with verbose # verbose build (V=1)
#
%include /usr/lib/rpm/macros.perl
-%if %{with kernel24}
-%define _kernelsrcdir /usr/src/linux-2.4
-%endif
#
-%define _ver 1.0.0
-%define _build 28343
-%define _rel 0.1
-%define _urel 104
-%define _ccver %(rpm -q --qf "%{VERSION}" gcc)
+%define ver 2.0
+%define subver 63231
+%define rel 0.1
+%define urel 115
+%define ccver %(rpm -q --qf %{V} gcc)
#
Summary: VMware Server
Summary(pl.UTF-8): VMware Server - wirtualna platforma dla stacji roboczej
Name: VMware-server
-Version: %{_ver}.%{_build}
-Release: %{_rel}
+Version: %{ver}.%{subver}
+Release: %{rel}
License: custom, non-distributable
Group: Applications/Emulators
-Source0: http://download3.vmware.com/software/vmserver/%{name}-%{_ver}-%{_build}.tar.gz
-# NoSource0-md5: a25b4beb53785c05ef3b3077d87f6e2b
-Source1: http://download3.vmware.com/software/vmserver/VMware-mui-%{_ver}-%{_build}.tar.gz
-# NoSource1-md5: 0de45c02fcaa30ac41517b687f34b29b
-Source2: http://knihovny.cvut.cz/ftp/pub/vmware/vmware-any-any-update%{_urel}.tar.gz
-# NoSource2-md5: 8cba16d3f6b3723b43d555a5f7cbf850
-Source3: %{name}.init
-Source4: %{name}-vmnet.conf
-Source5: %{name}.png
-Source6: %{name}.desktop
-Source7: %{name}-nat.conf
-Source8: %{name}-dhcpd.conf
+# http://www.vmware.com/beta/server/download.html
+Source0: http://download3.vmware.com/software/vmserver/%{name}-e.x.p-%{subver}.i386.tar.gz
+# NoSource0-md5: 853247ff0e313f34bd0c3052de8e2c28
+Source1: http://download3.vmware.com/software/vmserver/%{name}-e.x.p-%{subver}.x86_64.tar.gz
+# NoSource1-md5: 0d36ae02640d913251fd11918f798da3
+Source2: http://download3.vmware.com/software/vmserver/VMware-vix-e.x.p-%{subver}.i386.tar.gz
+# NoSource2-md5: c7d162fb8c805143ea5b40e7f62ef4da
+Source3: http://download3.vmware.com/software/vmserver/VMware-vix-e.x.p-%{subver}.x86_64.tar.gz
+# NoSource3-md5: 10124d4747e7a579a270376458b7a77b
+Source4: http://knihovny.cvut.cz/ftp/pub/vmware/vmware-any-any-update%{urel}.tar.gz
+# NoSource4-md5: ab33ff7a799fee77f0f4ba5667cd4b9a
+Source5: %{name}.init
+Source6: %{name}-vmnet.conf
+Source7: %{name}.png
+Source8: %{name}.desktop
+Source9: %{name}-nat.conf
+Source10: %{name}-dhcpd.conf
Patch0: %{name}-Makefile.patch
Patch1: %{name}-run_script.patch
Patch2: %{name}-init_pl.patch
NoSource: 0
NoSource: 1
NoSource: 2
+NoSource: 3
+NoSource: 4
URL: http://www.vmware.com/
-BuildRequires: gcc-c++
-%{?with_dist_kernel:BuildRequires: kernel-module-build >= 3:2.6.7}
+%{?with_dist_kernel:BuildRequires: kernel-module-build >= 3:2.6.20.2}
+BuildRequires: libstdc++-devel
BuildRequires: rpm-perlprov
-BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: rpmbuild(macros) >= 1.379
BuildRequires: sed >= 4.0
Requires: libgnomecanvasmm
-ExclusiveArch: %{ix86}
+Requires: libsexy
+Requires: libsexymm
+ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _noautoprovfiles %{_libdir}/vmware*/lib/.*\.so.*
%package -n kernel-misc-vmmon
Summary: Kernel module for VMware Server
Summary(pl.UTF-8): Moduł jądra dla VMware Server
-Release: %{_rel}@%{_kernel_ver_str}
+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_up
-Requires(postun): %releq_kernel_up
+%requires_releq_kernel
+Requires(postun): %releq_kernel
%endif
-Provides: kernel(vmmon) = %{version}-%{_rel}
+Provides: kernel(vmmon) = %{version}-%{rel}
%description -n kernel-misc-vmmon
Kernel modules for VMware Server - vmmon.
%package -n kernel-misc-vmnet
Summary: Kernel module for VMware Server
Summary(pl.UTF-8): Moduł jądra dla VMware Server
-Release: %{_rel}@%{_kernel_ver_str}
+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_up
-Requires(postun): %releq_kernel_up
+%requires_releq_kernel
+Requires(postun): %releq_kernel
%endif
-Provides: kernel(vmnet) = %{version}-%{_rel}
+Provides: kernel(vmnet) = %{version}-%{rel}
%description -n kernel-misc-vmnet
Kernel modules for VMware Server - vmnet.
%description -n kernel-misc-vmnet -l pl.UTF-8
Moduły jądra dla VMware Server - vmnet.
-%package -n kernel-smp-misc-vmmon
-Summary: SMP kernel module for VMware Server
-Summary(pl.UTF-8): Moduł jądra SMP dla VMware Server
-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_smp
-Requires(postun): %releq_kernel_smp
-%endif
-Provides: kernel(vmmon) = %{version}-%{_rel}
-
-%description -n kernel-smp-misc-vmmon
-SMP kernel modules fov VMware Server - vmmon-smp.
-
-%description -n kernel-smp-misc-vmmon -l pl.UTF-8
-Moduły jądra SMP dla VMware Server - vmmon-smp.
-
-%package -n kernel-smp-misc-vmnet
-Summary: SMP kernel module for VMware Server
-Summary(pl.UTF-8): Moduł jądra SMP dla VMware Server
-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_smp
-Requires(postun): %releq_kernel_smp
-%endif
-Provides: kernel(vmnet) = %{version}-%{_rel}
-
-%description -n kernel-smp-misc-vmnet
-SMP kernel module for VMware Server - vmnet-smp.
-
-%description -n kernel-smp-misc-vmnet -l pl.UTF-8
-Moduły jądra SMP dla VMware Server - vmnet-smp.
-
-%package -n kernel24-misc-vmmon
-Summary: Kernel module for VMware Server
-Summary(pl.UTF-8): Moduł jądra dla VMware Server
-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_up
-Requires(postun): %releq_kernel_up
-%endif
-Provides: kernel(vmmon) = %{version}-%{_rel}
-
-%description -n kernel24-misc-vmmon
-Kernel modules for VMware Server - vmmon.
-
-%description -n kernel24-misc-vmmon -l pl.UTF-8
-Moduły jądra dla VMware Server - vmmon.
-
-%package -n kernel24-misc-vmnet
-Summary: Kernel module for VMware Server
-Summary(pl.UTF-8): Moduł jądra dla VMware Server
-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_up
-Requires(postun): %releq_kernel_up
-%endif
-Provides: kernel(vmnet) = %{version}-%{_rel}
-
-%description -n kernel24-misc-vmnet
-Kernel modules for VMware Server - vmnet.
-
-%description -n kernel24-misc-vmnet -l pl.UTF-8
-Moduły jądra dla VMware Server - vmnet.
-
-%package -n kernel24-smp-misc-vmmon
-Summary: SMP kernel module for VMware Server
-Summary(pl.UTF-8): Moduł jądra SMP dla VMware Server
-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_smp
-Requires(postun): %releq_kernel_smp
-%endif
-Provides: kernel(vmmon) = %{version}-%{_rel}
-
-%description -n kernel24-smp-misc-vmmon
-SMP kernel modules fov VMware Server - vmmon-smp.
-
-%description -n kernel24-smp-misc-vmmon -l pl.UTF-8
-Moduły jądra SMP dla VMware Server - vmmon-smp.
-
-%package -n kernel24-smp-misc-vmnet
-Summary: SMP kernel module for VMware Server
-Summary(pl.UTF-8): Moduł jądra SMP dla VMware Server
-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_smp
-Requires(postun): %releq_kernel_smp
-%endif
-Provides: kernel(vmnet) = %{version}-%{_rel}
-
-%description -n kernel24-smp-misc-vmnet
-SMP kernel module for VMware Server - vmnet-smp.
-
-%description -n kernel24-smp-misc-vmnet -l pl.UTF-8
-Moduły jądra SMP dla VMware Server - vmnet-smp.
-
%prep
%setup -q -n vmware-server-distrib -a1 -a2
-tar zxf vmware-mui-distrib/console-distrib/%{name}-console-%{_ver}-%{_build}.tar.gz
-#cd vmware-any-any-update%{_urel}
+tar zxf vmware-mui-distrib/console-distrib/%{name}-console-%{ver}-%{subver}.tar.gz
+cp vmware-any-any-update%{urel}/{vmmon,vmnet}.tar lib/modules/source/
cd lib/modules/source
tar xf vmmon.tar
tar xf vmnet.tar
-%patch0 -p0
+#%patch0 -p0
cp -a vmmon-only{,.clean}
cp -a vmnet-only{,.clean}
cd -
%build
sed -i 's:vm_db_answer_LIBDIR:VM_LIBDIR:g;s:vm_db_answer_BINDIR:VM_BINDIR:g' bin/vmware
-cd vmware-any-any-update%{_urel}
+cd vmware-any-any-update%{urel}
chmod u+w ../lib/bin/vmware-vmx ../lib/bin-debug/vmware-vmx ../bin/vmnet-bridge
%if 0
rm -rf built
mkdir built
-%if !%{with kernel24}
for mod in vmmon vmnet ; do
- for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
+ for cfg in %{?with_dist_kernel:dist}%{!?with_dist_kernel:nondist}; do
if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
exit 1
fi
M=$PWD O=$PWD/o \
VM_KBUILD=26 \
%{?with_verbose:V=1} \
- VM_CCVER=%{_ccver}
+ VM_CCVER=%{ccver}
mv -f $mod.ko ../built/$mod-$cfg.ko
cd -
done
done
-
-%else
-for mod in vmmon vmnet ; do
- rm -rf $mod-only
- tar xf $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
-
-%if %{with smp}
- %{__make} \
- VM_KBUILD=no VMWARE_VER=VME_V5 \
- M=$PWD O=$PWD CC=%{kgcc} \
- INCLUDES="%{rpmcflags} -I. -D__KERNEL_SMP=1 -D__SMP__ -I%{_kernelsrcdir}/include"
- if [ -e $mod-xxx-* ]; then
- mv -f $mod-xxx-* ../built/$mod-smp.o
- else
- mv -f driver-*/$mod-xxx-* ../built/$mod-smp.o
- fi
-
- %{__make} VM_KBUILD=no clean
-%endif
- %{__make} \
- VM_KBUILD=no VMWARE_VER=VME_V5 \
- M=$PWD O=$PWD CC=%{kgcc} \
- INCLUDES="%{rpmcflags} -I. -I%{_kernelsrcdir}/include"
- if [ -e $mod-xxx-* ]; then
- mv -f $mod-xxx-* ../built/$mod.o
- else
- mv -f driver-*/$mod-xxx-* ../built/$mod.o
- fi
-
- cd ..
-done
-%endif # kernel24
-
%endif
%install
%if %{with kernel}
install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
-#cd vmware-any-any-update%{_urel}
+#cd vmware-any-any-update%{urel}
cd lib/modules/source
-%if !%{with kernel24}
-install built/vmmon-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
+install built/vmmon-%{?with_dist_kernel:dist}%{!?with_dist_kernel:nondist}.ko \
$RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmmon.ko
-install built/vmnet-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
+install built/vmnet-%{?with_dist_kernel:dist}%{!?with_dist_kernel:nondist}.ko \
$RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmnet.ko
-%if %{with smp} && %{with dist_kernel}
-install built/vmmon-smp.ko \
- $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vmmon.ko
-install built/vmnet-smp.ko \
- $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vmnet.ko
-%endif
-
-%else
-install built/vmmon.o \
- $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmmon.o
-install built/vmnet.o \
- $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmnet.o
-%if %{with smp} && %{with dist_kernel}
-install built/vmmon-smp.o \
- $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vmmon.o
-install built/vmnet-smp.o \
- $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vmnet.o
-%endif
-
-%endif
cd -
%endif
%if %{with userspace}
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vmnet
-install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet.conf
-install %{SOURCE5} $RPM_BUILD_ROOT%{_pixmapsdir}
-install %{SOURCE6} $RPM_BUILD_ROOT%{_desktopdir}
-install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/nat/nat.conf
-install %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
+install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vmnet
+install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet.conf
+install %{SOURCE7} $RPM_BUILD_ROOT%{_pixmapsdir}
+install %{SOURCE8} $RPM_BUILD_ROOT%{_desktopdir}
+install %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/nat/nat.conf
+install %{SOURCE10} $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~
%postun -n kernel-misc-vmnet
%depmod %{_kernel_ver}
-%post -n kernel-smp-misc-vmmon
-%depmod %{_kernel_ver}smp
-
-%postun -n kernel-smp-misc-vmmon
-%depmod %{_kernel_ver}smp
-
-%post -n kernel-smp-misc-vmnet
-%depmod %{_kernel_ver}smp
-
-%postun -n kernel-smp-misc-vmnet
-%depmod %{_kernel_ver}smp
-
-%post -n kernel24-misc-vmmon
-%depmod %{_kernel_ver}
-
-%postun -n kernel24-misc-vmmon
-%depmod %{_kernel_ver}
-
-%post -n kernel24-misc-vmnet
-%depmod %{_kernel_ver}
-
-%postun -n kernel24-misc-vmnet
-%depmod %{_kernel_ver}
-
-%post -n kernel24-smp-misc-vmmon
-%depmod %{_kernel_ver}smp
-
-%postun -n kernel24-smp-misc-vmmon
-%depmod %{_kernel_ver}smp
-
-%post -n kernel24-smp-misc-vmnet
-%depmod %{_kernel_ver}smp
-
-%postun -n kernel24-smp-misc-vmnet
-%depmod %{_kernel_ver}smp
-
%if %{with userspace}
%files
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/vmnet-sniffer
%attr(755,root,root) %{_bindir}/vmware-ping
%dir %{_sysconfdir}/vmware/vmnet8
+%dir %{_sysconfdir}/vmware/vmnet8/dhcpd
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
+%dir %{_sysconfdir}/vmware/vmnet8/nat
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/nat/nat.conf
%verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases*
%endif
%if %{with kernel}
-%if !%{with kernel24}
%files -n kernel-misc-vmmon
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/vmmon.ko*
%files -n kernel-misc-vmnet
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/vmnet.ko*
-
-%if %{with smp} && %{with dist_kernel}
-%files -n kernel-smp-misc-vmmon
-%defattr(644,root,root,755)
-/lib/modules/%{_kernel_ver}smp/misc/vmmon.ko*
-
-%files -n kernel-smp-misc-vmnet
-%defattr(644,root,root,755)
-/lib/modules/%{_kernel_ver}smp/misc/vmnet.ko*
-%endif
-
-%else
-%files -n kernel24-misc-vmmon
-%defattr(644,root,root,755)
-/lib/modules/%{_kernel_ver}/misc/vmmon.o*
-
-%files -n kernel24-misc-vmnet
-%defattr(644,root,root,755)
-/lib/modules/%{_kernel_ver}/misc/vmnet.o*
-
-%if %{with smp} && %{with dist_kernel}
-%files -n kernel24-smp-misc-vmmon
-%defattr(644,root,root,755)
-/lib/modules/%{_kernel_ver}smp/misc/vmmon.o*
-
-%files -n kernel24-smp-misc-vmnet
-%defattr(644,root,root,755)
-/lib/modules/%{_kernel_ver}smp/misc/vmnet.o*
-%endif
-
-%endif
-
%endif