]> git.pld-linux.org Git - packages/VirtualBox.git/blame - VirtualBox.spec
- x32 rebuild
[packages/VirtualBox.git] / VirtualBox.spec
CommitLineData
44a0c82d
ER
1# NOTE
2# - https://www.virtualbox.org/wiki/Linux%20build%20instructions
744bc35e
JR
3# TODO
4# - java bindings
74268e47 5# - Package SDK.
ffb38bb6 6# - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2.
5f8b0a92 7# If so check if it is distributable.
21a1d8ab 8# - guest x11 additions: currently incomplete/untested
23790586 9# - enable VDE networking: --enable-vde
21a1d8ab 10# - initscripts for webservice
988a8f09 11# - fix desc for dkms packages (proper wording needed), kernel modules desc is mess as well
48363591 12#
13# Conditional build:
8da42f47 14%bcond_without doc # don't build the documentation
077e37dc 15%bcond_without debuginfo # disable debuginfo creation (to save space when compiling)
d1c4ec5b 16%bcond_without kernel # don't build kernel module
d1c4ec5b 17%bcond_without userspace # don't build userspace package
21a1d8ab 18%bcond_with webservice # webservice (SOAP) support
7223ee37 19%bcond_without lightdm # lightdm greeter
c38a3946 20%bcond_without dkms # build dkms package
bddee32c 21%bcond_without verbose
05f1b1f5 22
163ddb28
JR
23# The goal here is to have main, userspace, package built once with
24# simple release number, and only rebuild kernel packages with kernel
25# version as part of release number, without the need to bump release
26# with every kernel change.
27%if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
28%{error:kernel and userspace cannot be built at the same time on PLD builders}
29exit 1
8833bce1 30%endif
163ddb28 31
8608f39a
JR
32%if %{with kernel}
33%define _duplicate_files_terminate_build 0
34%endif
35
05f9288a
ER
36%if %{without userspace}
37# nothing to be placed to debuginfo package
077e37dc
ER
38%undefine with_debuginfo
39%endif
40
41%if %{without debuginfo}
05f9288a
ER
42%define _enable_debug_packages 0
43%endif
bd3faca3 44
6ca4d491 45%define kbrs %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo "BuildRequires:kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2" ; done)
163ddb28
JR
46%define kpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%kernel_pkg ; done)
47%define bkpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%build_kernel_pkg ; done)
48%define ikpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%install_kernel_pkg ; done)
49
c2413bd0 50%define rel 6
33aeed61 51%define pname VirtualBox
393ec35d
ER
52Summary: VirtualBox - x86 hardware virtualizer
53Summary(pl.UTF-8): VirtualBox - wirtualizator sprzętu x86
6ca4d491 54Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
d57eca9a 55Version: 4.3.20
6ca4d491 56Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
48363591 57License: GPL v2
58Group: Applications/Emulators
33aeed61 59Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
d57eca9a 60# Source0-md5: cf3f25644aa0fae1029e8b362bd4375e
744bc35e 61Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
d57eca9a 62# Source1-md5: 4f6861ee0c584bcf6819cc76a2bd65ab
07e9b84d 63Source2: vboxservice.init
4365ecaf 64Source3: vboxservice.service
4365ecaf
JR
65Source5: mount.vdi
66Source6: udev.rules
67Source7: %{pname}-virtualbox-host-modules-load.conf
68Source8: %{pname}-virtualbox-guest-modules-load.conf
38d06cb9
ER
69Source9: vboxautostart.init
70Source10: autostart.cfg
33aeed61 71Patch0: %{pname}-configure-spaces.patch
db6f33e3
KK
72Patch1: %{pname}-VBoxSysInfo.patch
73Patch2: %{pname}-warning_workaround.patch
74Patch3: %{pname}-dri.patch
44a0c82d 75Patch4: wrapper.patch
db6f33e3 76Patch5: xserver-1.12.patch
44a0c82d 77Patch6: hardening-shared.patch
d3884acf 78Patch7: lightdm-greeter-glib-includes.patch
8d08b907 79Patch8: lightdm-greeter-g++-link.patch
621cd96c 80Patch9: pld-guest.patch
b980c81c
ER
81Patch10: 16-no-update.patch
82Patch11: 18-system-xorg.patch
11e7bb59 83Patch12: x8664-build.patch
f07200e5 84Patch13: %{pname}-all-translations.patch
48363591 85URL: http://www.virtualbox.org/
83ffcfa8 86%if %{with userspace}
ce9843cd 87%ifarch %{x8664}
c0749bd0 88BuildRequires: gcc-multilib-32
ce9843cd 89BuildRequires: glibc-devel(i686)
c0749bd0
JR
90BuildRequires: libstdc++-multilib-32-devel
91BuildRequires: libstdc++-multilib-32-static
ce9843cd 92%endif
ce9843cd
ER
93%if "%{pld_release}" == "ac"
94BuildRequires: XFree86-devel
95%else
1abc0217 96BuildRequires: xorg-lib-libXcomposite-devel
ce9843cd
ER
97BuildRequires: xorg-lib-libXcursor-devel
98BuildRequires: xorg-lib-libXmu-devel
e649d11e 99BuildRequires: xorg-proto-glproto-devel
acf12a87 100BuildRequires: xorg-xserver-server-devel
ce9843cd 101%endif
00149140 102BuildRequires: OpenGL-GLU-devel
523e7409 103BuildRequires: OpenGL-devel
cef75615 104BuildRequires: QtGui-devel
2d17bb72 105BuildRequires: QtNetwork-devel
dd64a424 106BuildRequires: QtOpenGL-devel
c574efad 107BuildRequires: SDL-devel >= 1.2.7
9a1cb119 108BuildRequires: acpica
ba702945 109BuildRequires: alsa-lib-devel >= 1.0.6
e5aaadde 110BuildRequires: bash
48363591 111BuildRequires: bcc
112BuildRequires: bin86
07ef7f06 113BuildRequires: curl-devel
fc19d844 114BuildRequires: device-mapper-devel
8da42f47 115%{?with_doc:BuildRequires: docbook-dtd44-xml}
44a0c82d 116BuildRequires: fakeroot
df3c39bd 117%{?with_lightdm:BuildRequires: fltk-devel}
eba4b2aa 118BuildRequires: gcc >= 5:3.2.3
55f7d7d3 119%{?with_webservice:BuildRequires: gsoap-devel}
e9aa839a 120BuildRequires: issue
7733446a 121BuildRequires: kBuild >= 0.1.9998.2700
48363591 122BuildRequires: libIDL-devel
fa974331 123BuildRequires: libcap-static
acf12a87 124BuildRequires: libdrm-devel
ff01a704 125BuildRequires: libpng-devel >= 1.2.5
d22f0a53 126BuildRequires: libstdc++-devel >= 5:3.2.3
4fff279a 127BuildRequires: libstdc++-static >= 5:3.2.3
48363591 128BuildRequires: libuuid-devel
b75fd17a 129BuildRequires: libvncserver-devel >= 0.9.9
df3c39bd 130BuildRequires: libvpx-devel
ba702945 131BuildRequires: libxml2-devel >= 2.6.26
76ea5ecb 132BuildRequires: libxslt-devel >= 1.1.17
ba702945 133BuildRequires: libxslt-progs >= 1.1.17
4711e94b 134%{?with_lightdm:BuildRequires: lightdm-libs-qt4-devel}
744bc35e 135BuildRequires: makeself
90de3b27 136BuildRequires: mkisofs
3613936b 137BuildRequires: pam-devel
acf12a87 138BuildRequires: pixman-devel
0bf43862 139BuildRequires: pkgconfig
ba702945 140BuildRequires: pulseaudio-devel >= 0.9.0
523e7409 141BuildRequires: python-devel
6055e733 142BuildRequires: python-modules
250583d4 143BuildRequires: qt4-build >= 4.2.0
2700662b 144BuildRequires: qt4-linguist
a59a82ea 145BuildRequires: rpmbuild(macros) >= 1.701
1e840a77 146BuildRequires: sed >= 4.0
8da42f47 147%if %{with doc}
744bc35e
JR
148BuildRequires: texlive-fonts-bitstream
149BuildRequires: texlive-fonts-other
150BuildRequires: texlive-fonts-type1-bitstream
151BuildRequires: texlive-format-pdflatex
acf12a87 152BuildRequires: texlive-latex-ucs
660fb056 153BuildRequires: texlive-xetex
8da42f47 154%endif
0bf43862 155BuildRequires: which
e5aaadde 156BuildRequires: xalan-c-devel >= 1.10.0
e5aaadde 157BuildRequires: xerces-c-devel >= 2.6.0
fc19d844 158BuildRequires: yasm
e5aaadde 159BuildRequires: zlib-devel >= 1.2.1
23d9d34e 160%endif
a59a82ea 161%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
0afa64ad 162Requires(post,preun): /sbin/chkconfig
5f1cec1f
ER
163Requires(postun): /usr/sbin/groupdel
164Requires(pre): /usr/bin/getgid
165Requires(pre): /usr/sbin/groupadd
b75fd17a 166Requires: libvncserver >= 0.9.9
12db98a7 167Requires: udev-core
5f1cec1f 168Provides: group(vbox)
873b17cf 169Obsoletes: VirtualBox-udev < 4.2.10-5
168d3cff 170ExclusiveArch: %{ix86} %{x8664} x32
48363591 171BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
172
eba4b2aa 173%ifarch %{x8664}
f377eb62 174%define vbox_arch amd64
5088674d 175%else
f377eb62 176%define vbox_arch x86
5088674d 177%endif
f377eb62 178%define vbox_platform linux.%{vbox_arch}
27a1aef6 179%define outdir out/%{vbox_platform}/release/bin
8d08b907 180%define objdir out/%{vbox_platform}/release/obj
5088674d 181
48363591 182%description
393ec35d 183Oracle VirtualBox is a general-purpose full virtualizer for x86
48363591 184hardware. Targeted at server, desktop and embedded use, it is now the
185only professional-quality virtualization solution that is also Open
186Source Software.
187
393ec35d 188Some of the features of VirtualBox are:
48363591 189
393ec35d 190Modularity: VirtualBox has an extremely modular design with
48363591 191well-defined internal programming interfaces and a client/server
192design. This makes it easy to control it from several interfaces at
193once: for example, you can start a virtual machine in a typical
194virtual machine GUI and then control that machine from the command
393ec35d
ER
195line. VirtualBox also comes with a full Software Development Kit: even
196though it is Open Source Software, you don't have to hack the source
197to write a new interface for VirtualBox.
48363591 198
199Virtual machine descriptions in XML: the configuration settings of
200virtual machines are stored entirely in XML and are independent of the
201local machines. Virtual machine definitions can therefore easily be
202ported to other computers.
203
1067d08d
ER
204You should install this package in your Host OS.
205
fd8fc899 206%description -l pl.UTF-8
393ec35d
ER
207Oracle VirtualBox jest emulatorem sprzętu x86. Kierowany do zastosowań
208serwerowych, desktopowych oraz wbudowanych jest obecnie jedynym
209wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym również jako
210Otwarte Oprogramowanie.
48363591 211
fd8fc899 212Przykładowe cechy VirtualBoksa:
48363591 213
393ec35d 214Modularność: VirtualBox jest wysoce zmodularyzowanym produktem z
fd8fc899
JR
215dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
216klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
217różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
218poziomu interfejsu graficznego, a później kontrolować ją z linii
393ec35d
ER
219poleceń. VirtualBox dostarcza również pełny pakiet deweloperski, co
220pozwala stworzyć dowolny inny interfejs zarządzania maszyną wirtualną.
48363591 221
fd8fc899
JR
222Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
223wirtualnych są w całości przechowywane w XML-u i są niezależne od
224lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
225konfigurację maszyny wirtualnej na inny komputer.
48363591 226
501bee39
ER
227%package gui
228Summary: Qt GUI part for VirtualBox
229Group: X11/Applications
230Requires: %{name} = %{version}-%{release}
231Requires: QtCore >= 4.7.0
232Requires: desktop-file-utils
233Requires: desktop-file-utils
234Requires: fontconfig
235Requires: fonts-Type1-urw
44a0c82d
ER
236Requires: gtk-update-icon-cache
237Requires: hicolor-icon-theme
501bee39
ER
238Requires: shared-mime-info
239Suggests: gxmessage
6f37454e 240Conflicts: %{name} < 4.3.8-3
501bee39
ER
241
242%description gui
243Qt GUI part for VirtualBox.
244
90de3b27
ER
245%package doc
246Summary: VirtualBox documentation
247Group: Documentation
248
249%description doc
250This package contains VirtualBox User Manual.
251
ffb38bb6
ER
252%package additions
253Summary: VirtualBox Guest Additions
254Group: Base
b9cc0b23 255Requires: %{name} = %{version}
44a0c82d
ER
256%if "%{_rpmversion}" >= "5"
257BuildArch: noarch
258%endif
ffb38bb6 259
00a4a7ca 260%description additions
ffb38bb6
ER
261VirtualBox Guest Additions.
262
263This package contains ISO9660 image with drivers for Guest OS.
264
1067d08d
ER
265You should install this package in your Host OS.
266
267%package guest
c0372ee9
ER
268Summary: VirtualBox Guest tools
269Group: Base
551622b8 270Provides: group(vboxsf)
4365ecaf 271Requires(post): systemd-units >= 38
551622b8
ER
272Requires(post,preun): /sbin/chkconfig
273Requires(postun): /usr/sbin/groupdel
274Requires(pre): /usr/bin/getgid
275Requires(pre): /usr/sbin/groupadd
ffb104d5 276Requires: rc-scripts
2e3636e9 277Requires: systemd-units >= 38
3d9b19d8
ER
278Suggests: kernel(vboxguest)
279Suggests: kernel(vboxsf)
bf131a21 280Suggests: pam-pam_vbox
c0372ee9
ER
281
282%description guest
283Tools that utilize kernel modules for supporting integration with the
284Host, including file sharing.
285
3d9b19d8
ER
286You should install this package in your Guest OS for base VirtualBox
287communication
c0372ee9
ER
288
289%package guest-x11
307e824c
ER
290Summary: VirtualBox Guest X11 Additions
291Group: X11/Applications
c0372ee9 292Requires: %{name}-guest = %{version}-%{release}
307e824c 293Requires: xorg-app-xrandr
1067d08d 294Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
3d9b19d8 295Suggests: kernel(vboxvideo)
873b17cf 296Obsoletes: xorg-driver-input-vboxmouse < %{version}-%{release}
1067d08d 297
c0372ee9 298%description guest-x11
3d9b19d8
ER
299Tools for X11 session that utilize kernel modules for supporting
300integration with the Host, like tracking of mouse pointer movement and
301X.org X11 video and mouse drivers
1067d08d 302
c0372ee9 303You should install this package in your Guest OS for X11 session.
1067d08d 304
21a1d8ab
ER
305%package webservice
306Summary: VirtualBox Web Service
307Group: Applications/Emulators
308Requires: %{name} = %{version}-%{release}
309
310%description webservice
311This package contains VirtualBox web service API daemon. It allows to
312control virtual machines via web interface.
313
9e4dd6a9 314%package -n lightdm-greeter-vbox
8d08b907
ER
315Summary: VirtualBox greeter for lightdm
316Group: Themes
22380dc7
ER
317# NOTE: '#' in url is lost because rpm treats it as comment, even hacking with
318# macros doesn't help as rpmbuild takes final result to parse
8d08b907 319URL: http://www.virtualbox.org/manual/ch09.html#autologon_unix_lightdm
650ee651 320Requires: %{name} = %{version}-%{release}
4365ecaf 321Requires: kernel(vboxguest)
8d08b907 322Requires: lightdm >= 1.0.1
7d778590 323Requires: pam-pam_vbox = %{version}-%{release}
8d08b907
ER
324Provides: lightdm-greeter
325
9e4dd6a9 326%description -n lightdm-greeter-vbox
8d08b907
ER
327VirtualBox greeter for LightDM.
328
3613936b
JR
329%package -n pam-pam_vbox
330Summary: PAM module to perform automated guest logons
331Group: Base
332
333%description -n pam-pam_vbox
3ee6b9d9
ER
334PAM module (Pluggable Authentication Module) which can be used to
335perform automated guest logons.
3613936b 336
fbea1005 337%package -n xorg-driver-video-vboxvideo
393ec35d
ER
338Summary: X.org video driver for VirtualBox guest OS
339Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie
fbea1005 340Group: X11/Applications
20b8335d 341Requires: Mesa-dri-driver-swrast
fbea1005
ER
342Requires: xorg-xserver-libdri >= 1.7.4
343Requires: xorg-xserver-server >= 1.0.99.901
a4654d40 344%{?requires_xorg_xserver_videodrv}
7e84622a
ER
345Provides: OpenGL = 2.1
346Provides: OpenGL-GLX = 1.3
2e3636e9 347Provides: xorg-driver-video
7e84622a 348Provides: xorg-xserver-module(glx)
fbea1005
ER
349
350%description -n xorg-driver-video-vboxvideo
393ec35d 351X.org video driver for VirtualBox guest OS.
fbea1005
ER
352
353%description -n xorg-driver-video-vboxvideo -l pl.UTF-8
393ec35d 354Sterownik grafiki dla systemu gościa w VirtualBoksie.
fbea1005 355
988a8f09
ER
356%package -n dkms-vboxguest
357Summary: VirtualBox kernel modules source for Linux Guest
358Summary(pl.UTF-8): Moduły VirtualBoksa do jądra Linuksa dla systemu gościa
359License: GPL v2+
360Group: Base/Kernel
62c43b99 361Requires: dkms
988a8f09
ER
362%if "%{_rpmversion}" >= "5"
363BuildArch: noarch
364%endif
365
366%description -n dkms-vboxguest
367This package contains DKMS-ready VirtualBox Guest Additions for Linux
368Module, host file system access (Shared Folders) and DRM support for
369Linux guest system.
370
371%description -n dkms-vboxguest -l pl.UTF-8
372Ten pakiet zawiera moduł jądra Linuksa vboxguest dla VirtualBoksa -
373dodatki dla systemu gościa, dostęp do plików systemu głównego z
374poziomu systemu gościa i sterownik obsługi DRM.
375
376%package -n dkms-vboxhost
377Summary: VirtualBox Support Drivers source
378Summary(pl.UTF-8): Moduły jądra Linuksa dla VirtualBoksa
379License: GPL v2+
380Group: Base/Kernel
62c43b99 381Requires: dkms
988a8f09
ER
382%if "%{_rpmversion}" >= "5"
383BuildArch: noarch
384%endif
385
386%description -n dkms-vboxhost
387This package contains DKMS enabled sourcecode of VirtualBox Support
388Driver, Network Adapter Driver, Network Filter Driver and PCI card
389passthrough driver that works as host proxy between guest and PCI
390hardware.
391
392%description -n dkms-vboxhost -l pl.UTF-8
393Ten pakiet zawiera sterownik wsparcia dla systemu głównego, sterownik
394witrualnej karty sieciowej, sterownik filtrowania sieci dla systemu
395głównego oraz sterownik, ktory działa jako proxy między gościem i
396gospodarzem sprzętu PCI.
397
18adabff 398# KERNEL PACKAGES
b980c81c 399
18adabff 400# KEEP ALL REGULAR SUBPACKAGES BEFORE KERNEL PACKAGES.
b980c81c 401
163ddb28
JR
402%define kernel_pkg()\
403%package -n kernel%{_alt_kernel}-virtualbox-guest\
404Summary: VirtualBox kernel modules for Linux Guest\
405Summary(pl.UTF-8): Moduły VirtualBoksa do jądra Linuksa dla systemu gościa\
406Release: %{rel}@%{_kernel_ver_str}\
407Group: Base/Kernel\
408Requires(post,postun): /sbin/depmod\
409Requires(post): systemd-units >= 38\
410Requires: dev >= 2.9.0-7\
411Requires: systemd-units >= 38\
163ddb28 412%requires_releq_kernel\
eb3ec0e6 413Requires: %{releq_kernel -n drm}\
163ddb28 414Requires(postun): %releq_kernel\
163ddb28
JR
415Provides: kernel(vboxguest) = %{version}-%{rel}\
416Provides: kernel(vboxsf) = %{version}-%{rel}\
417Provides: kernel(vboxvideo) = %{version}-%{rel}\
418Obsoletes: kernel-init-guest\
419Conflicts: kernel%{_alt_kernel}-virtualbox-host\
420\
421%description -n kernel%{_alt_kernel}-virtualbox-guest\
422This package contains VirtualBox Guest Additions for Linux Module,\
423host file system access (Shared Folders) and DRM support for\
424Linux guest system.\
425\
426%description -n kernel%{_alt_kernel}-virtualbox-guest -l pl.UTF-8\
427Ten pakiet zawiera moduł jądra Linuksa vboxguest dla VirtualBoksa -\
428dodatki dla systemu gościa, dostęp do plików systemu głównego z\
429poziomu systemu gościa i sterownik obsługi DRM.\
430\
431%package -n kernel%{_alt_kernel}-virtualbox-host\
432Summary: VirtualBox Support Drivers\
433Summary(pl.UTF-8): Moduły jądra Linuksa dla VirtualBoksa\
434Release: %{rel}@%{_kernel_ver_str}\
435Group: Base/Kernel\
436Requires(post,postun): /sbin/depmod\
437Requires(post): systemd-units >= 38\
438Requires: dev >= 2.9.0-7\
163ddb28
JR
439%requires_releq_kernel\
440Requires(postun): %releq_kernel\
163ddb28 441Requires: systemd-units >= 38\
163ddb28
JR
442Provides: kernel(vboxdrv) = %{version}-%{rel}\
443Provides: kernel(vboxnetadp) = %{version}-%{rel}\
444Provides: kernel(vboxnetflt) = %{version}-%{rel}\
445Provides: kernel(vboxpci) = %{version}-%{rel}\
446Obsoletes: kernel-init-host\
447\
448%description -n kernel%{_alt_kernel}-virtualbox-host\
449This package contains VirtualBox Support Driver, Network Adapter\
450Driver, Network Filter Driver and PCI card passthrough driver that\
451works as host proxy between guest and PCI hardware.\
452\
453%description -n kernel%{_alt_kernel}-virtualbox-host -l pl.UTF-8\
454Ten pakiet zawiera sterownik wsparcia dla systemu głównego, sterownik\
455witrualnej karty sieciowej, sterownik filtrowania sieci dla systemu\
456głównego oraz sterownik, ktory działa jako proxy między gościem i\
457gospodarzem sprzętu PCI.\
458\
459%if %{with kernel}\
460%files -n kernel%{_alt_kernel}-virtualbox-guest\
461%defattr(644,root,root,755)\
462%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/virtualbox-guest.conf\
463/lib/modules/%{_kernel_ver}/misc/vboxguest.ko*\
464/lib/modules/%{_kernel_ver}/misc/vboxsf.ko*\
465/lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*\
466\
467%files -n kernel%{_alt_kernel}-virtualbox-host\
468%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/virtualbox-host.conf\
469/lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*\
470/lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*\
471/lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*\
472/lib/modules/%{_kernel_ver}/misc/vboxpci.ko*\
473%endif\
474\
475%post -n kernel%{_alt_kernel}-virtualbox-guest\
476%depmod %{_kernel_ver}\
477\
478%postun -n kernel%{_alt_kernel}-virtualbox-guest\
479%depmod %{_kernel_ver}\
480\
481%post -n kernel%{_alt_kernel}-virtualbox-host\
482%depmod %{_kernel_ver}\
483\
484%postun -n kernel%{_alt_kernel}-virtualbox-host\
485%depmod %{_kernel_ver}\
486%{nil}
487
488%define build_kernel_pkg()\
489export KERN_DIR=%{_kernelsrcdir}\
490cd PLD-MODULE-BUILD/HostDrivers\
491%build_kernel_modules -m vboxdrv -C vboxdrv\
492%build_kernel_modules -m vboxnetadp -C vboxnetadp\
493%build_kernel_modules -m vboxnetflt -C vboxnetflt\
494%build_kernel_modules -m vboxpci -C vboxpci\
495cd ../GuestDrivers\
496%build_kernel_modules -m vboxguest -C vboxguest\
497cp -a vboxguest/Module.symvers vboxsf\
498%build_kernel_modules -m vboxsf -C vboxsf -c\
499%build_kernel_modules -m vboxvideo -C vboxvideo\
500cd ../..\
501%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc\
502%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc\
503%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc\
504%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxpci/vboxpci -d misc\
505%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc\
506%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc\
507%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo/vboxvideo -d misc\
508%{nil}
509
a59a82ea 510%{?with_kernel:%{expand:%create_kernel_packages}}
67a4f3c1 511
48363591 512%prep
33aeed61 513%setup -q -n %{pname}-%{version}
e709ce6b 514%patch0 -p1
db6f33e3 515%patch1 -p1
006342ee 516%patch2 -p1
8473a80d 517%patch3 -p1
44a0c82d 518%patch4 -p1
9a7b1cdc 519%patch5 -p1
44a0c82d 520%patch6 -p1
d3884acf 521%patch7 -p1
8d08b907 522%patch8 -p1
621cd96c 523%patch9 -p1
077e37dc
ER
524%patch10 -p1
525%patch11 -p1
11e7bb59 526%patch12 -p1
28b5d8a8 527%patch13 -p0
fddcb741 528
744bc35e
JR
529%{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
530 -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
0b6de2b7 531
f471b832
ER
532# Respect LDFLAGS
533%{__sed} -i -e "s@_LDFLAGS\.%{vbox_arch}*.*=@& %{rpmldflags}@g" \
534 -i Config.kmk src/libs/xpcom18a4/Config.kmk
535
44a0c82d 536%{__sed} -i -e 's#@INSTALL_DIR@#%{_libdir}/%{pname}#' src/VBox/Installer/linux/VBox.sh
fa19f650 537
bc1ca596 538%if %{with kernel}
1794e74d
ER
539install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
540cd PLD-MODULE-BUILD
541../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
542tar -zxf guest-modules.tar.gz -C GuestDrivers
543
cadbdf55 544../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
1794e74d
ER
545tar -zxf host-modules.tar.gz -C HostDrivers
546cd -
077e37dc 547%endif
59d12745 548
e9ed9ec1
ER
549# using system kBuild package
550%{__rm} -r kBuild
551
621cd96c
ER
552# use linux icon for now
553cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}.png
554cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}_64.png
555
316a5697
ER
556cat <<'EOF'>> LocalConfig.kmk
557%{?with_verbose:KBUILD_VERBOSE=3}
558USERNAME=%(id -un)
559__VBOX_BUILD_PUBLISHER=_PLD
560VBOX_VERSION_STRING=$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)_PLD
561XSERVER_VERSION=%(rpm -q --queryformat '%{V}\n' xorg-xserver-server-devel | awk -F. '{ print $1 $2 }' 2>/dev/null || echo ERROR)
562VBOX_USE_SYSTEM_XORG_HEADERS=1
563%if %{with lightdm}
564VBOX_WITH_LIGHTDM_GREETER=1
565VBOX_WITH_LIGHTDM_GREETER_PACKING=1
566%endif
567TOOL_GCC3_CFLAGS=%{rpmcflags}
568TOOL_GCC3_CXXFLAGS=%{rpmcxxflags}
569VBOX_GCC_OPT=%{rpmcxxflags}
44a0c82d
ER
570
571VBOX_PATH_APP_PRIVATE_ARCH := %{_libdir}/%{pname}
572VBOX_PATH_APP_PRIVATE := %{_datadir}/%{pname}
573VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH)
574VBOX_WITH_ORIGIN :=
575VBOX_WITH_RUNPATH := $(VBOX_PATH_APP_PRIVATE_ARCH)
576#VBOX_PATH_APP_DOCS := %{_docdir}/%{pname}-doc-%{version}
577
578# don't build testcases to save time, they are not needed for the package
579VBOX_WITH_TESTCASES :=
580VBOX_WITH_TESTSUITE :=
316a5697
ER
581EOF
582
fddcb741 583%build
83ffcfa8 584%if %{with userspace}
106d8451 585./configure \
ae1bbc88 586 --with-gcc="%{__cc}" \
587 --with-g++="%{__cxx}" \
8da42f47 588 %{!?with_doc:--disable-docs} \
744bc35e 589 --disable-java \
5a497466 590 --disable-hardening \
01e414ba 591 --disable-kmods \
55f7d7d3
ER
592 --enable-vnc \
593 %{__enable webservice} \
594 %{nil}
48363591 595
316a5697 596kmk %{?_smp_mflags}
74268e47 597
744bc35e 598%{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
d1c4ec5b 599%endif
48363591 600
a59a82ea 601%{?with_kernel:%{expand:%build_kernel_packages}}
51ef4838 602
48363591 603%install
604rm -rf $RPM_BUILD_ROOT
605
d1c4ec5b 606%if %{with userspace}
c11f39b3 607install -d $RPM_BUILD_ROOT{%{_bindir},/sbin,%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
501bee39 608 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_datadir}/mime/packages} \
2daf9ea4 609 $RPM_BUILD_ROOT%{_sysconfdir}/vbox/autostart \
12db98a7 610 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input} \
4365ecaf 611 $RPM_BUILD_ROOT{/lib/udev,/etc/udev/rules.d} \
44a0c82d 612 $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{systemdunitdir},%{_usrsrc}}
a70507fb 613
dca6c443 614# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
632ec0b7 615if cp -al COPYING $RPM_BUILD_ROOT/COPYING; then
dca6c443 616 l=l
44a0c82d 617 %{__rm} $RPM_BUILD_ROOT/COPYING
dca6c443
ER
618fi
619
33aeed61 620cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
6110bfb9 621cp -a$l %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxGuestAdditions.iso
48363591 622
44a0c82d 623# vboxvideo
ffd7f18a 624%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
44a0c82d 625%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_system.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
27a1aef6 626# XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
ffd7f18a
JR
627%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
628%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
629%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
630%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
631%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
632%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
d1c4ec5b 633
1067d08d 634# Guest Only Tools
ffd7f18a
JR
635%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
636%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
44a0c82d 637%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
4e3859c5 638install -d $RPM_BUILD_ROOT/etc/xdg/autostart
90de3b27
ER
639cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
640 $RPM_BUILD_ROOT/etc/xdg/autostart/vboxclient.desktop
4e3859c5 641install -p src/VBox/Additions/x11/Installer/98vboxadd-xclient $RPM_BUILD_ROOT%{_bindir}/VBoxClient-all
44a0c82d
ER
642install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxservice
643install -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/vboxservice.service
1067d08d 644
38d06cb9
ER
645install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxautostart
646%{__sed} -i -e 's#@INSTALL_DIR@#%{_libdir}/%{pname}#' $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxautostart
647cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/vbox
648
8d08b907
ER
649%if %{with lightdm}
650install -d $RPM_BUILD_ROOT%{_datadir}/xgreeters
29c4b6b6 651%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_sbindir}}/vbox-greeter
8d08b907
ER
652cp -p %{objdir}/Additions/Installer/linux/share/VBoxGuestAdditions/vbox-greeter.desktop $RPM_BUILD_ROOT%{_datadir}/xgreeters
653%endif
654
bc1ca596
ER
655%if %{with dkms}
656mv $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel}
657%endif
658
44a0c82d
ER
659# pam
660install -d $RPM_BUILD_ROOT/%{_lib}/security
661%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,/%{_lib}/security}/pam_vbox.so
662
663# mount.vboxsf
664%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
665install -p mount.vboxsf $RPM_BUILD_ROOT/sbin/mount.vboxsf
666
667# mount.vdi
668install -p %{SOURCE5} $RPM_BUILD_ROOT/sbin/mount.vdi
669
670# these belong to .iso
671%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/autorun.sh
672%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/runasroot.sh
673
ce061de6 674# scripts to setup modules, x11 and service. we have covered that in our packages
44a0c82d
ER
675%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd
676%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-service
677%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-x11
ce061de6
ER
678
679# unknown - checkme
680%if 1
44a0c82d 681%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/helpers/generate_service_file
ffd7f18a
JR
682%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
683%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
684%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
ffd7f18a
JR
685%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/load.sh
686%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/loadall.sh
ffd7f18a 687%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/VBoxHeadlessXOrg.sh
ffd7f18a
JR
688%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/init_template.sh
689%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install_service
44a0c82d
ER
690%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
691%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
1067d08d 692%endif
dca6c443 693
44a0c82d
ER
694# use upstream installer to relocate rest of the files, fakeroot because it forces uid/gid 0
695fakeroot sh -x $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install.sh \
696 --ose \
697 --prefix %{_prefix} \
698 %{!?with_webservice:--no-web-service} \
699 --root $RPM_BUILD_ROOT
e56dcfeb 700
44a0c82d 701%{__mv} $RPM_BUILD_ROOT{%{_datadir}/%{pname},/lib/udev}/VBoxCreateUSBNode.sh
aac4c380 702cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/udev/rules.d/60-vboxdrv.rules
44a0c82d 703
bc1ca596
ER
704%if %{with dkms}
705mv $RPM_BUILD_ROOT%{_datadir}/%{pname}/src $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
706%{__rm} $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}_PLD
707%endif
708
44a0c82d
ER
709# cleanup lowercased variants, not used in any script (less cruft)
710%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxautostart
711%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxballoonctrl
712%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxheadless
713%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxmanage
714%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxsdl
715%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/virtualbox
716
717# cleanup unpackaged
718%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{sdk,testcase}
719%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace
44a0c82d
ER
720%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
721%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
722%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/generated.sh
723%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack-license.*
44a0c82d
ER
724%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/vboxapi*
725
726# weird icon size
727%{__rm} -r $RPM_BUILD_ROOT%{_iconsdir}/hicolor/40x40
728# duplicate, we already have virtualbox.png (128x128), this is 32x32
729%{__rm} -r $RPM_BUILD_ROOT%{_pixmapsdir}/VBox.png
730
731%if %{with doc}
732ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual.pdf
4f88ff56 733ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual_fr_FR.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual_fr_FR.pdf
44a0c82d 734%endif
c38a3946 735%endif
988a8f09 736
da083e45 737%if %{with kernel}
4365ecaf 738install -d $RPM_BUILD_ROOT{/etc/modules-load.d,/sbin}
163ddb28
JR
739
740cp -a PLD-MODULE-BUILD/installed/* $RPM_BUILD_ROOT
fa974331 741
35ccdfcc 742# Tell systemd to load modules
4365ecaf
JR
743cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/modules-load.d/virtualbox-host.conf
744cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/modules-load.d/virtualbox-guest.conf
d1c4ec5b 745%endif
05f1b1f5 746
48363591 747%clean
748rm -rf $RPM_BUILD_ROOT
749
3b63d3e8 750%pre
751%groupadd -g 221 -r -f vbox
752
14561782 753%post
38d06cb9
ER
754/sbin/chkconfig --add vboxautostart
755%service -n vboxautostart restart
756
12db98a7
JR
757for i in /sys/bus/usb/devices/*; do
758 if [ -r "$i/dev" ]; then
759 dev="`cat "$i/dev" 2>/dev/null || true`"
760 major="`expr "$dev" : '\(.*\):' 2> /dev/null || true`"
761 minor="`expr "$dev" : '.*:\(.*\)' 2> /dev/null || true`"
762 class="`cat $i/bDeviceClass 2> /dev/null || true`"
763 /lib/udev/VBoxCreateUSBNode.sh "$major" "$minor" "$class" vbox 2>/dev/null
764 fi
765done
1403ac49 766
d8ed80f4 767cat << 'EOF'
4365ecaf 768You must install vboxdrv kernel modules for this software to work:
163ddb28 769 kernel*-virtualbox-host-%{version}-%{rel}@*
05f12a30 770
fa974331 771On Guest Linux system you might want to install:
163ddb28 772 kernel*-virtualbox-guest-%{version}-%{rel}@*
7841ddfd 773
d8ed80f4 774EOF
775
38d06cb9
ER
776%preun
777if [ "$1" = "0" ]; then
778 /sbin/chkconfig --del vboxautostart
779 %service vboxautostart -q stop
780fi
781
782
3b63d3e8 783%postun
784if [ "$1" = "0" ]; then
785 %groupremove vbox
786fi
787
501bee39
ER
788%post gui
789%update_desktop_database
44a0c82d 790%update_icon_cache hicolor
501bee39
ER
791%update_mime_database
792
793%postun gui
794%update_desktop_database
44a0c82d 795%update_icon_cache hicolor
501bee39
ER
796%update_mime_database
797
551622b8
ER
798%pre guest
799# Add a group "vboxsf" for Shared Folders access
800# All users which want to access the auto-mounted Shared Folders have to be added to this group.
801%groupadd -g 266 -r -f vboxsf
802
07e9b84d 803%post guest
31e46441
ER
804/sbin/chkconfig --add vboxservice
805%service vboxservice restart
4365ecaf 806%systemd_post vboxservice.service
07e9b84d 807
b93128e2 808%preun guest
07e9b84d 809if [ "$1" = "0" ]; then
31e46441
ER
810 /sbin/chkconfig --del vboxservice
811 %service vboxservice -q stop
07e9b84d 812fi
4365ecaf 813%systemd_preun vboxservice.service
07e9b84d 814
4365ecaf 815%postun guest
551622b8
ER
816if [ "$1" = "0" ]; then
817 %groupremove vboxsf
818fi
4365ecaf 819%systemd_reload
ece7f2f1 820
4365ecaf
JR
821%triggerpostun guest -- VirtualBox-guest < 4.3.0-1
822%systemd_trigger vboxservice.service
ece7f2f1 823
4365ecaf
JR
824%pre -n lightdm-greeter-vbox
825%addusertogroup xdm vbox
74268e47 826
988a8f09 827%post -n dkms-vboxguest
988a8f09
ER
828dkms add -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
829dkms build -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
830dkms install -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade || :
831
832%preun -n dkms-vboxguest
988a8f09
ER
833dkms remove -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade --all || :
834
835%post -n dkms-vboxhost
988a8f09
ER
836dkms add -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
837dkms build -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
838dkms install -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade || :
839
840%preun -n dkms-vboxhost
988a8f09
ER
841dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
842
d1c4ec5b 843%if %{with userspace}
48363591 844%files
845%defattr(644,root,root,755)
2daf9ea4
ER
846%dir %attr(751,root,root) %{_sysconfdir}/vbox
847%dir %attr(770,root,vbox) %{_sysconfdir}/vbox/autostart
38d06cb9
ER
848%attr(640,root,vbox) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vbox/autostart.cfg
849%attr(754,root,root) /etc/rc.d/init.d/vboxautostart
44a0c82d 850%attr(755,root,root) /sbin/mount.vdi
753cf356
ER
851%attr(755,root,root) %{_bindir}/VBox
852%attr(755,root,root) %{_bindir}/VBoxAutostart
853%attr(755,root,root) %{_bindir}/VBoxBalloonCtrl
85b005e2 854%attr(755,root,root) %{_bindir}/VBoxHeadless
855%attr(755,root,root) %{_bindir}/VBoxManage
856%attr(755,root,root) %{_bindir}/VBoxSDL
85b005e2 857%attr(755,root,root) %{_bindir}/VBoxTunctl
44a0c82d 858%dir %{_libdir}/%{pname}
753cf356 859# libraries
23790586
ER
860%attr(755,root,root) %{_libdir}/%{pname}/DBGCPlugInDiggers.so
861%attr(755,root,root) %{_libdir}/%{pname}/VBoxAuth.so
862%attr(755,root,root) %{_libdir}/%{pname}/VBoxAuthSimple.so
23790586 863%attr(755,root,root) %{_libdir}/%{pname}/VBoxDD.so
753cf356 864%attr(755,root,root) %{_libdir}/%{pname}/VBoxDD2.so
23790586
ER
865%attr(755,root,root) %{_libdir}/%{pname}/VBoxDDU.so
866%attr(755,root,root) %{_libdir}/%{pname}/VBoxDragAndDropSvc.so
23790586
ER
867%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestControlSvc.so
868%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestPropSvc.so
23790586
ER
869%attr(755,root,root) %{_libdir}/%{pname}/VBoxHostChannel.so
870%attr(755,root,root) %{_libdir}/%{pname}/VBoxKeyboard.so
23790586
ER
871%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhostcrutil.so
872%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhosterrorspu.so
873%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLrenderspu.so
874%attr(755,root,root) %{_libdir}/%{pname}/VBoxPython*.so
875%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM.so
753cf356
ER
876%attr(755,root,root) %{_libdir}/%{pname}/VBoxRT.so
877%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedClipboard.so
878%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedCrOpenGL.so
879%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedFolders.so
880%attr(755,root,root) %{_libdir}/%{pname}/VBoxVMM.so
881%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOM.so
882%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMC.so
f701b529 883%ifarch %{ix86}
23790586
ER
884%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM32.so
885%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM64.so
f701b529 886%endif
753cf356
ER
887
888# binaries
889%attr(755,root,root) %{_libdir}/%{pname}/VBoxAutostart
890%attr(755,root,root) %{_libdir}/%{pname}/VBoxBalloonCtrl
891%attr(755,root,root) %{_libdir}/%{pname}/VBoxExtPackHelperApp
892%attr(755,root,root) %{_libdir}/%{pname}/VBoxHeadless
893%attr(755,root,root) %{_libdir}/%{pname}/VBoxManage
894%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetAdpCtl
895%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetDHCP
896%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetNAT
23790586 897%attr(755,root,root) %{_libdir}/%{pname}/VBoxSDL
23790586 898%attr(755,root,root) %{_libdir}/%{pname}/VBoxSVC
23790586 899%attr(755,root,root) %{_libdir}/%{pname}/VBoxVMMPreload
753cf356 900%attr(755,root,root) %{_libdir}/%{pname}/VBoxVolInfo
23790586 901%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMIPCD
753cf356
ER
902%attr(755,root,root) %{_libdir}/%{pname}/iPxeBaseBin
903%if %{with doc}
904%attr(755,root,root) %{_libdir}/%{pname}/VBoxManageHelp
905%endif
28b5d8a8
JP
906%dir %{_libdir}/%{pname}/tools
907%attr(755,root,root) %{_libdir}/%{pname}/tools/RTGzip
908%attr(755,root,root) %{_libdir}/%{pname}/tools/RTLdrFlt
909%attr(755,root,root) %{_libdir}/%{pname}/tools/RTManifest
910%attr(755,root,root) %{_libdir}/%{pname}/tools/RTRm
911%attr(755,root,root) %{_libdir}/%{pname}/tools/RTShutdown
912%attr(755,root,root) %{_libdir}/%{pname}/tools/RTSignTool
913%attr(755,root,root) %{_libdir}/%{pname}/tools/RTTar
44a0c82d
ER
914
915%dir %{_libdir}/%{pname}/ExtensionPacks
916%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack.xml
917%dir %{_libdir}/%{pname}/ExtensionPacks/VNC
918%dir %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*
23790586 919%attr(755,root,root) %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*/VBoxVNC*.so
44a0c82d 920
7733446a 921%{_libdir}/%{pname}/VBoxDD2GC.debug
23790586 922%{_libdir}/%{pname}/VBoxDD2GC.gc
7733446a 923%{_libdir}/%{pname}/VBoxDD2R0.debug
23790586 924%{_libdir}/%{pname}/VBoxDD2R0.r0
7733446a
JR
925%{_libdir}/%{pname}/VBoxDDGC.debug
926%{_libdir}/%{pname}/VBoxDDGC.gc
927%{_libdir}/%{pname}/VBoxDDR0.debug
23790586 928%{_libdir}/%{pname}/VBoxDDR0.r0
23790586
ER
929%{_libdir}/%{pname}/VBoxEFI32.fd
930%{_libdir}/%{pname}/VBoxEFI64.fd
7733446a
JR
931%{_libdir}/%{pname}/VMMGC.debug
932%{_libdir}/%{pname}/VMMGC.gc
933%{_libdir}/%{pname}/VMMR0.debug
934%{_libdir}/%{pname}/VMMR0.r0
44a0c82d
ER
935
936%dir %{_libdir}/%{pname}/components
501bee39 937%{_libdir}/%{pname}/components/VBoxXPCOMBase.xpt
23790586
ER
938%{_libdir}/%{pname}/components/VirtualBox_XPCOM.xpt
939%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxC.so
940%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxSVCM.so
941%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxXPCOMIPCC.so
501bee39 942
44a0c82d
ER
943%dir %{_datadir}/%{pname}
944%attr(755,root,root) %{_datadir}/%{pname}/VBoxSysInfo.sh
945
e10592b2 946%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/*.rules
501bee39
ER
947%attr(755,root,root) /lib/udev/VBoxCreateUSBNode.sh
948
949%files gui
950%defattr(644,root,root,755)
951%attr(755,root,root) %{_bindir}/VirtualBox
501bee39
ER
952%attr(755,root,root) %{_libdir}/%{pname}/VBoxDbg.so
953%attr(755,root,root) %{_libdir}/%{pname}/VBoxTestOGL
753cf356 954%attr(755,root,root) %{_libdir}/%{pname}/VirtualBox
44a0c82d
ER
955%dir %{_datadir}/%{pname}/nls
956%lang(bg) %{_datadir}/%{pname}/nls/*_bg.qm
957%lang(ca) %{_datadir}/%{pname}/nls/*_ca.qm
958%lang(ca_VA) %{_datadir}/%{pname}/nls/*_ca_VA.qm
959%lang(cs) %{_datadir}/%{pname}/nls/*_cs.qm
960%lang(da) %{_datadir}/%{pname}/nls/*_da.qm
961%lang(de) %{_datadir}/%{pname}/nls/*_de.qm
962%lang(en) %{_datadir}/%{pname}/nls/*_en.qm
963%lang(es) %{_datadir}/%{pname}/nls/*_es.qm
964%lang(eu) %{_datadir}/%{pname}/nls/*_eu.qm
965%lang(fi) %{_datadir}/%{pname}/nls/*_fa_IR.qm
966%lang(fi) %{_datadir}/%{pname}/nls/*_fi.qm
967%lang(fr) %{_datadir}/%{pname}/nls/*_fr.qm
968%lang(gl_ES) %{_datadir}/%{pname}/nls/*_gl_ES.qm
969%lang(hu) %{_datadir}/%{pname}/nls/*_hu.qm
970%lang(id) %{_datadir}/%{pname}/nls/*_id.qm
971%lang(it) %{_datadir}/%{pname}/nls/*_it.qm
972%lang(ja) %{_datadir}/%{pname}/nls/*_ja.qm
973%lang(km_KH) %{_datadir}/%{pname}/nls/*_km_KH.qm
974%lang(ko) %{_datadir}/%{pname}/nls/*_ko.qm
975%lang(lt) %{_datadir}/%{pname}/nls/*_lt.qm
976%lang(nl) %{_datadir}/%{pname}/nls/*_nl.qm
977%lang(pl) %{_datadir}/%{pname}/nls/*_pl.qm
978%lang(pt) %{_datadir}/%{pname}/nls/*_pt.qm
979%lang(pt_BR) %{_datadir}/%{pname}/nls/*_pt_BR.qm
980%lang(ro) %{_datadir}/%{pname}/nls/*_ro.qm
981%lang(ru) %{_datadir}/%{pname}/nls/*_ru.qm
982%lang(sk) %{_datadir}/%{pname}/nls/*_sk.qm
983%lang(sr) %{_datadir}/%{pname}/nls/*_sr.qm
984%lang(sv) %{_datadir}/%{pname}/nls/*_sv.qm
985%lang(tr) %{_datadir}/%{pname}/nls/*_tr.qm
986%lang(uk) %{_datadir}/%{pname}/nls/*_uk.qm
987%lang(zh_CN) %{_datadir}/%{pname}/nls/*_zh_CN.qm
988%lang(zh_TW) %{_datadir}/%{pname}/nls/*_zh_TW.qm
501bee39 989%{_desktopdir}/virtualbox.desktop
44a0c82d
ER
990%{_pixmapsdir}/virtualbox.png
991%{_iconsdir}/hicolor/*/apps/virtualbox.png
992%{_iconsdir}/hicolor/*/apps/virtualbox.svg
993%{_iconsdir}/hicolor/*/mimetypes/virtualbox-*.png
501bee39 994%{_datadir}/mime/packages/virtualbox.xml
12db98a7 995
ffb38bb6 996%files additions
9dda6415 997%defattr(644,root,root,755)
44a0c82d 998%{_datadir}/%{pname}/VBoxGuestAdditions.iso
ffb38bb6 999
1067d08d
ER
1000%files guest
1001%defattr(644,root,root,755)
c11f39b3 1002%attr(755,root,root) /sbin/mount.vboxsf
07e9b84d 1003%attr(754,root,root) /etc/rc.d/init.d/vboxservice
4365ecaf 1004%{systemdunitdir}/vboxservice.service
c0372ee9
ER
1005%attr(755,root,root) %{_bindir}/VBoxControl
1006%attr(755,root,root) %{_bindir}/VBoxService
1007
1008%files guest-x11
3d9b19d8 1009%defattr(644,root,root,755)
90de3b27 1010/etc/xdg/autostart/vboxclient.desktop
4e3859c5
ER
1011%attr(755,root,root) %{_bindir}/VBoxClient
1012%attr(755,root,root) %{_bindir}/VBoxClient-all
1067d08d 1013
21a1d8ab
ER
1014%if %{with webservice}
1015%files webservice
1016%defattr(644,root,root,755)
44a0c82d 1017%attr(755,root,root) %{_bindir}/vboxwebsrv
21a1d8ab
ER
1018%attr(755,root,root) %{_libdir}/%{pname}/vboxwebsrv
1019%attr(755,root,root) %{_libdir}/%{pname}/webtest
1020%endif
1021
8d08b907 1022%if %{with lightdm}
9e4dd6a9 1023%files -n lightdm-greeter-vbox
8d08b907
ER
1024%defattr(644,root,root,755)
1025%attr(755,root,root) %{_sbindir}/vbox-greeter
1026%{_datadir}/xgreeters/vbox-greeter.desktop
1027%endif
1028
3613936b
JR
1029%files -n pam-pam_vbox
1030%defattr(644,root,root,755)
3ee6b9d9 1031%attr(755,root,root) /%{_lib}/security/pam_vbox.so
3613936b 1032
90de3b27
ER
1033%if %{with doc}
1034%files doc
1035%defattr(644,root,root,755)
f0a66b84
JR
1036# this is a symlink...
1037%doc %{_libdir}/%{pname}/UserManual.pdf
4f88ff56 1038%lang(fr) %doc %{_libdir}/%{pname}/UserManual_fr_FR.pdf
f0a66b84 1039# ..to this file
90de3b27 1040%doc %{outdir}/UserManual.pdf
4f88ff56 1041%lang(fr) %doc %{outdir}/UserManual_fr_FR.pdf
90de3b27
ER
1042%endif
1043
09c79ddb 1044%files -n xorg-driver-video-vboxvideo
1045%defattr(644,root,root,755)
1046%attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
27a1aef6
ER
1047%attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
1048# vboxvideo_dri.so deps
1067d08d 1049%attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
27a1aef6
ER
1050%attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
1051%attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
1052%attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
1053%attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
1054%attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
988a8f09
ER
1055
1056%if %{with dkms}
1057%files -n dkms-vboxguest
1058%defattr(644,root,root,755)
1059%{_usrsrc}/vboxguest-%{version}-%{rel}
1060
1061%files -n dkms-vboxhost
1062%defattr(644,root,root,755)
1063%{_usrsrc}/vboxhost-%{version}-%{rel}
1064%endif
c38a3946 1065%endif
This page took 0.671368 seconds and 4 git commands to generate.