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