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