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