Search
j0ke.net Open Build Service
>
Projects
>
virtualization
:
VMware
>
open-vm-tools
> Changes
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
Changes of Revision 8
[-]
[+]
Added
open-vm-tools.spec
@@ -0,0 +1,296 @@ +# +# spec file for package open-vm-tools +# +# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. +# This file and all modifications and additions to the pristine +# package are under the same license as the package itself. +# +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + +# exclude AMD PCnet32 LANCE pci.id from Supplements list [bnc#397554] +%define __find_supplements sh -c '/usr/lib/rpm/find-supplements %{name} | grep -v pci:v00001022d00002000' + +Name: open-vm-tools +Group: System/Emulators/PC +Summary: Open Virtual Machine Tools +Version: 2008.08.08 +Release: 1 +%define svn_rev 109361 +Url: http://open-vm-tools.sourceforge.net/ +License: BSD 3-Clause; GPL v2 only; LGPL v2.1 only +Source: %{name}-%{version}-%{svn_rev}.tar.bz2 +Source1: vmware-guest +Source2: vmware-user.desktop +Source3: vmware-toolbox.desktop +Source4: preamble +Source99: %{name}-%{version}-rpmlintrc +Patch0: %{name}-%{version}-kver.patch +Patch1: %{name}-%{version}-fix-Werror.patch +Patch2: %{name}-%{version}-str_c.patch +Patch3: %{name}-%{version}-2.6.27.kernels.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: gcc-c++ +BuildRequires: kernel-source kernel-syms module-init-tools +BuildRequires: procps libicu-devel pcre-devel libdnet-devel +BuildRequires: gtk2-devel xorg-x11-devel update-desktop-files +# liburiparser was not present before 11.0 +%if 0%{?suse_version} >= 1100 +BuildRequires: liburiparser-devel +%endif +PreReq: %insserv_prereq %fillup_prereq +PreReq: permissions +ExclusiveArch: %ix86 x86_64 +Requires: vmware-kmp +Supplements: modalias(pci:v000015ADd*sv*sd*bc*sc*i*) +%define vm_modules vmblock vmhgfs vmmemctl vmsync vmxnet vsock +%suse_kernel_module_package -n vmware -p %{SOURCE4} xen um + +%description +Open Virtual Machine Tools (open-vm-tools) are the open source +implementation of VMware Tools. They are a set of guest operating +system virtualization components that enhance performance and user +experience of virtual machines. As virtualization technology rapidly +becomes mainstream, each virtualization solution provider implements +their own set of tools and utilities to supplement the guest virtual +machine. However, most of the implementations are proprietary and are +tied to a specific virtualization platform. + +With the Open Virtual Machine Tools project, we are hoping to solve +this and other related problems. The tools are currently composed of +kernel modules for Linux and user-space programs for all VMware +supported Unix-like guest operating systems. They provide several +useful functions like: + +* File transfer between a host and guest + +* Improved memory management and network performance under + virtualization + +* General mechanisms and protocols for communication between host and +guests and from guest to guest + + + +Authors: +-------- + The VMware Guest Components Team + +%package -n vmware-KMP +License: BSD 3-Clause; GPL v2 only; LGPL v2.1 only +Summary: Open Virtual Machine Tools +Group: System/Emulators/PC + +%description -n vmware-KMP +Open Virtual Machine Tools (open-vm-tools) are the open source +implementation of VMware Tools. They are a set of guest operating +system virtualization components that enhance performance and user +experience of virtual machines. As virtualization technology rapidly +becomes mainstream, each virtualization solution provider implements +their own set of tools and utilities to supplement the guest virtual +machine. However, most of the implementations are proprietary and are +tied to a specific virtualization platform. + +With the Open Virtual Machine Tools project, we are hoping to solve +this and other related problems. The tools are currently composed of +kernel modules for Linux and user-space programs for all VMware +supported Unix-like guest operating systems. They provide several +useful functions like: + +* File transfer between a host and guest + +* Improved memory management and network performance under + virtualization + +* General mechanisms and protocols for communication between host and +guests and from guest to guest + + + +Authors: +-------- + The VMware Guest Components Team + +%package gui +Summary: Open Virtual Machine Tools - GUI +Group: System/Emulators/PC +Requires: open-vm-tools +Supplements: packageand(open-vm-tools:xorg-x11) + +%description gui +GUI Toolbox for Open Virtual Machine Tools + +%debugpackage + +%prep +%setup -q -n %{name}-%{version}-%{svn_rev} +%patch0 +%patch1 +%patch2 +pushd modules/linux +%patch3 +popd +chmod -x AUTHORS COPYING ChangeLog NEWS README + +%build +# liburiparser was not present before 11.0 (--disable-unity) +# comments in a continued line seem not to work... shame +%configure \ +%if 0%{?suse_version} < 1100 + --disable-unity \ +%endif + --without-kernel-modules \ + --without-procps \ + --disable-dependency-tracking +make +cd .. +mkdir -p obj +for flavor in %{flavors_to_build}; do + rm -rf obj/$flavor + cp -r %{name}-%{version}-%{svn_rev} obj/$flavor + pushd obj/$flavor + #make modules + for module in %{vm_modules}; do + pushd modules/linux/$module + make -C /usr/src/linux-obj/%{_target_cpu}/$flavor modules M=$PWD VM_CCVER=$(gcc -dumpversion) SRCROOT=$PWD + popd + done + popd +done + +%install +# let's use the kernel's own modules_install routine +export INSTALL_MOD_PATH=$RPM_BUILD_ROOT +export INSTALL_MOD_DIR=updates +pushd .. +for flavor in %{flavors_to_build}; do + pushd obj/$flavor + for module in %{vm_modules}; do + make -C /usr/src/linux-obj/%_target_cpu/$flavor modules_install M=$PWD/modules/linux/$module + done + popd +done +popd + +# fix some rights on the kernel modules, to have a complete -debuginfo package +chmod u+x $RPM_BUILD_ROOT/lib/modules/*/updates/* + +#installation of libguestlib +mkdir -p $RPM_BUILD_ROOT%{_libdir} +install -m 0755 libguestlib/.libs/libguestlib.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/libguestlib.so.0.0.0 +ln -s %{_libdir}/libguestlib.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/libguestlib.so.0 +ln -s %{_libdir}/libguestlib.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/libguestlib.so + +# installation of vmware-guestd +mkdir -p $RPM_BUILD_ROOT%{_sbindir} +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/init.d +install -m 0755 guestd/vmware-guestd $RPM_BUILD_ROOT%{_sbindir}/vmware-guestd +install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/init.d/vmware-guest + +# and the corresponding PAM magic for vmware-guestd +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/ +cat <<EOF > $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/vmware-guestd +#%PAM-1.0 +auth sufficient /%{_lib}/security/pam_unix2.so shadow nullok +auth required /%{_lib}/security/pam_unix_auth.so shadow nullok +account sufficient /%{_lib}/security/pam_unix2.so +account required /%{_lib}/security/pam_unix_acct.so