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