1
0
forked from pool/virtualbox
virtualbox/virtualbox.spec

881 lines
32 KiB
RPMSpec
Raw Normal View History

#
# spec file for package virtualbox
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define _vbox_instdir /usr/lib/virtualbox
%if 0%{?suse_version} >= 1230
%define _udevrulesdir /usr/lib/udev/rules.d
%else
%define _udevrulesdir /lib/udev/rules.d
%endif
Name: virtualbox
%if %suse_version > 1230
BuildRequires: which
%endif
BuildRequires: acpica
BuildRequires: dmidecode
BuildRequires: fdupes
#drop hal dependency
%if %suse_version < 1210
BuildRequires: hal-devel
%endif
%if %suse_version > 1210
BuildRequires: sed
%endif
%if %suse_version >= 1210
BuildRequires: glibc-devel-static
%endif
#gsoap,libopenssl and java needed for building webservice
BuildRequires: gsoap-devel
BuildRequires: java-devel >= 1.6.0
BuildRequires: libgsoap-devel
BuildRequires: libopenssl-devel
#
BuildRequires: LibVNCServer-devel
BuildRequires: SDL-devel
BuildRequires: alsa-devel
BuildRequires: bin86
BuildRequires: boost-devel
BuildRequires: dev86
BuildRequires: e2fsprogs-devel
BuildRequires: gcc
BuildRequires: gcc-c++
##### virtualbox 4.2.0 does not work with older versions (check in makefile),
##### and fails with newer versions (tested with rev2662)
Accepting request 214248 from home:saschpe:branches:Virtualization - Update to version 4.3.6: + VMM: fixed a Guru Meditation VINF_EM_TRIPLE_FAULT caused by VMCB caching with nested paging on certain AMD CPUs (bug #12451) + VMM: fixed a Guru Meditation VERR_VMX_UNEXPECTED_INTERRUPTION_EXIT_TYPE while intercepting debug exceptions (VT-x only; bug #12410) + VMM: fixed a Guru Meditation VERR_SVM_UNEXPECTED_EXIT while intercepting debug register accesses (AMD-V only; bug #12481) + VMM: fixed a VERR_SSM_STRUCTURE_MAGIC error when trying to load a saved state made with VBox 4.3.4 when VT-x/AMD-V is disabled. Unfortunately, VBox 4.3.4 produced broken saved states for this configuration so you have to discard these states (bug #12414) + VMM: added a few more MSRs to the whitelist required by certain guests (bug #12245) + GUI: fixed deleting of inaccessible VMs (4.3 regression, bug #12205) + GUI: fixed warnings in VM settings / number of guest processors (bug #12480) + Main: don't automatically enable 64-bit guests on 64-bit hosts if VT-x/AMD-V is not available (bug #12424) + Main: always expose the DMI memory information to Windows 2012 guests (bug #12017) + Main: fixed occasional crashes on guest display resolution change (bug #7063) + Main: fixed reporting back temporary name when calling IGuestSession::DirectoryCreateTemp() (bug #12498) + API: fix for a hang when launching a GUI VM through the API, which crashes due to GUI unavailability + Storage: fix for BLKCACHE_IOERR runtime errors under rare circumstances (bug #11030) + Network: allow to start more than 5 PCNet instances (bug #12426) + E1000: if the cable was disconnected before the guest initialized the device, the link status was not properly set to 'down' after the initialization completed despite the fact that there was no connection + 3D support: fixed offset of guest 3D image elements (Mac OS X Retina hosts only; bug #11021) + Solaris hosts: fixed accessing the host driver from non-global zones (4.3 regression, bug #12271) - For more changes see https://www.virtualbox.org/wiki/Changelog - Add source services (refresh_patches ATM) - Rebased patches: + vbox-disable-updates.diff (only offset) + vbox-fpie.diff (only offset) + vbox-deprec-gsoap-service-proxies.diff (manually) + vbox-gsoapssl-deps.diff (manually) + vbox-no-build-dates.diff (manually) + vbox-permissions_warning.diff (manually) + vbox-python-detection.diff (manually) + vbox-smc-napa.diff (manually) + vbox-vboxdrv-init-script.diff (manually) OBS-URL: https://build.opensuse.org/request/show/214248 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=150
2014-01-19 01:52:50 +01:00
BuildRequires: device-mapper-devel
BuildRequires: kbuild >= 0.1.9998svn2689
BuildRequires: kernel-syms
BuildRequires: libcap-devel
BuildRequires: libcurl-devel
BuildRequires: libidl-devel
BuildRequires: libqt4-devel
Accepting request 214248 from home:saschpe:branches:Virtualization - Update to version 4.3.6: + VMM: fixed a Guru Meditation VINF_EM_TRIPLE_FAULT caused by VMCB caching with nested paging on certain AMD CPUs (bug #12451) + VMM: fixed a Guru Meditation VERR_VMX_UNEXPECTED_INTERRUPTION_EXIT_TYPE while intercepting debug exceptions (VT-x only; bug #12410) + VMM: fixed a Guru Meditation VERR_SVM_UNEXPECTED_EXIT while intercepting debug register accesses (AMD-V only; bug #12481) + VMM: fixed a VERR_SSM_STRUCTURE_MAGIC error when trying to load a saved state made with VBox 4.3.4 when VT-x/AMD-V is disabled. Unfortunately, VBox 4.3.4 produced broken saved states for this configuration so you have to discard these states (bug #12414) + VMM: added a few more MSRs to the whitelist required by certain guests (bug #12245) + GUI: fixed deleting of inaccessible VMs (4.3 regression, bug #12205) + GUI: fixed warnings in VM settings / number of guest processors (bug #12480) + Main: don't automatically enable 64-bit guests on 64-bit hosts if VT-x/AMD-V is not available (bug #12424) + Main: always expose the DMI memory information to Windows 2012 guests (bug #12017) + Main: fixed occasional crashes on guest display resolution change (bug #7063) + Main: fixed reporting back temporary name when calling IGuestSession::DirectoryCreateTemp() (bug #12498) + API: fix for a hang when launching a GUI VM through the API, which crashes due to GUI unavailability + Storage: fix for BLKCACHE_IOERR runtime errors under rare circumstances (bug #11030) + Network: allow to start more than 5 PCNet instances (bug #12426) + E1000: if the cable was disconnected before the guest initialized the device, the link status was not properly set to 'down' after the initialization completed despite the fact that there was no connection + 3D support: fixed offset of guest 3D image elements (Mac OS X Retina hosts only; bug #11021) + Solaris hosts: fixed accessing the host driver from non-global zones (4.3 regression, bug #12271) - For more changes see https://www.virtualbox.org/wiki/Changelog - Add source services (refresh_patches ATM) - Rebased patches: + vbox-disable-updates.diff (only offset) + vbox-fpie.diff (only offset) + vbox-deprec-gsoap-service-proxies.diff (manually) + vbox-gsoapssl-deps.diff (manually) + vbox-no-build-dates.diff (manually) + vbox-permissions_warning.diff (manually) + vbox-python-detection.diff (manually) + vbox-smc-napa.diff (manually) + vbox-vboxdrv-init-script.diff (manually) OBS-URL: https://build.opensuse.org/request/show/214248 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=150
2014-01-19 01:52:50 +01:00
BuildRequires: libvpx-devel
BuildRequires: libxslt-devel
BuildRequires: module-init-tools
BuildRequires: pam-devel
BuildRequires: pulseaudio-devel
BuildRequires: python-devel
BuildRequires: quilt
BuildRequires: udev
BuildRequires: update-desktop-files
BuildRequires: xorg-x11
BuildRequires: xorg-x11-devel
BuildRequires: xorg-x11-server
BuildRequires: xorg-x11-server-sdk
BuildRequires: yasm
BuildRequires: zlib-devel-static
%ifarch amd64 x86_64 ia32e em64t
#drop hal dependency
%if %suse_version < 1210
BuildRequires: hal-32bit
%endif
BuildRequires: gcc-32bit
BuildRequires: gcc-c++-32bit
BuildRequires: xorg-x11-libX11-devel-32bit
BuildRequires: xorg-x11-libXext-devel-32bit
BuildRequires: xorg-x11-libXmu-devel-32bit
BuildRequires: xorg-x11-libXt-devel-32bit
%endif
#
ExclusiveArch: %ix86 x86_64
Version: 4.3.14
Release: 0
Summary: VirtualBox is an Emulator
License: GPL-2.0+
Group: System/Emulators/PC
Url: http://www.virtualbox.org/
#
# so you don't need to repack virtualbox by hand, just add new release of VirtualBox-x.x.x.tar.bz2 and line below with
# script virtualbox-patch-source.sh will do the job :)
# WARNING: This is not a comment, but the real command to repack souce
#%(bash %{_sourcedir}/virtualbox-patch-source.sh VirtualBox-%{version}.tar.bz2)
Source0: VirtualBox-%{version}-patched.tar.bz2
Source1: %{name}-%{version}-UserManual.pdf
Source2: %{name}-60-vboxdrv.rules
Source3: %{name}-60-vboxguest.rules
Source4: %{name}-default.virtualbox
Source5: %{name}-host-kmp-files
Source6: %{name}-guest-kmp-files
Source7: %{name}-host-preamble
Source8: %{name}-guest-preamble
Source9: %{name}-wrapper.sh
Source10: %{name}-LocalConfig.kmk
# init script to start virtual boxes during boot, to be configured via /etc/sysconfig/vbox bnc#582398
Source12: %{name}-vboxes
Source13: %{name}-sysconfig.vbox
Source98: %{name}-rpmlintrc
Source99: %{name}-patch-source.sh
#rework init scripts to fit suse needs
Patch1: vbox-vboxdrv-init-script.diff
Patch2: vbox-vboxadd-init-script.diff
Patch3: vbox-vboxweb-init-script.diff
#fix build : "Error 4001 - String must be entirely alphanumeric"
#with renaming we probably break some macosx functionality however ths is just quick fix
#file :http://www.virtualbox.org/browser/trunk/src/VBox/Devices/PC/vbox.ds
#see thread : http://lists.freebsd.org/pipermail/freebsd-acpi/2010-October/006795.html
Patch6: vbox-smc-napa.diff
#fix build of Python and dev package on openSUSE 11.3
Patch8: vbox-python-detection.diff
#deprecated old-style C++ service proxies and objects,we have to use soapcpp2 -z1 flag
Patch9: vbox-deprec-gsoap-service-proxies.diff
#fix failed linking process during build - this patch is just quick workaround
Patch10: vbox-gsoapssl-deps.diff
#PATCH-FIX-OPENSUSE implement messagebox (VBoxPermissionMessage app), which is displayed, when user
#try to start VirtualBox and is not memeber of vboxusers group
Patch99: vbox-permissions_warning.diff
#PATCH-FIX-OPENSUSE Do not include build dates on binaries, makes build-compare happier
Patch100: vbox-no-build-dates.diff
Patch101: vbox-default-os-type.diff
#disable update in vbox gui
Patch103: vbox-disable-updates.diff
#use pie/fPIE for setuid binaries (bnc#743143)
Patch104: vbox-fpie.diff
# PATCH-FIX-UPSTREAM speilicke@suse.com
Accepting request 232843 from home:saschpe:branches:Virtualization - Update to version 4.3.10: + VMM: more work on improving the emulation of certain MSR registers on certain host CPUs (e.g. bugs #12734, #12736, #12744, #12748, #12686, #12770) + VMM: fixed single-stepping for real-mode guests (VT-x without unrestricted guest execution) and some I/O instructions (bug #12636) + VMM: fixed a potential problem with COW pages if nested paging is not available + GUI: Mac OS X: experimental native full screen support for Mountain Lion and Mavericks (bug #12292) + GUI: Mac OS X: removed the mini-toolbar minimize button which doesn't work under Mac OS X full screen mode anyway + GUI: experimental HID LEDs synchronization for Windows and Mac OS X hosts: fixed keyboard re-synchronization if the feature is disabled (as done by default; bug #12758) + GUI: fixed a potential crash when opening the preferences menu (bug #12862) + OVF: fixed a crash of the VirtualBox Manager when re-starting guest export (bug #12586) + 3D support: several fixes + HGCM: fixed a problem with saved states which could cause several guest misbehavior after a VM was started from a saved state + Storage: fixed a bug preventing to compact differential snapshots under certain conditions + VBoxSVC: fixed a segmentation fault on Linux hosts if a very long path exists under /dev (bug #12760) + API: fixed guest misbehavior under certain conditions if a storage medium was attached or removed at VM runtime + Windows installer: make the --silent parameter work again (bug #12764) + Linux Additions: install correctly on Ubuntu guest systems with a /usr/lib64 directory (bug #12513) + X11 Additions: fix for the VBoxClient process not exiting correctly (bug #12348) and consuming too much processor time - Refresh virtualbox-xserver-116.patch to xorg-server-1.15.99.902 with x.org video driver protocol version 17.0 - Set mode of /usr/lib/virtualbox/VirtualBox to 4750 to match /etc/permissions.easy as newly complained by chkstat (due to ro's change) OBS-URL: https://build.opensuse.org/request/show/232843 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=158
2014-05-06 15:08:10 +02:00
Patch105: virtualbox-xserver-116.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: pwdutils permissions
Requires: %{name}-host-kmp = %version
Recommends: %{name}-gui = %version
#rename from ose version:
Provides: %{name}-ose = %version
Obsoletes: %{name}-ose < %version
%if 0%{suse_version} > 1130
PreReq: sysvinit(syslog)
%endif
%description
VirtualBox is an extremely feature rich, high performance product
for enterprise customers, it is also the only professional solution
that is freely available as Open Source Software under the terms of the
GNU Public License (GPL).
##########################################
%package qt
Summary: Qt GUI part for %{name}
Group: System/Emulators/PC
Requires: %{name} = %{version}
Provides: %{name}-gui = %{version}
#this is needed during update to trigger installing qt subpackage
#http://en.opensuse.org/openSUSE:Upgrade_dependencies_explanation#Splitting_and_Merging
Provides: %{name}-ose:/usr/lib/virtualbox/VirtualBox.so
#rename from "ose" version:
Provides: %{name}-ose-qt = %version
Obsoletes: %{name}-ose-qt < %version
PreReq: permissions
%description qt
Qt GUI part for %{name}.
#########################################
%package websrv
Summary: WebService GUI part for %{name}
Group: System/Emulators/PC
Requires: %{name} = %{version}
Provides: %{name}-gui = %{version}
%description websrv
websrv GUI part for %{name}.
#########################################
%package host-KMP
Summary: Host kernel module for VirtualBox
Group: System/Emulators/PC
# SUSE specify macro to define host kmp package
%{?suse_kernel_module_package:%suse_kernel_module_package -p %{S:7} -n %{name}-host -f %{S:5} kdump um xen xenpae}
%description host-KMP
This package contains the kernel-module for VirtualBox.
##########################################
%package guest-KMP
Summary: Guest kernel modules for VirtualBox
Group: System/Emulators/PC
#SUSE specify macro to define guest kmp package
%{?suse_kernel_module_package:%suse_kernel_module_package -p %{S:8} -n %{name}-guest -f %{S:6} kdump um xen xenpae}
%description guest-KMP
This package contains the kernel-module for VirtualBox.
##########################################
%package guest-x11
Summary: VirtualBox X11 drivers for mouse and video
Group: System/X11/Servers/XF86_4
Requires: %{name}-guest-kmp = %version
Supplements: modalias(xorg-x11-server:pci:v000080EEd0000BEEFsv*sd*bc*sc*i*)
#rename from xorg-x11-driver-virtualbox-ose:
Provides: xorg-x11-driver-virtualbox-ose = %version
Obsoletes: xorg-x11-driver-virtualbox-ose < %version
%description guest-x11
VirtualBox
This package contains X11 guest utilities and X11 guest mouse and video drivers
###########################################
%package guest-tools
Summary: VirtualBox guest tools
Group: System/Emulators/PC
Requires: %{name}-guest-kmp = %version
Supplements: modalias(pci:v000080EEd0000BEEFsv*sd*bc*sc*i*)
#rename from "ose" version:
Provides: %{name}-ose-guest-tools = %version
Obsoletes: %{name}-ose-guest-tools < %version
%description guest-tools
VirtualBox guest addition tools.
###########################################
%package -n python-%{name}
Summary: Python bindings for %{name}
Group: Development/Libraries/Python
Requires: %{name} = %{version}
#rename from "ose" version:
Provides: python-%{name}-ose = %version
Obsoletes: python-%{name}-ose < %version
%description -n python-%{name}
Python XPCOM bindings to %{name}. Used e.g. by vboxgtk package.
###########################################
%package devel
Summary: Devel files for %{name}
Group: Development/Libraries/Other
Requires: %{name} = %{version}
Requires: python-%{name} = %{version}
#rename from "ose" version:
Provides: %{name}-ose-devel = %version
Obsoletes: %{name}-ose-devel < %version
%description devel
Development file for %{name}
###########################################
%package guest-desktop-icons
Summary: Icons for guest desktop files
Group: System/Emulators/PC
Requires: %{name} = %{version}
Recommends: %{name}-gui = %{version}
BuildArch: noarch
%description guest-desktop-icons
This package contains icons for guest desktop files that were created on the desktop.
###########################################
%prep
%setup -q -n VirtualBox-%{version}
%patch1
%patch2
%patch3 -p1
%patch6 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch99 -p1
%patch100
%patch101 -p1
%patch103
%patch104 -p1
Accepting request 232843 from home:saschpe:branches:Virtualization - Update to version 4.3.10: + VMM: more work on improving the emulation of certain MSR registers on certain host CPUs (e.g. bugs #12734, #12736, #12744, #12748, #12686, #12770) + VMM: fixed single-stepping for real-mode guests (VT-x without unrestricted guest execution) and some I/O instructions (bug #12636) + VMM: fixed a potential problem with COW pages if nested paging is not available + GUI: Mac OS X: experimental native full screen support for Mountain Lion and Mavericks (bug #12292) + GUI: Mac OS X: removed the mini-toolbar minimize button which doesn't work under Mac OS X full screen mode anyway + GUI: experimental HID LEDs synchronization for Windows and Mac OS X hosts: fixed keyboard re-synchronization if the feature is disabled (as done by default; bug #12758) + GUI: fixed a potential crash when opening the preferences menu (bug #12862) + OVF: fixed a crash of the VirtualBox Manager when re-starting guest export (bug #12586) + 3D support: several fixes + HGCM: fixed a problem with saved states which could cause several guest misbehavior after a VM was started from a saved state + Storage: fixed a bug preventing to compact differential snapshots under certain conditions + VBoxSVC: fixed a segmentation fault on Linux hosts if a very long path exists under /dev (bug #12760) + API: fixed guest misbehavior under certain conditions if a storage medium was attached or removed at VM runtime + Windows installer: make the --silent parameter work again (bug #12764) + Linux Additions: install correctly on Ubuntu guest systems with a /usr/lib64 directory (bug #12513) + X11 Additions: fix for the VBoxClient process not exiting correctly (bug #12348) and consuming too much processor time - Refresh virtualbox-xserver-116.patch to xorg-server-1.15.99.902 with x.org video driver protocol version 17.0 - Set mode of /usr/lib/virtualbox/VirtualBox to 4750 to match /etc/permissions.easy as newly complained by chkstat (due to ro's change) OBS-URL: https://build.opensuse.org/request/show/232843 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=158
2014-05-06 15:08:10 +02:00
%patch105 -p1
#copy user manual
%__cp %{S:1} UserManual.pdf
#copy kbuild config
%__cp %{S:10} LocalConfig.kmk
#
##########################
####workaround kmk_sed --v
#instead of kmk_sed use /usr/bin/sed because of bug http://svn.netlabs.org/kbuild/ticket/112,
#but we have to create wrapper which will handle --append and --outpout options which are not provided by /usr/bin/sed
cat >> kmk_sed <<EOF
#!/bin/bash
while [ "\$#" != "0" ]; do
pass=\${pass}" \$1"
[ "\$1" == "-e" ] && shift && pass=\${pass}" '\$1'"
shift
done
eval "sed \$(echo "\$pass" | sed -e "s/--output=/>/g;s/--append=/>/g;s/--output/>/g;s/--append/>>/g");"
EOF
chmod +x ./kmk_sed
echo "SED = $RPM_BUILD_DIR/VirtualBox-%{version}/kmk_sed" >> LocalConfig.kmk
####workaround kmk_sed --^
##########################
#
%build
#ensure we dont ever use them
rm -rf src/libs/{libpng-*,libxml2-*,libxslt-*,zlib-*,boost-*}
# --disable-kmods don't build Linux kernel modules - but use SUSE specific way see few lines under
# --nofatal try to avoid build fail caused by missing makeself package
./configure \
--enable-vnc \
--enable-vde \
--disable-kmods \
--disable-java \
--disable-docs \
--nofatal \
--enable-webservice
# configure actually warns we should source env.sh (which seems like it could influence the build...)
source ./env.sh
#
# VBOX_PATH_PACKAGE_DOCS set propper path for link to pdf in .desktop file
# VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= just disable some functionality in gui
echo "build basic parts"
Accepting request 214248 from home:saschpe:branches:Virtualization - Update to version 4.3.6: + VMM: fixed a Guru Meditation VINF_EM_TRIPLE_FAULT caused by VMCB caching with nested paging on certain AMD CPUs (bug #12451) + VMM: fixed a Guru Meditation VERR_VMX_UNEXPECTED_INTERRUPTION_EXIT_TYPE while intercepting debug exceptions (VT-x only; bug #12410) + VMM: fixed a Guru Meditation VERR_SVM_UNEXPECTED_EXIT while intercepting debug register accesses (AMD-V only; bug #12481) + VMM: fixed a VERR_SSM_STRUCTURE_MAGIC error when trying to load a saved state made with VBox 4.3.4 when VT-x/AMD-V is disabled. Unfortunately, VBox 4.3.4 produced broken saved states for this configuration so you have to discard these states (bug #12414) + VMM: added a few more MSRs to the whitelist required by certain guests (bug #12245) + GUI: fixed deleting of inaccessible VMs (4.3 regression, bug #12205) + GUI: fixed warnings in VM settings / number of guest processors (bug #12480) + Main: don't automatically enable 64-bit guests on 64-bit hosts if VT-x/AMD-V is not available (bug #12424) + Main: always expose the DMI memory information to Windows 2012 guests (bug #12017) + Main: fixed occasional crashes on guest display resolution change (bug #7063) + Main: fixed reporting back temporary name when calling IGuestSession::DirectoryCreateTemp() (bug #12498) + API: fix for a hang when launching a GUI VM through the API, which crashes due to GUI unavailability + Storage: fix for BLKCACHE_IOERR runtime errors under rare circumstances (bug #11030) + Network: allow to start more than 5 PCNet instances (bug #12426) + E1000: if the cable was disconnected before the guest initialized the device, the link status was not properly set to 'down' after the initialization completed despite the fact that there was no connection + 3D support: fixed offset of guest 3D image elements (Mac OS X Retina hosts only; bug #11021) + Solaris hosts: fixed accessing the host driver from non-global zones (4.3 regression, bug #12271) - For more changes see https://www.virtualbox.org/wiki/Changelog - Add source services (refresh_patches ATM) - Rebased patches: + vbox-disable-updates.diff (only offset) + vbox-fpie.diff (only offset) + vbox-deprec-gsoap-service-proxies.diff (manually) + vbox-gsoapssl-deps.diff (manually) + vbox-no-build-dates.diff (manually) + vbox-permissions_warning.diff (manually) + vbox-python-detection.diff (manually) + vbox-smc-napa.diff (manually) + vbox-vboxdrv-init-script.diff (manually) OBS-URL: https://build.opensuse.org/request/show/214248 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=150
2014-01-19 01:52:50 +01:00
/usr/bin/kmk %{?_smp_mflags} VBOX_JAVA_HOME=/etc/alternatives/java_sdk_openjdk/ VBOX_GCC_WERR= KBUILD_VERBOSE=2 VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= TOOL_YASM_AS=yasm VBOX_PATH_PACKAGE_DOCS=/usr/share/doc/packages/virtualbox all
#
# build kernel modules for guest and host (check novel-kmp package as example)
# host modules : vboxdrv,vboxnetflt,vboxnetadp
# guest modules : vboxguest,vboxsf,vboxvideo
echo "build kernel modules"
for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \
out/linux.*/release/bin/additions/src/vbox{guest,sf,video}; do
#get the module name from path
module_name=$(basename "$vbox_module")
# go through the all flavors (desktop,default ...)
for flavor in %flavors_to_build; do
# delete old build dir for sure
%__rm -rf modules_build_dir/${module_name}_${flavor}
# create build directory for specific flavor
%__mkdir -p modules_build_dir/$flavor
# copy sources which will be used to build vbox module in last step
%__cp -r $vbox_module/ modules_build_dir/$flavor/
# copy vboxdrv (for host) module symbols which are used by vboxnetflt and vboxnetadp km's:
if [ "$module_name" = "vboxnetflt" -o \
"$module_name" = "vboxnetadp" -o \
"$module_name" = "vboxpci" ] ; then
%__cp $PWD/modules_build_dir/$flavor/vboxdrv/Module.symvers \
$PWD/modules_build_dir/$flavor/$module_name
fi
# copy vboxguest (for guest) module symbols which are used by vboxsf km:
if [ "$module_name" = "vboxsf" ]; then
%__cp $PWD/modules_build_dir/$flavor/vboxguest/Module.symvers \
$PWD/modules_build_dir/$flavor/$module_name
fi
# build the module for the specific flavor
%__make -C /usr/src/linux-obj/%_target_cpu/$flavor modules \
M=$PWD/modules_build_dir/$flavor/$module_name
done
done
%install
#################################
echo "create directory structure"
#################################
%__install -d -m 755 %{buildroot}/sbin
%__install -d -m 755 %{buildroot}%{_bindir}
%__install -d -m 755 %{buildroot}%{_sbindir}
%__install -d -m 755 %{buildroot}%{_datadir}/virtualbox/nls
%__install -d -m 755 %{buildroot}%{_datadir}/pixmaps
%__install -d -m 755 %{buildroot}%{_datadir}/applications
#%if %suse_version >= 1130
# %__install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/
#%else
#since 11.3 we don't use hal to detect vbox mouse
%if %suse_version < 1130
%__install -d -m 755 %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty
%endif
%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
#%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/glue
%__install -d -m 755 %{buildroot}%{_vbox_instdir}/components
%__install -d -m 755 %{buildroot}%{_libdir}/dri
%__install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/drivers
%__install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/input
%__install -d -m 755 %{buildroot}%{_sysconfdir}/default
%__install -d -m 755 %{buildroot}%{_sysconfdir}/init.d
%__install -d -m 755 %{buildroot}%{_sysconfdir}/vbox
%__install -d -m 755 %{buildroot}%{_udevrulesdir}
%__install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d
####################################################################################
echo "entering virtualbox-kmp-guest and virtualbox-kmp-host install section"
####################################################################################
export INSTALL_MOD_PATH=$RPM_BUILD_ROOT
export INSTALL_MOD_DIR=updates
#to install modules we use here similar steps like in build phase, go trought the all modules :
for module_name in vbox{drv,netflt,pci,netadp,guest,sf,video}
do
#and trought the all flavors
for flavor in %flavors_to_build; do
#to install modules use Makefile from /usr/src/linux-obj/%_target_cpu/$flavor and builds from $PWD/modules_build_dir/$flavor/$module_name
%__make -C /usr/src/linux-obj/%_target_cpu/$flavor modules_install M=$PWD/modules_build_dir/$flavor/$module_name
done
done
###########################################
echo "entering guest-tools install section"
###########################################
%__install -m 755 out/linux.*/release/bin/additions/VBoxControl \
%{buildroot}%{_bindir}/VBoxControl
%__install -m 755 out/linux.*/release/bin/additions/VBoxService \
%{buildroot}%{_bindir}/VBoxService
%__install -m 755 out/linux.*/release/bin/additions/mount.vboxsf \
%{buildroot}/sbin/mount.vboxsf
%__install -m 744 src/VBox/Additions/linux/installer/vboxadd.sh \
%{buildroot}%{_sysconfdir}/init.d/vboxadd
%__ln_s %{_sysconfdir}/init.d/vboxadd \
%{buildroot}%{_sbindir}/rcvboxadd
# udev rule for guest (virtualbox-guest-tools)
%__install -m 644 %{SOURCE3} %{buildroot}%{_udevrulesdir}/60-vboxguest.rules
#
##############################################################
echo "entering guest-x11 install section"
##############################################################
pushd out/linux.*/release/bin/additions/
#VBoxClient daemon (support for clipboard,autoresize,seamless windows)
%__install -m 755 VBoxClient %{buildroot}%{_bindir}
# xorg drivers for mouse and videos check suse version to add propper driver
# check the patch https://www.virtualbox.org/changeset/38784, regarding the
# dropped xorg mouse driver in >= 1130
%if %suse_version >= 1320
%__install -m 755 vboxvideo_drv_116.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%if %suse_version == 1310
%__install -m 755 vboxvideo_drv_114.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%if %suse_version == 1230
%__install -m 755 vboxvideo_drv_113.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%if %suse_version == 1220
%__install -m 755 vboxvideo_drv_112.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%if %suse_version == 1210
%__install -m 755 vboxvideo_drv_110.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%if %suse_version == 1140
%__install -m 755 vboxvideo_drv_19.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%if %suse_version == 1130
%__install -m 755 vboxvideo_drv_18.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%if %suse_version == 1120
%__install -m 755 vboxmouse_drv_16.so \
%{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so
%__install -m 755 vboxvideo_drv_16.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%else
%__install -m 755 vboxmouse_drv_15.so \
%{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so
%__install -m 755 vboxvideo_drv_15.so \
%{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%endif #if =1120
%endif #if =1130
%endif #if =1140
%endif #if =1210
%endif #if =1220
%endif #if =1230
%endif #if =1310
%endif #if >1310
popd
# VBoxOGL* libs for guest-x11 subpackage
%__install -m 644 out/linux.*/release/bin/additions/VBoxOGL*.so \
%{buildroot}%{_libdir}
# make link for dri lib
%__ln_s %{_libdir}/VBoxOGL.so %{buildroot}%{_libdir}/dri/vboxvideo_dri.so
# install init script which start VBoxClient daemon (support for clipboard,autoresize,seamless windows)
%__install -m 755 src/VBox/Additions/x11/Installer/98vboxadd-xclient \
%{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d/vboxadd-xclient.sh
#%if %suse_version >= 1130
# add xorg config snipet to vbox mouse integration recognize
# %__install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/60-vboxmouse.conf
#%else
%if %suse_version < 1130
# hal policy file to autodetect the virtualbox mouse
%__install -m 644 src/VBox/Additions/linux/installer/90-vboxguest.fdi \
%{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi
%endif
##############################################
echo "entering virtualbox(-qt) install section"
##############################################
# copy the main files to %{_vbox_instdir}
pushd out/linux.*/release/bin
%__install -m 755 VBoxManage %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxHeadless %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxSDL %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxTunctl %{buildroot}%{_vbox_instdir}
# create links to vbox tools in PATH - they could be usefull for controlling vbox from command line
%__ln_s %{_vbox_instdir}/VBoxManage %{buildroot}%{_bindir}/VBoxManage
%__ln_s %{_vbox_instdir}/VBoxHeadless \
%{buildroot}%{_bindir}/VBoxHeadless
%__ln_s %{_vbox_instdir}/VBoxSDL %{buildroot}%{_bindir}/VBoxSDL
%__ln_s %{_vbox_instdir}/VBoxTunctl %{buildroot}%{_bindir}/VBoxTunctl
%__install -m 755 VBoxSVC %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxXPCOMIPCD %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxExtPackHelperApp %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxTestOGL %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxPermissionMessage \
%{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxNetDHCP %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxNetAdpCtl %{buildroot}%{_vbox_instdir}
%__install -m 755 VirtualBox %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxEFI*.fd %{buildroot}%{_vbox_instdir}
%__install -m 755 VBoxSysInfo.sh %{buildroot}%{_vbox_instdir}
%__install -m 755 *.so %{buildroot}%{_vbox_instdir}
%__install -m 644 V*.gc %{buildroot}%{_vbox_instdir}
%__install -m 644 *.r0 %{buildroot}%{_vbox_instdir}
%__install -m 644 components/* %{buildroot}%{_vbox_instdir}/components/
# install languages
%__install -m 644 nls/* %{buildroot}%{_datadir}/virtualbox/nls/
popd
# install desktop file
%__install -m 644 out/linux.*/release/bin/virtualbox.desktop \
%{buildroot}%{_datadir}/applications/%{name}.desktop
%suse_update_desktop_file %{buildroot}%{_datadir}/applications/%{name}.desktop 'System Emulator'
# create a menu entry
%__install -m 644 out/linux.*/release/bin/VBox.png \
%{buildroot}%{_datadir}/pixmaps/virtualbox.png
# install udev rule for host (virtualbox)
%__install -m 644 %{SOURCE2} %{buildroot}%{_udevrulesdir}/60-vboxdrv.rules
# install config with session shutdown defs
%__install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/default/virtualbox
#install wrapper script
%__install -m 644 %{S:9} %{buildroot}%{_bindir}/VirtualBox
# modify and install the vboxdrv init script
# TODO: some of this stuff breaks the fillup macros below?
%__sed -i "s|%NOLSB%|yes|g;s|%DEBIAN%||g;s|%PACKAGE%|virtualbox|g" \
src/VBox/Installer/linux/vboxdrv.sh.in
%__install -m 744 src/VBox/Installer/linux/vboxdrv.sh.in \
%{buildroot}%{_sysconfdir}/init.d/vboxdrv
%__ln_s %{_sysconfdir}/init.d/vboxdrv \
%{buildroot}%{_sbindir}/rcvboxdrv
# Init script to start virtual boxes during boot
%__install -m 755 %{S:12} %{buildroot}%{_sysconfdir}/init.d/vboxes
%__ln_s %{_sysconfdir}/init.d/vboxes \
%{buildroot}%{_sbindir}/rcvboxes
# sysconfig file intended for vboxes script
%__install -d -m 755 %{buildroot}%{_var}/adm/fillup-templates
install -m 700 %{S:13} %{buildroot}%{_var}/adm/fillup-templates/sysconfig.vbox
# config file for vboxdrv script and vboxweb
%__install -d -m 755 %{buildroot}%{_sysconfdir}/vbox
echo -e "#settings for vboxwebsrn\nVBOXWEB_USER=root" > \
%{buildroot}%{_sysconfdir}/vbox/vbox.cfg
# install udev helper script for creating usb devices
install -m 0755 -D src/VBox/Installer/linux/VBoxCreateUSBNode.sh \
$RPM_BUILD_ROOT%{_udevrulesdir}/../VBoxCreateUSBNode.sh
######################################################
echo "entrering python-virtualbox install section"
######################################################
pushd out/linux.*/release/bin/sdk/installer
VBOX_INSTALL_PATH=%{_vbox_instdir} python vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot} --record-rpm=%{_tmppath}/SITE_FILES
popd
%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
%__cp -r out/linux.*/release/bin/sdk/bindings/xpcom/python %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
%py_compile %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom/python
######################################################
echo "entering virtualbox-devel install section"
######################################################
%__cp -r out/linux.*/release/bin/sdk/bindings/auth %{buildroot}%{_vbox_instdir}/sdk/bindings
pushd out/linux.*/release/bin/sdk/bindings/xpcom
%__cp -r include %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
%__cp -r idl %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
%__cp -r cbinding %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
%__cp -r samples %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
popd
%__cp out/linux.*/release/bin/sdk/bindings/VirtualBox.xidl %{buildroot}%{_vbox_instdir}/sdk/bindings
######################################################
echo "entering virtualbox-websrv install section"
######################################################
pushd out/linux.*/release/bin
%__install -m 755 vboxwebsrv %{buildroot}%{_vbox_instdir}
%__install -m 755 webtest %{buildroot}%{_vbox_instdir}
popd
%__sed -i "s|%NOLSB%|yes|g;s|%DEBIAN%||g;s|%PACKAGE%|virtualbox|g" \
src/VBox/Installer/linux/vboxweb-service.sh
%__install -m 744 src/VBox/Installer/linux/vboxweb-service.sh \
%{buildroot}%{_sysconfdir}/init.d/vboxweb-service
%__ln_s %{_sysconfdir}/init.d/vboxweb-service \
%{buildroot}%{_sbindir}/rcvboxweb-service
#
######################################################
echo "entering virtualbox-guest-desktop-icons install section"
######################################################
%__install -d -m 755 %{buildroot}%{_datadir}/pixmaps/virtalbox
pushd src/VBox/Frontends/VirtualBox/images
for icon in os_*.png; do
%__install -m 644 "$icon" %{buildroot}%{_datadir}/pixmaps/virtalbox/"$icon";
done
popd
#
######################################################
# run fdupes
######################################################
#run fdupes because we lost link for virtualbox/components directory
%fdupes %{buildroot}/%{_vbox_instdir}
#also some translation files are duplicated
%fdupes %{buildroot}/%{_datadir}/virtualbox/nls
#also some icon files are duplicated
%fdupes %{buildroot}/%{_datadir}/pixmaps/virtalbox
#
#
######################################################
# scriptlets - pre
######################################################
%pre
echo "creating group vboxusers..."
groupadd -r vboxusers 2>/dev/null || :
#######################################################
# scriptlets - post
#######################################################
%post
/sbin/ldconfig
#skip the fill up part and enable vboxdrv by default
%fillup_and_insserv -f -y vboxdrv
#setup our sysconfig file /etc/sysconfig/vbox
%fillup_only -an vbox
%if %suse_version >= 1140
%set_permissions %{_vbox_instdir}/VBoxNetDHCP
%set_permissions %{_vbox_instdir}/VBoxNetAdpCtl
%set_permissions %{_vbox_instdir}/VBoxHeadless
%set_permissions %{_vbox_instdir}/VBoxSDL
%else
%run_permissions
%endif
%post qt
%if %suse_version >= 1140
%set_permissions %{_vbox_instdir}/VirtualBox
%else
%run_permissions
%endif
%verifyscript
%if %suse_version >= 1140
%verify_permissions -e %{_vbox_instdir}/VBoxNetDHCP
%endif
%verify_permissions -e %{_vbox_instdir}/VBoxNetAdpCtl
%verify_permissions -e %{_vbox_instdir}/VBoxHeadless
%verify_permissions -e %{_vbox_instdir}/VBoxSDL
%verifyscript qt
%verify_permissions -e %{_vbox_instdir}/VirtualBox
%post guest-tools
%fillup_and_insserv -f -y vboxadd
%post websrv
%fillup_and_insserv -f -y vboxweb-service
#######################################################
# scriptlets preun
#######################################################
%preun
%stop_on_removal vboxdrv
exit 0
%preun guest-tools
%stop_on_removal vboxadd
exit 0
%preun websrv
%stop_on_removal vboxweb-service
exit 0
#######################################################
# scriptlets postun
#######################################################
%postun
/sbin/ldconfig
%restart_on_update vboxdrv
%insserv_cleanup
%postun guest-tools
%restart_on_update vboxadd
%insserv_cleanup
%postun websrv
%restart_on_update vboxweb-service
%insserv_cleanup
#
#######################################################
%clean
[ -d "%{buildroot}" -a "%{buildroot}" != "" ] && %__rm -rf "%{buildroot}"
%files
%defattr(-, root, root)
%doc UserManual.pdf
%{_bindir}/VBoxManage
%{_bindir}/VBoxHeadless
%{_bindir}/VBoxSDL
%{_bindir}/VBoxTunctl
%dir %{_vbox_instdir}
%{_vbox_instdir}/VBoxSysInfo.sh
%{_vbox_instdir}/VBoxDD2.so
%{_vbox_instdir}/VBoxDD.so
%{_vbox_instdir}/VBoxDDU.so
%{_vbox_instdir}/VBoxGuestControlSvc.so
%{_vbox_instdir}/VBoxGuestPropSvc.so
%{_vbox_instdir}/VBoxHeadless.so
%{_vbox_instdir}/VBoxKeyboard.so
%{_vbox_instdir}/VBoxNetDHCP.so
%{_vbox_instdir}/VBoxNetNAT.so
%{_vbox_instdir}/VBoxOGLhostcrutil.so
%{_vbox_instdir}/VBoxOGLhosterrorspu.so
%{_vbox_instdir}/VBoxOGLrenderspu.so
%{_vbox_instdir}/VBoxREM*.so
%{_vbox_instdir}/VBoxRT.so
%{_vbox_instdir}/VBoxSDL.so
%{_vbox_instdir}/VBoxSharedClipboard.so
%{_vbox_instdir}/VBoxSharedCrOpenGL.so
%{_vbox_instdir}/VBoxSharedFolders.so
%{_vbox_instdir}/VBoxVMM.so
%{_vbox_instdir}/VBoxXPCOMC.so
%{_vbox_instdir}/VBoxXPCOM.so
%{_vbox_instdir}/VBox*.gc
%{_vbox_instdir}/VBox*.r0
%{_vbox_instdir}/VMMGC.gc
%{_vbox_instdir}/VMMR0.r0
%{_vbox_instdir}/VBoxEFI*.fd
%{_vbox_instdir}/VBoxManage
%{_vbox_instdir}/VBoxSVC
%{_vbox_instdir}/VBoxTunctl
%{_vbox_instdir}/VBoxXPCOMIPCD
%{_vbox_instdir}/VBoxExtPackHelperApp
%{_vbox_instdir}/DBGCPlugInDiggers.so
%{_vbox_instdir}/VBoxAuth.so
%{_vbox_instdir}/VBoxAuthSimple.so
%{_vbox_instdir}/VBoxDbg.so
%{_vbox_instdir}/VBoxDragAndDropSvc.so
%{_vbox_instdir}/VBoxVMMPreload.so
#todo:double check - if this file should be assigned to the host side
%{_vbox_instdir}/VBoxHostChannel.so
#
%dir %{_vbox_instdir}/components
%{_vbox_instdir}/components/*.so
%{_vbox_instdir}/components/*.xpt
%dir %{_datadir}/virtualbox
%config %{_sysconfdir}/default/virtualbox
%{_udevrulesdir}/60-vboxdrv.rules
%config %{_sysconfdir}/init.d/vboxdrv
%dir %{_sysconfdir}/vbox
%config %{_sysconfdir}/vbox/vbox.cfg
%{_sysconfdir}/init.d/vboxes
%{_var}/adm/fillup-templates/sysconfig.vbox
%{_sbindir}/rcvboxes
%{_sbindir}/rcvboxdrv
%{_udevrulesdir}/../VBoxCreateUSBNode.sh
%if %suse_version >= 1140
%verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxNetDHCP
%else
%{_vbox_instdir}/VBoxNetDHCP
%endif
%verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxNetAdpCtl
%verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxHeadless
%verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxSDL
#
%files qt
%defattr(-, root, root)
%attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxPermissionMessage
Accepting request 232843 from home:saschpe:branches:Virtualization - Update to version 4.3.10: + VMM: more work on improving the emulation of certain MSR registers on certain host CPUs (e.g. bugs #12734, #12736, #12744, #12748, #12686, #12770) + VMM: fixed single-stepping for real-mode guests (VT-x without unrestricted guest execution) and some I/O instructions (bug #12636) + VMM: fixed a potential problem with COW pages if nested paging is not available + GUI: Mac OS X: experimental native full screen support for Mountain Lion and Mavericks (bug #12292) + GUI: Mac OS X: removed the mini-toolbar minimize button which doesn't work under Mac OS X full screen mode anyway + GUI: experimental HID LEDs synchronization for Windows and Mac OS X hosts: fixed keyboard re-synchronization if the feature is disabled (as done by default; bug #12758) + GUI: fixed a potential crash when opening the preferences menu (bug #12862) + OVF: fixed a crash of the VirtualBox Manager when re-starting guest export (bug #12586) + 3D support: several fixes + HGCM: fixed a problem with saved states which could cause several guest misbehavior after a VM was started from a saved state + Storage: fixed a bug preventing to compact differential snapshots under certain conditions + VBoxSVC: fixed a segmentation fault on Linux hosts if a very long path exists under /dev (bug #12760) + API: fixed guest misbehavior under certain conditions if a storage medium was attached or removed at VM runtime + Windows installer: make the --silent parameter work again (bug #12764) + Linux Additions: install correctly on Ubuntu guest systems with a /usr/lib64 directory (bug #12513) + X11 Additions: fix for the VBoxClient process not exiting correctly (bug #12348) and consuming too much processor time - Refresh virtualbox-xserver-116.patch to xorg-server-1.15.99.902 with x.org video driver protocol version 17.0 - Set mode of /usr/lib/virtualbox/VirtualBox to 4750 to match /etc/permissions.easy as newly complained by chkstat (due to ro's change) OBS-URL: https://build.opensuse.org/request/show/232843 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=158
2014-05-06 15:08:10 +02:00
%verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VirtualBox
#wrapper script is in bindir
%attr(0755,root,root) %{_bindir}/VirtualBox
#ldd shows libQt* dependency
%{_vbox_instdir}/VBoxTestOGL
#qm's translations
%{_datadir}/virtualbox/nls
%{_vbox_instdir}/VirtualBox.so
%{_datadir}/pixmaps/virtualbox.png
%{_datadir}/applications/%{name}.desktop
#
%files guest-x11
%defattr(-, root, root)
%dir %{_libdir}/xorg/modules/drivers
%dir %{_libdir}/xorg/modules/input
%dir %{_libdir}/dri/
%{_bindir}/VBoxClient
%{_libdir}/VBoxOGL*.so
%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%{_libdir}/dri/vboxvideo_dri.so
%{_sysconfdir}/X11/xinit/xinitrc.d/vboxadd-xclient.sh
%if %suse_version < 1130
# %config %{_sysconfdir}/X11/xorg.conf.d/60-vboxmouse.conf
#%else
%{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi
%{_libdir}/xorg/modules/input/vboxmouse_drv.so
%endif
#
%files guest-tools
%defattr(-, root, root)
%{_bindir}/VBoxControl
%{_bindir}/VBoxService
/sbin/mount.vboxsf
%{_udevrulesdir}/60-vboxguest.rules
%config %{_sysconfdir}/init.d/vboxadd
%{_sbindir}/rcvboxadd
#
%files -n python-%{name} -f %{_tmppath}/SITE_FILES
%defattr(-, root, root)
%dir %{_vbox_instdir}/sdk
%dir %{_vbox_instdir}/sdk/bindings
%dir %{_vbox_instdir}/sdk/bindings/xpcom
%{_vbox_instdir}/sdk/bindings/xpcom/python
%if 0%{?suse_version} > 1130
%attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_7.so
%else
%attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_6.so
%endif
%files devel
%defattr(-,root, root)
%dir %{_vbox_instdir}/sdk
%dir %{_vbox_instdir}/sdk/bindings
%dir %{_vbox_instdir}/sdk/bindings/xpcom
%{_vbox_instdir}/sdk/bindings/VirtualBox.xidl
%{_vbox_instdir}/sdk/bindings/xpcom/cbinding
%{_vbox_instdir}/sdk/bindings/xpcom/idl
%{_vbox_instdir}/sdk/bindings/xpcom/include
%{_vbox_instdir}/sdk/bindings/xpcom/samples
%{_vbox_instdir}/sdk/bindings/auth
#%{_vbox_instdir}/sdk/bindings/glue/java
%files websrv
%defattr(-,root, root)
%{_vbox_instdir}/vboxwebsrv
%{_vbox_instdir}/webtest
%{_sysconfdir}/init.d/vboxweb-service
%{_sbindir}/rcvboxweb-service
%files guest-desktop-icons
%defattr(-,root, root)
%dir %{_datadir}/pixmaps/virtalbox
%{_datadir}/pixmaps/virtalbox/*.png
%changelog