X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=VirtualBox.spec;h=aaed9364f5a150c5614400661ac1caf540192989;hb=84770c77f223606d281b1b6a2c6c7c8df76ccb8c;hp=97fc9f0288d8c4822789f1ebb0355890f6906bd7;hpb=48363591f276809bc52d4853c7837e9742cf1b9e;p=packages%2FVirtualBox.git diff --git a/VirtualBox.spec b/VirtualBox.spec index 97fc9f0..aaed936 100644 --- a/VirtualBox.spec +++ b/VirtualBox.spec @@ -1,227 +1,474 @@ # # TODO: -# - Doesn't compile without /usr/src/linux/include/linux/autoconf.h so one must -# symlink it before building package. This is because during compilation kernel -# module is being build. Since we are building kernel modules later -# sources/makefiles probably needs some hacking to drop this requirement. -# - Home page says that some addons should be compiled, I don't see any except. -# vboxaddon kernel module and {vboxmouse,vboxvideo)_drv.so. Are they required? -# - BR list was a quickie so it may be incomplete or too big. -# - R list probably required. -# - .desktop file, some wrapper to launch VirtualBox (LD_LIBRARY_PATH must include -# %{_libdir}/VirtualBox), maybe some init script to launch VBoxSVC. -# - Devel stuff is not packaged yet. -# - Now its EA ix86 amd64, but looking into autogenerated env.sh suggests that -# code may be compiled exclusively for i686. Probably x86_64 must be put in EA for Th. +# - Find how to compile with PLD CFLAGS/CXXFLAGS/LDFLAGS. +# - Package SDK. +# - Package utils (and write initscripts ?) for Guest OS. +# - Check License of VBoxGuestAdditions_*.iso, it's propably not GPL v2. +# If so check if it is distributable. # # Conditional build: %bcond_without dist_kernel # without distribution kernel -%bcond_without smp # without SMP kernel modules -# -%define _snap 20070116 -Summary: VirtualBox -Summary(pl): VirtualBox -Name: VirtualBox -Version: 1.3.3 -Release: 0.1 +%bcond_without kernel # don't build kernel module +%bcond_without userspace # don't build userspace package + +%define rel 0.1 + +%if %{without kernel} +%undefine with_dist_kernel +%endif + +%if "%{_alt_kernel}" != "%{nil}" +%undefine with_userspace +%endif + +%define pname VirtualBox + +Summary: VirtualBox OSE - x86 hardware virtualizer +Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86 +Name: %{pname}%{_alt_kernel} +Version: 1.6.0 +Release: %{rel} License: GPL v2 Group: Applications/Emulators -Source0: %{name}-%{version}_%{_snap}.tar.bz2 -# Source0-md5: 8554cf552c3ad07b2ae5229c3f8825dc -Patch0: %{name}-configure.patch -Patch1: %{name}-qt-paths.patch +# Source can't be downloaded directly anymore, you may get it manually from +# http://www.virtualbox.org/wiki/Downloads +Source0: %{pname}-%{version}-OSE.tar.bz2 +# Source0-md5: 44692aa0e7a8cb6bb36f367d67d78d6a +Source1: http://www.virtualbox.org/download/%{version}/UserManual.pdf +# Source1-md5: e21694fd087b42173bca3fc9af068f22 +Source2: http://www.virtualbox.org/download/%{version}/VBoxGuestAdditions_%{version}.iso +# Source2-md5: e90b718aa806845194fd411e3dbf78ff +Source3: %{pname}.init +Source4: %{pname}.desktop +Source5: %{pname}.sh +Patch0: %{pname}-configure.patch +Patch1: %{pname}-qt-paths.patch +Patch2: %{pname}-shared-libstdc++.patch +Patch3: %{pname}-disable-xclient-build.patch +Patch4: %{pname}-configure-spaces.patch URL: http://www.virtualbox.org/ -BuildRequires: SDL-devel +%if %{with userspace} +BuildRequires: SDL-devel >= 1.2.7 +BuildRequires: alsa-lib-devel >= 1.0.6 +BuildRequires: bash BuildRequires: bcc BuildRequires: bin86 -BuildRequires: gcc >= 3.2.3 +BuildRequires: gcc >= 5:3.2.3 BuildRequires: iasl -%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.7} +%endif +%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20} +%if %{with userspace} +BuildRequires: Qt3Support-devel BuildRequires: libIDL-devel +BuildRequires: libpng >= 1.2.5 +BuildRequires: libstdc++-static >= 5:3.2.3 BuildRequires: libuuid-devel -BuildRequires: libxslt-devel -BuildRequires: qt-devel -BuildRequires: rpmbuild(macros) >= 1.329 -BuildRequires: xalan-c-devel -BuildRequires: xcursor-devel -BuildRequires: xerces-c-devel -BuildRequires: zlib-devel -ExclusiveArch: %{ix86} amd64 +BuildRequires: libxml2-devel >= 2.6.26 +BuildRequires: libxslt-devel >= 1.1.17 +BuildRequires: libxslt-progs >= 1.1.17 +BuildRequires: pkgconfig +BuildRequires: pulseaudio-devel >= 0.9.0 +BuildRequires: qt-devel >= 6:3.3.6 +BuildRequires: qt-linguist +BuildRequires: qt4-build >= 4.2.0 +%endif +BuildRequires: rpmbuild(macros) >= 1.379 +%if %{with userspace} +BuildRequires: which +BuildRequires: xalan-c-devel >= 1.10.0 +BuildRequires: xerces-c-devel >= 2.6.0 +BuildRequires: xorg-lib-libXcursor-devel +BuildRequires: zlib-devel >= 1.2.1 +%ifarch %{x8664} +BuildRequires: gcc-multilib +BuildRequires: glibc-devel(i686) +BuildRequires: libstdc++-multilib-devel +%endif +%endif +Requires(post,preun): /sbin/chkconfig +Requires(postun): /usr/sbin/groupdel +Requires(pre): /usr/bin/getgid +Requires(pre): /usr/sbin/groupadd +Suggests: gxmessage +Provides: group(vbox) +ExclusiveArch: %{ix86} %{x8664} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%ifarch %{x8664} +%define outdir amd64 +%else +%define outdir x86 +%endif + %description -InnoTek VirtualBox is a general-purpose full virtualizer for x86 +InnoTek VirtualBox OSE is a general-purpose full virtualizer for x86 hardware. Targeted at server, desktop and embedded use, it is now the only professional-quality virtualization solution that is also Open Source Software. -Some of the features of VirtualBox are: +Some of the features of VirtualBox OSE are: -Modularity: VirtualBox has an extremely modular design with +Modularity: VirtualBox OSE has an extremely modular design with well-defined internal programming interfaces and a client/server design. This makes it easy to control it from several interfaces at once: for example, you can start a virtual machine in a typical virtual machine GUI and then control that machine from the command -line. VirtualBox also comes with a full Software Development Kit: even -though it is Open Source Software, you don't have to hack the source -to write a new interface for VirtualBox. +line. VirtualBox OSE also comes with a full Software Development Kit: +even though it is Open Source Software, you don't have to hack the +source to write a new interface for VirtualBox OSE. Virtual machine descriptions in XML: the configuration settings of virtual machines are stored entirely in XML and are independent of the local machines. Virtual machine definitions can therefore easily be ported to other computers. -%description -l pl -InnoTek VirtualBox jest emulatorem sprzêtu x86. Kireowany do -zastosowañ serwerowych, desktopowych oraz embedded jest obecnie -jedynym wysokiej jako¶ci rozwi±zaniem wirtualizacyjnym dostêpnym -równie¿ jako Otwarte Oprogramowanie. +%description -l pl.UTF-8 +InnoTek VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do +zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie +jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym +również jako Otwarte Oprogramowanie. + +Przykładowe cechy VirtualBoksa: + +Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z +dobrze zaprojektowanym wewnętrznym interfejsem programowym typu +klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą +różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z +poziomu interfejsu graficznego, a później kontrolować ją z linii +poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski, +co pozwala stworzyć dowolny inny interfejs zarządzania maszyną +wirtualną. + +Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn +wirtualnych są w całości przechowywane w XML-u i są niezależne od +lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść +konfigurację maszyny wirtualnej na inny komputer. -Przyk³adowe mo¿liwo¶ci VirtualBox: +%package udev +Summary: udev rules for VirtualBox OSE kernel modules +Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa +Release: %{rel} +Group: Base/Kernel +Requires: udev + +%description udev +udev rules for VirtualBox OSE kernel modules. + +%description udev -l pl.UTF-8 +Reguły udev dla modułów jądra Linuksa dla VirtualBoksa. + +%package -n kernel%{_alt_kernel}-misc-vboxadd +Summary: Linux kernel module for VirtualBox OSE +Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa +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 +Provides: kernel(vboxadd) = %{version}-%{rel} -Modularno¶æ: VirtualBox jest wysoce zmodularyzowanym produktem z -dobrze zaprojektowanym wewnêtrznym interfejsem programowym typu -klient/serwer. Dziêki temu mo¿na ³atwo kontrolowaæ go za pomoc± -ró¿nych interfejsów. Mo¿na na przyk³ad uruchomiæ maszynê wirtualn± z -poziomu interfejsu graficznego, a pó¼niej kontrolowaæ j± z linii -poleceñ. VirtualBox dostarcza równie¿ pe³ny pakiet deweloperski, co -pozwala stworzyæ dowolny inny interfejs zarz±dzania maszyn± wirtualn±. +%description -n kernel%{_alt_kernel}-misc-vboxadd +Linux kernel module vboxadd for VirtualBox OSE. -Opisy maszyn wirtualnych w XML: konfiguracje poszczególnych maszyn -wirtualnych s± w ca³o¶ci przechowywane w XMLu i s± niezale¿ne od -lokalnej maszyny. Dziêki temu mo¿na szybko i ³atwo przenie¶æ -konfiguracjê maszyny wirtualnej na inny komputer. +%description -n kernel%{_alt_kernel}-misc-vboxadd -l pl.UTF-8 +Moduł jądra Linuksa vboxadd dla VirtualBoksa. %package -n kernel%{_alt_kernel}-misc-vboxdrv -Summary: Kernel module for VirtualBox -Summary(pl): Modu³ j±dra dla VirtualBox -Release: %{_rel}@%{_kernel_ver_str} +Summary: Linux kernel module for VirtualBox OSE +Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa +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(vboxdrv) = %{version}-%{_rel} +Provides: kernel(vboxdrv) = %{version}-%{rel} %description -n kernel%{_alt_kernel}-misc-vboxdrv -Kernel module vboxdrv for VirtualBox. +Linux kernel module vboxdrv for VirtualBox OSE. -%description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl -Modu³ j±dra vboxdrv dla VirtualBox. +%description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8 +Moduł jądra Linuksa vboxdrv dla VirtualBoksa. -%package -n kernel%{_alt_kernel}-smp-misc-vboxdrv -Summary: Kernel SMP module for VirtualBox -Summary(pl): Modu³ j±dra SMP dla VirtualBox -Release: %{_rel}@%{_kernel_ver_str} +%package -n kernel%{_alt_kernel}-misc-vboxvfs +Summary: Linux kernel module for VirtualBox OSE +Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa +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 +%requires_releq_kernel +Requires(postun): %releq_kernel %endif -Provides: kernel(vboxdrv) = %{version}-%{_rel} +Provides: kernel(vboxvfs) = %{version}-%{rel} + +%description -n kernel%{_alt_kernel}-misc-vboxvfs +Linux kernel module vboxvfs for VirtualBox OSE. + +%description -n kernel%{_alt_kernel}-misc-vboxvfs -l pl.UTF-8 +Moduł jądra Linuksa vboxvfs dla VirtualBoksa. -%description -n kernel%{_alt_kernel}-smp-misc-vboxdrv -Kernel SMP module vboxdrv for VirtualBox. +%package -n xorg-driver-input-vboxmouse +Summary: X.org mouse driver for VirtualBox OSE guest OS +Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie +Release: %{rel} +Group: X11/Applications +Requires: xorg-xserver-server >= 1.0.99.901 -%description -n kernel%{_alt_kernel}-smp-misc-vboxdrv -l pl -Modu³ j±dra SMP vboxdrv dla VirtualBox. +%description -n xorg-driver-input-vboxmouse +X.org mouse driver for VirtualBox OSE guest OS. + +%description -n xorg-driver-input-vboxmouse -l pl.UTF-8 +Sterownik myszy dla systemu gościa w VirtualBoksie. + +%package -n xorg-driver-video-vboxvideo +Summary: X.org video driver for VirtualBox OSE guest OS +Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie +Release: %{rel} +Group: X11/Applications +Requires: xorg-xserver-server >= 1.0.99.901 + +%description -n xorg-driver-video-vboxvideo +X.org video driver for VirtualBox OSE guest OS. + +%description -n xorg-driver-video-vboxvideo -l pl.UTF-8 +Sterownik grafiki dla systemu gościa w VirtualBoksie. %prep -%setup -q -n vbox +%setup -q -n %{pname}-%{version}_OSE %patch0 -p0 %patch1 -p0 +%patch2 -p1 + +%ifarch %{x8664} +%patch3 -p1 +%endif + +%patch4 -p1 + +cat <<'EOF' > udev.conf +KERNEL=="vboxdrv", NAME="%k", GROUP="vbox", MODE="0660" +EOF + +install %{SOURCE1} . + +rm -rf PLD-MODULE-BUILD && mkdir PLD-MODULE-BUILD && cd PLD-MODULE-BUILD +../src/VBox/Additions/linux/export_modules modules.tar.gz + tar -zxf modules.tar.gz && rm -f modules.tar.gz +../src/VBox/HostDrivers/Support/linux/export_modules modules.tar.gz && \ + tar -zxf modules.tar.gz && rm -f modules.tar.gz + +%ifarch %{x8664} +# HACK, is this really safe on x86_64? +sed -i -e '/#.*define.*RTMEMALLOC_EXEC_HEAP/d' vboxadd/r0drv/linux/alloc-r0drv-linux.c vboxvfs/r0drv/linux/alloc-r0drv-linux.c +%endif %build -./configure -. ./env.sh -kmk - -cd out/linux.x86/release/bin/src -for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do - if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then - exit 1 - fi - rm -rf o - 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 %{with dist_kernel} - %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts -%else - touch o/include/config/MARKER - ln -sf %{_kernelsrcdir}/scripts o/scripts -%endif - ln -sf ../../include/VBox o/include/VBox - ln -sf ../../include/iprt o/include/iprt - %{__make} -C %{_kernelsrcdir} clean \ - SYSSRC=%{_kernelsrcdir} \ - SYSOUT=$PWD/o \ - M=$PWD O=$PWD/o \ - %{?with_verbose:V=1} - %{__make} -C %{_kernelsrcdir} modules \ - CC="%{__cc}" CPP="%{__cpp}" \ - SYSSRC=%{_kernelsrcdir} \ - SYSOUT=$PWD/o \ - M=$PWD O=$PWD/o \ - %{?with_verbose:V=1} - mv vboxdrv.ko vboxdrv-$cfg.ko -done +%if %{with userspace} +./configure \ + --with-gcc="%{__cc}" \ + --with-g++="%{__cxx}" \ + --disable-kmods + +. ./env.sh && kmk -j1 +%endif + +%if %{with kernel} +cd PLD-MODULE-BUILD +%build_kernel_modules -m vboxadd -C vboxadd +%build_kernel_modules -m vboxdrv -C vboxdrv +cp -a vboxadd/Module.symvers vboxvfs +%build_kernel_modules -m vboxvfs -C vboxvfs -c +cd .. +%endif %install rm -rf $RPM_BUILD_ROOT +%if %{with userspace} install -d \ - $RPM_BUILD_ROOT%{_bindir} \ - $RPM_BUILD_ROOT%{_libdir}/VirtualBox + $RPM_BUILD_ROOT{%{_bindir},%{_pixmapsdir},%{_desktopdir}} \ + $RPM_BUILD_ROOT%{_libdir}/VirtualBox \ + $RPM_BUILD_ROOT/etc/rc.d/init.d -install out/linux.x86/release/bin/{VBox{BFE,Manage,SDL,SVC,XPCOMIPCD},VirtualBox} \ - $RPM_BUILD_ROOT%{_bindir} -install out/linux.x86/release/bin/VBox{DD,DD2,REM,REMImp,RT,VMM,XML,XPCOM,XPCOMIPCC}.so \ +install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtualbox + +install %{SOURCE5} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/VirtualBox-wrapper.sh +for f in {VBox{BFE,Manage,SDL,SVC,XPCOMIPCD},VirtualBox,vditool}; do + install out/linux.%{outdir}/release/bin/$f $RPM_BUILD_ROOT%{_libdir}/VirtualBox/$f + ln -s %{_libdir}/VirtualBox/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f +done + +%ifarch %{x8664} +install out/linux.%{outdir}/release/bin/VBox*.rel \ + $RPM_BUILD_ROOT%{_libdir}/VirtualBox +%endif + +install out/linux.%{outdir}/release/bin/VBox*.so \ $RPM_BUILD_ROOT%{_libdir}/VirtualBox -install out/linux.x86/release/bin/{VBox{DD,DD2}{GC.gc,R0.r0},VMM{GC.gc,R0.r0}} \ +install out/linux.%{outdir}/release/bin/{VBox{DD,DD2}{GC.gc,R0.r0},VMM{GC.gc,R0.r0},*.xpt} \ $RPM_BUILD_ROOT%{_libdir}/VirtualBox -%if %{with kernel} -install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc -%if %{with smp} && %{with dist_kernel} -install out/linux.x86/release/bin/src/vboxdrv-smp.ko \ - $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vboxdrv.ko +install -d $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions +install -d $RPM_BUILD_ROOT%{_libdir}/VirtualBox/nls + +install %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso +cp -a out/linux.%{outdir}/release/bin/components $RPM_BUILD_ROOT%{_libdir}/VirtualBox +cp -a out/linux.%{outdir}/release/bin/nls/* $RPM_BUILD_ROOT%{_libdir}/VirtualBox/nls + +install out/linux.%{outdir}/release/bin/additions/mountvboxsf \ + $RPM_BUILD_ROOT%{_bindir} + +%ifnarch %{x8664} +install -d $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,input} +install out/linux.%{outdir}/release/bin/additions/vboxmouse_drv_14.so \ + $RPM_BUILD_ROOT%{_libdir}/xorg/modules/input/vboxmouse_drv.so +install out/linux.%{outdir}/release/bin/additions/vboxvideo_drv_14.so \ + $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so %endif + +install out/linux.%{outdir}/release/bin/VBox.png $RPM_BUILD_ROOT%{_pixmapsdir}/VBox.png +install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/%{pname}.desktop + +install -d $RPM_BUILD_ROOT/etc/udev/rules.d +install udev.conf $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules +%endif + +%if %{with kernel} +%install_kernel_modules -m PLD-MODULE-BUILD/vboxadd/vboxadd -d misc +%install_kernel_modules -m PLD-MODULE-BUILD/vboxdrv/vboxdrv -d misc +%install_kernel_modules -m PLD-MODULE-BUILD/vboxvfs/vboxvfs -d misc %endif %clean rm -rf $RPM_BUILD_ROOT +%pre +%groupadd -g 221 -r -f vbox + +%post +/sbin/chkconfig --add virtualbox +%service virtualbox restart "VirtualBox OSE" + +%preun +if [ "$1" = "0" ]; then + %service virtualbox stop + /sbin/chkconfig --del virtualbox +fi + +%postun +if [ "$1" = "0" ]; then + %groupremove vbox +fi + +%post -n kernel%{_alt_kernel}-misc-vboxadd +%depmod %{_kernel_ver} + +%postun -n kernel%{_alt_kernel}-misc-vboxadd +%depmod %{_kernel_ver} + %post -n kernel%{_alt_kernel}-misc-vboxdrv %depmod %{_kernel_ver} %postun -n kernel%{_alt_kernel}-misc-vboxdrv %depmod %{_kernel_ver} -%if %{with smp} && %{with dist_kernel} -%post -n kernel%{_alt_kernel}-smp-misc-vboxdrv -%depmod %{_kernel_ver}smp +%post -n kernel%{_alt_kernel}-misc-vboxvfs +%depmod %{_kernel_ver} -%postun -n kernel%{_alt_kernel}-smp-misc-vboxdrv -%depmod %{_kernel_ver}smp -%endif +%postun -n kernel%{_alt_kernel}-misc-vboxvfs +%depmod %{_kernel_ver} +%if %{with userspace} %files %defattr(644,root,root,755) +%doc UserManual.pdf +%dir %{_libdir}/VirtualBox +%dir %{_libdir}/VirtualBox/additions +%dir %{_libdir}/VirtualBox/components +%dir %{_libdir}/VirtualBox/nls +%attr(754,root,root) /etc/rc.d/init.d/virtualbox +%attr(755,root,root) %{_bindir}/mountvboxsf +%attr(755,root,root) %{_bindir}/vditool %attr(755,root,root) %{_bindir}/VBox* %attr(755,root,root) %{_bindir}/VirtualBox -%dir %{_libdir}/VirtualBox -%{_libdir}/VirtualBox +%attr(755,root,root) %{_libdir}/VirtualBox/vditool +%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC +%attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE +%attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage +%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL +%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD +%attr(755,root,root) %{_libdir}/VirtualBox/VBox*.so +%ifarch %{x8664} +%attr(755,root,root) %{_libdir}/VirtualBox/VBox*.rel +%endif +%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox +%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh +%{_libdir}/VirtualBox/*.gc +%{_libdir}/VirtualBox/*.r0 +%{_libdir}/VirtualBox/*.xpt +%{_libdir}/VirtualBox/additions/* +%{_libdir}/VirtualBox/components/* +%lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm +%lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm +%lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm +%lang(de) %{_libdir}/VirtualBox/nls/*_de.qm +%lang(es) %{_libdir}/VirtualBox/nls/*_es.qm +%lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm +%lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm +%lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm +%lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm +%lang(id) %{_libdir}/VirtualBox/nls/*_id.qm +%lang(it) %{_libdir}/VirtualBox/nls/*_it.qm +%lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm +%lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm +%lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm +%lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm +%lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm +%lang(pt_PT) %{_libdir}/VirtualBox/nls/*_pt_PT.qm +%lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm +%lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm +%lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm +%lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm +%lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm +%lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm +%lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm +%lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm +%{_pixmapsdir}/VBox.png +%{_desktopdir}/%{pname}.desktop + +%files udev +%defattr(644,root,root,755) +%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules + +# Drivers are for Guest OS, which is 32-bit. +%ifnarch %{x8664} +%files -n xorg-driver-input-vboxmouse +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so + +%files -n xorg-driver-video-vboxvideo +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so +%endif +%endif + +%if %{with kernel} +%files -n kernel%{_alt_kernel}-misc-vboxadd +%defattr(644,root,root,755) +/lib/modules/%{_kernel_ver}/misc/vboxadd.ko* -%files -n kernel%{_alt_kernel}-misc-vboxdrv +%files -n kernel%{_alt_kernel}-misc-vboxdrv %defattr(644,root,root,755) +/lib/modules/%{_kernel_ver}/misc/vboxdrv.ko* -%if %{with smp} && %{with dist_kernel} -%files -n kernel%{_alt_kernel}-smp-misc-vboxdrv +%files -n kernel%{_alt_kernel}-misc-vboxvfs %defattr(644,root,root,755) +/lib/modules/%{_kernel_ver}/misc/vboxvfs.ko* %endif