]> git.pld-linux.org Git - packages/VirtualBox.git/blob - VirtualBox.spec
c9a3cd785325a30799a8cde4a5d010f4464a62a1
[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 X11 Additions
292 Group:          X11/Applications
293 Requires:       %{name}-guest = %{version}-%{release}
294 Requires:       xorg-app-xrandr
295 Requires:       xorg-driver-video-vboxvideo = %{version}-%{release}
296 Suggests:       kernel(vboxvideo)
297 Obsoletes:      xorg-driver-input-vboxmouse < %{version}-%{release}
298
299 %description guest-x11
300 Tools for X11 session that utilize kernel modules for supporting
301 integration with the Host, like tracking of mouse pointer movement and
302 X.org X11 video and mouse drivers
303
304 You should install this package in your Guest OS for X11 session.
305
306 %package webservice
307 Summary:        VirtualBox Web Service
308 Group:          Applications/Emulators
309 Requires:       %{name} = %{version}-%{release}
310
311 %description webservice
312 This package contains VirtualBox web service API daemon. It allows to
313 control virtual machines via web interface.
314
315 %package -n lightdm-greeter-vbox
316 Summary:        VirtualBox greeter for lightdm
317 Group:          Themes
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
320 URL:            http://www.virtualbox.org/manual/ch09.html#autologon_unix_lightdm
321 Requires:       kernel(vboxguest)
322 Requires:       lightdm >= 1.0.1
323 Provides:       lightdm-greeter
324
325 %description -n lightdm-greeter-vbox
326 VirtualBox greeter for LightDM.
327
328 %package -n pam-pam_vbox
329 Summary:        PAM module to perform automated guest logons
330 Group:          Base
331
332 %description  -n pam-pam_vbox
333 PAM module (Pluggable Authentication Module) which can be used to
334 perform automated guest logons.
335
336 %package -n xorg-driver-video-vboxvideo
337 Summary:        X.org video driver for VirtualBox guest OS
338 Summary(pl.UTF-8):      Sterownik grafiki dla systemu gościa w VirtualBoksie
339 Group:          X11/Applications
340 Requires:       Mesa-dri-driver-swrast
341 Requires:       xorg-xserver-libdri >= 1.7.4
342 Requires:       xorg-xserver-server >= 1.0.99.901
343 Requires:       xorg-xserver-server(videodrv-abi) <= 15.0
344 Requires:       xorg-xserver-server(videodrv-abi) >= 2.0
345 Provides:       xorg-driver-video
346
347 %description -n xorg-driver-video-vboxvideo
348 X.org video driver for VirtualBox guest OS.
349
350 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
351 Sterownik grafiki dla systemu gościa w VirtualBoksie.
352
353 %package -n dkms-vboxguest
354 Summary:        VirtualBox kernel modules source for Linux Guest
355 Summary(pl.UTF-8):      Moduły VirtualBoksa do jądra Linuksa dla systemu gościa
356 License:        GPL v2+
357 Group:          Base/Kernel
358 Requires(pre):  dkms
359 Requires(post): dkms
360 %if "%{_rpmversion}" >= "5"
361 BuildArch:      noarch
362 %endif
363
364 %description -n dkms-vboxguest
365 This package contains DKMS-ready VirtualBox Guest Additions for Linux
366 Module, host file system access (Shared Folders) and DRM support for
367 Linux guest system.
368
369 %description -n dkms-vboxguest -l pl.UTF-8
370 Ten pakiet zawiera moduł jądra Linuksa vboxguest dla VirtualBoksa -
371 dodatki dla systemu gościa, dostęp do plików systemu głównego z
372 poziomu systemu gościa i sterownik obsługi DRM.
373
374 %package -n dkms-vboxhost
375 Summary:        VirtualBox Support Drivers source
376 Summary(pl.UTF-8):      Moduły jądra Linuksa dla VirtualBoksa
377 License:        GPL v2+
378 Group:          Base/Kernel
379 Requires(pre):  dkms
380 Requires(post): dkms
381 %if "%{_rpmversion}" >= "5"
382 BuildArch:      noarch
383 %endif
384
385 %description -n dkms-vboxhost
386 This package contains DKMS enabled sourcecode of VirtualBox Support
387 Driver, Network Adapter Driver, Network Filter Driver and PCI card
388 passthrough driver that works as host proxy between guest and PCI
389 hardware.
390
391 %description -n dkms-vboxhost -l pl.UTF-8
392 Ten pakiet zawiera sterownik wsparcia dla systemu głównego, sterownik
393 witrualnej karty sieciowej, sterownik filtrowania sieci dla systemu
394 głównego oraz sterownik, ktory działa jako proxy między gościem i
395 gospodarzem sprzętu PCI.
396
397 # KERNEL PACKAGES
398
399 # KEEP ALL REGULAR SUBPACKAGES BEFORE KERNEL PACKAGES.
400
401 %define kernel_pkg()\
402 %package -n kernel%{_alt_kernel}-virtualbox-guest\
403 Summary:        VirtualBox kernel modules for Linux Guest\
404 Summary(pl.UTF-8):      Moduły VirtualBoksa do jądra Linuksa dla systemu gościa\
405 Release:        %{rel}@%{_kernel_ver_str}\
406 Group:          Base/Kernel\
407 Requires(post,postun):  /sbin/depmod\
408 Requires(post): systemd-units >= 38\
409 Requires:       dev >= 2.9.0-7\
410 Requires:       systemd-units >= 38\
411 %if %{with dist_kernel}\
412 %requires_releq_kernel\
413 Requires:       %{releq_kernel -n drm}\
414 Requires(postun):       %releq_kernel\
415 %endif\
416 Provides:       kernel(vboxguest) = %{version}-%{rel}\
417 Provides:       kernel(vboxsf) = %{version}-%{rel}\
418 Provides:       kernel(vboxvideo) = %{version}-%{rel}\
419 Obsoletes:      kernel-init-guest\
420 Conflicts:      kernel%{_alt_kernel}-virtualbox-host\
421 \
422 %description -n kernel%{_alt_kernel}-virtualbox-guest\
423 This package contains VirtualBox Guest Additions for Linux Module,\
424 host file system access (Shared Folders) and DRM support for\
425 Linux guest system.\
426 \
427 %description -n kernel%{_alt_kernel}-virtualbox-guest -l pl.UTF-8\
428 Ten pakiet zawiera moduł jądra Linuksa vboxguest dla VirtualBoksa -\
429 dodatki dla systemu gościa, dostęp do plików systemu głównego z\
430 poziomu systemu gościa i sterownik obsługi DRM.\
431 \
432 %package -n kernel%{_alt_kernel}-virtualbox-host\
433 Summary:        VirtualBox Support Drivers\
434 Summary(pl.UTF-8):      Moduły jądra Linuksa dla VirtualBoksa\
435 Release:        %{rel}@%{_kernel_ver_str}\
436 Group:          Base/Kernel\
437 Requires(post,postun):  /sbin/depmod\
438 Requires(post): systemd-units >= 38\
439 Requires:       dev >= 2.9.0-7\
440 %if %{with dist_kernel}\
441 %requires_releq_kernel\
442 Requires(postun):       %releq_kernel\
443 %endif\
444 Requires:       systemd-units >= 38\
445 Provides:       kernel(vboxdrv) = %{version}-%{rel}\
446 Provides:       kernel(vboxnetadp) = %{version}-%{rel}\
447 Provides:       kernel(vboxnetflt) = %{version}-%{rel}\
448 Provides:       kernel(vboxpci) = %{version}-%{rel}\
449 Obsoletes:      kernel-init-host\
450 \
451 %description -n kernel%{_alt_kernel}-virtualbox-host\
452 This package contains VirtualBox Support Driver, Network Adapter\
453 Driver, Network Filter Driver and PCI card passthrough driver that\
454 works as host proxy between guest and PCI hardware.\
455 \
456 %description -n kernel%{_alt_kernel}-virtualbox-host -l pl.UTF-8\
457 Ten pakiet zawiera sterownik wsparcia dla systemu głównego, sterownik\
458 witrualnej karty sieciowej, sterownik filtrowania sieci dla systemu\
459 głównego oraz sterownik, ktory działa jako proxy między gościem i\
460 gospodarzem 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()\
492 export KERN_DIR=%{_kernelsrcdir}\
493 cd 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\
498 cd ../GuestDrivers\
499 %build_kernel_modules -m vboxguest -C vboxguest\
500 cp -a vboxguest/Module.symvers vboxsf\
501 %build_kernel_modules -m vboxsf -C vboxsf -c\
502 %build_kernel_modules -m vboxvideo -C vboxvideo\
503 cd ../..\
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}}
514
515 %prep
516 %setup -q -n %{pname}-%{version}
517 %patch0 -p1
518 %patch1 -p1
519 %patch2 -p1
520 %patch3 -p1
521 %patch4 -p1
522 %patch5 -p1
523 %patch6 -p1
524 %patch7 -p1
525 %patch8 -p1
526 %patch9 -p1
527
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
530
531 # Respect LDFLAGS
532 %{__sed} -i -e "s@_LDFLAGS\.%{vbox_arch}*.*=@& %{rpmldflags}@g" \
533         -i Config.kmk src/libs/xpcom18a4/Config.kmk
534
535 %{__sed} -i -e 's#@INSTALL_DIR@#%{_libdir}/%{pname}#' src/VBox/Installer/linux/VBox.sh
536
537 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
538 cd PLD-MODULE-BUILD
539 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
540 tar -zxf guest-modules.tar.gz -C GuestDrivers
541
542 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
543 tar -zxf host-modules.tar.gz -C HostDrivers
544 cd -
545 %patch10 -p1
546 %patch11 -p1
547
548 # using system kBuild package
549 %{__rm} -r kBuild
550
551 # use linux icon for now
552 cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}.png
553 cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}_64.png
554
555 cat <<'EOF'>> LocalConfig.kmk
556 %{?with_verbose:KBUILD_VERBOSE=3}
557 USERNAME=%(id -un)
558 __VBOX_BUILD_PUBLISHER=_PLD
559 VBOX_VERSION_STRING=$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)_PLD
560 XSERVER_VERSION=%(rpm -q --queryformat '%{V}\n' xorg-xserver-server-devel | awk -F. '{ print $1 $2 }' 2>/dev/null || echo ERROR)
561 VBOX_USE_SYSTEM_XORG_HEADERS=1
562 %if %{with lightdm}
563 VBOX_WITH_LIGHTDM_GREETER=1
564 VBOX_WITH_LIGHTDM_GREETER_PACKING=1
565 %endif
566 TOOL_GCC3_CFLAGS=%{rpmcflags}
567 TOOL_GCC3_CXXFLAGS=%{rpmcxxflags}
568 VBOX_GCC_OPT=%{rpmcxxflags}
569
570 VBOX_PATH_APP_PRIVATE_ARCH := %{_libdir}/%{pname}
571 VBOX_PATH_APP_PRIVATE := %{_datadir}/%{pname}
572 VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH)
573 VBOX_WITH_ORIGIN :=
574 VBOX_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
578 VBOX_WITH_TESTCASES :=
579 VBOX_WITH_TESTSUITE :=
580 EOF
581
582 %build
583 %if %{with userspace}
584 ./configure \
585         --with-gcc="%{__cc}" \
586         --with-g++="%{__cxx}" \
587         %{!?with_doc:--disable-docs} \
588         --disable-java \
589         --disable-hardening \
590         --disable-kmods \
591         --enable-vnc \
592         %{__enable webservice} \
593         %{nil}
594
595 kmk %{?_smp_mflags}
596
597 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
598 %endif
599
600 %{?with_kernel:%{expand:%bkpkg}}
601
602 %install
603 rm -rf $RPM_BUILD_ROOT
604
605 %if %{with userspace}
606 install -d $RPM_BUILD_ROOT{%{_bindir},/sbin,%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
607         $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_datadir}/mime/packages} \
608         $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input} \
609         $RPM_BUILD_ROOT{/lib/udev,/etc/udev/rules.d} \
610         $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{systemdunitdir},%{_usrsrc}}
611
612 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
613 if cp -al COPYING $RPM_BUILD_ROOT/COPYING; then
614         l=l
615         %{__rm} $RPM_BUILD_ROOT/COPYING
616 fi
617
618 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
619 cp -a$l %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxGuestAdditions.iso
620
621 # vboxvideo
622 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
623 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_system.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
624 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
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
631
632 # Guest Only Tools
633 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
634 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
635 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
636 install -d $RPM_BUILD_ROOT/etc/{X11/xinit/xinitrc.d,xdg/autostart}
637 install -p -D src/VBox/Additions/x11/Installer/98vboxadd-xclient \
638         $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
639 cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
640         $RPM_BUILD_ROOT/etc/xdg/autostart/vboxclient.desktop
641 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxservice
642 install -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/vboxservice.service
643
644 %if %{with lightdm}
645 install -d $RPM_BUILD_ROOT%{_datadir}/xgreeters
646 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_sbindir}}/vbox-greeter
647 cp -p %{objdir}/Additions/Installer/linux/share/VBoxGuestAdditions/vbox-greeter.desktop $RPM_BUILD_ROOT%{_datadir}/xgreeters
648 %endif
649
650 # pam
651 install -d $RPM_BUILD_ROOT/%{_lib}/security
652 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,/%{_lib}/security}/pam_vbox.so
653
654 # mount.vboxsf
655 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
656 install -p mount.vboxsf $RPM_BUILD_ROOT/sbin/mount.vboxsf
657
658 # mount.vdi
659 install -p %{SOURCE5} $RPM_BUILD_ROOT/sbin/mount.vdi
660
661 # these belong to .iso
662 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/autorun.sh
663 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/runasroot.sh
664
665 # unknown - checkme
666 %if 1
667 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd
668 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-service
669 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-x11
670 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/helpers/generate_service_file
671 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
672 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
673 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
674 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/load.sh
675 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/loadall.sh
676 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/VBoxHeadlessXOrg.sh
677 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/init_template.sh
678 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install_service
679 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
680 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
681 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
682 %endif
683
684 # use upstream installer to relocate rest of the files, fakeroot because it forces uid/gid 0
685 fakeroot sh -x $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install.sh \
686         --ose \
687         --prefix %{_prefix} \
688         %{!?with_webservice:--no-web-service} \
689         --root $RPM_BUILD_ROOT
690
691 %{__mv} $RPM_BUILD_ROOT{%{_datadir}/%{pname},/lib/udev}/VBoxCreateUSBNode.sh
692 cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
693
694 # cleanup lowercased variants, not used in any script (less cruft)
695 %{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxautostart
696 %{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxballoonctrl
697 %{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxheadless
698 %{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxmanage
699 %{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxsdl
700 %{__rm} -r $RPM_BUILD_ROOT%{_bindir}/virtualbox
701
702 # cleanup unpackaged
703 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{sdk,testcase}
704 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace
705 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{pname}/src
706 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
707 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
708 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/generated.sh
709 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack-license.*
710 %{__rm} $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}_PLD
711 %{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/vboxapi*
712
713 # weird icon size
714 %{__rm} -r $RPM_BUILD_ROOT%{_iconsdir}/hicolor/40x40
715 # duplicate, we already have virtualbox.png (128x128), this is 32x32
716 %{__rm} -r $RPM_BUILD_ROOT%{_pixmapsdir}/VBox.png
717
718 %if %{with doc}
719 ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual.pdf
720 ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual_fr_FR.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual_fr_FR.pdf
721 %endif
722
723 %if %{with dkms}
724 install -d $RPM_BUILD_ROOT%{_usrsrc}/vbox{host,guest}-%{version}-%{rel}
725 cp -a PLD-MODULE-BUILD/HostDrivers/* $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
726 cp -p src/VBox/HostDrivers/linux/dkms.conf $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
727 %{__make} -C $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel} clean
728 rm -rf $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}/*/o
729
730 cp -a PLD-MODULE-BUILD/GuestDrivers/* $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel}
731 cp -p src/VBox/Additions/common/VBoxGuest/linux/dkms.conf $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel}
732 %{__make} -C $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel} clean
733 rm -rf $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel}/*/o
734 %endif
735 %endif
736
737 %if %{with kernel}
738 install -d $RPM_BUILD_ROOT{/etc/modules-load.d,/sbin}
739
740 cp -a PLD-MODULE-BUILD/installed/* $RPM_BUILD_ROOT
741
742 # Tell systemd to load modules
743 cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/modules-load.d/virtualbox-host.conf
744 cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/modules-load.d/virtualbox-guest.conf
745 %endif
746
747 %clean
748 rm -rf $RPM_BUILD_ROOT
749
750 %pre
751 %groupadd -g 221 -r -f vbox
752
753 %post
754 for i in /sys/bus/usb/devices/*; do
755         if [ -r "$i/dev" ]; then
756                 dev="`cat "$i/dev" 2>/dev/null || true`"
757                 major="`expr "$dev" : '\(.*\):' 2> /dev/null || true`"
758                 minor="`expr "$dev" : '.*:\(.*\)' 2> /dev/null || true`"
759                 class="`cat $i/bDeviceClass 2> /dev/null || true`"
760                 /lib/udev/VBoxCreateUSBNode.sh "$major" "$minor" "$class" vbox 2>/dev/null
761         fi
762 done
763
764 cat << 'EOF'
765 You must install vboxdrv kernel modules for this software to work:
766     kernel*-virtualbox-host-%{version}-%{rel}@*
767
768 On Guest Linux system you might want to install:
769     kernel*-virtualbox-guest-%{version}-%{rel}@*
770
771 EOF
772
773 %postun
774 if [ "$1" = "0" ]; then
775         %groupremove vbox
776 fi
777
778 %post gui
779 %update_desktop_database
780 %update_icon_cache hicolor
781 %update_mime_database
782
783 %postun gui
784 %update_desktop_database
785 %update_icon_cache hicolor
786 %update_mime_database
787
788 %post guest
789 /sbin/chkconfig --add vboxservice
790 %service vboxservice restart
791 %systemd_post vboxservice.service
792
793 %preun guest
794 if [ "$1" = "0" ]; then
795         /sbin/chkconfig --del vboxservice
796         %service vboxservice -q stop
797 fi
798 %systemd_preun vboxservice.service
799
800 %postun guest
801 %systemd_reload
802
803 %triggerpostun guest -- VirtualBox-guest < 4.3.0-1
804 %systemd_trigger vboxservice.service
805
806 %pre -n lightdm-greeter-vbox
807 %addusertogroup xdm vbox
808
809 %post -n dkms-vboxguest
810 set -x
811 dkms add -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
812 dkms build -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
813 dkms install -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade || :
814
815 %preun -n dkms-vboxguest
816 set -x
817 dkms remove -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade --all || :
818
819 %post -n dkms-vboxhost
820 set -x
821 dkms add -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
822 dkms build -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
823 dkms install -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade || :
824
825 %preun -n dkms-vboxhost
826 set -x
827 dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
828
829 %if %{with userspace}
830 %files
831 %defattr(644,root,root,755)
832 %attr(755,root,root) /sbin/mount.vdi
833 %attr(755,root,root) %{_bindir}/VBox
834 %attr(755,root,root) %{_bindir}/VBoxAutostart
835 %attr(755,root,root) %{_bindir}/VBoxBalloonCtrl
836 %attr(755,root,root) %{_bindir}/VBoxHeadless
837 %attr(755,root,root) %{_bindir}/VBoxManage
838 %attr(755,root,root) %{_bindir}/VBoxSDL
839 %attr(755,root,root) %{_bindir}/VBoxTunctl
840 %dir %{_libdir}/%{pname}
841 # libraries
842 %attr(755,root,root) %{_libdir}/%{pname}/DBGCPlugInDiggers.so
843 %attr(755,root,root) %{_libdir}/%{pname}/VBoxAuth.so
844 %attr(755,root,root) %{_libdir}/%{pname}/VBoxAuthSimple.so
845 %attr(755,root,root) %{_libdir}/%{pname}/VBoxDD.so
846 %attr(755,root,root) %{_libdir}/%{pname}/VBoxDD2.so
847 %attr(755,root,root) %{_libdir}/%{pname}/VBoxDDU.so
848 %attr(755,root,root) %{_libdir}/%{pname}/VBoxDragAndDropSvc.so
849 %attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestControlSvc.so
850 %attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestPropSvc.so
851 %attr(755,root,root) %{_libdir}/%{pname}/VBoxHostChannel.so
852 %attr(755,root,root) %{_libdir}/%{pname}/VBoxKeyboard.so
853 %attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhostcrutil.so
854 %attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhosterrorspu.so
855 %attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLrenderspu.so
856 %attr(755,root,root) %{_libdir}/%{pname}/VBoxPython*.so
857 %attr(755,root,root) %{_libdir}/%{pname}/VBoxREM.so
858 %attr(755,root,root) %{_libdir}/%{pname}/VBoxRT.so
859 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedClipboard.so
860 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedCrOpenGL.so
861 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedFolders.so
862 %attr(755,root,root) %{_libdir}/%{pname}/VBoxVMM.so
863 %attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOM.so
864 %attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMC.so
865 %ifarch %{ix86}
866 %attr(755,root,root) %{_libdir}/%{pname}/VBoxREM32.so
867 %attr(755,root,root) %{_libdir}/%{pname}/VBoxREM64.so
868 %endif
869
870 # binaries
871 %attr(755,root,root) %{_libdir}/%{pname}/VBoxAutostart
872 %attr(755,root,root) %{_libdir}/%{pname}/VBoxBalloonCtrl
873 %attr(755,root,root) %{_libdir}/%{pname}/VBoxExtPackHelperApp
874 %attr(755,root,root) %{_libdir}/%{pname}/VBoxHeadless
875 %attr(755,root,root) %{_libdir}/%{pname}/VBoxManage
876 %attr(755,root,root) %{_libdir}/%{pname}/VBoxNetAdpCtl
877 %attr(755,root,root) %{_libdir}/%{pname}/VBoxNetDHCP
878 %attr(755,root,root) %{_libdir}/%{pname}/VBoxNetNAT
879 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSDL
880 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSVC
881 %attr(755,root,root) %{_libdir}/%{pname}/VBoxVMMPreload
882 %attr(755,root,root) %{_libdir}/%{pname}/VBoxVolInfo
883 %attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMIPCD
884 %attr(755,root,root) %{_libdir}/%{pname}/iPxeBaseBin
885 %if %{with doc}
886 %attr(755,root,root) %{_libdir}/%{pname}/VBoxManageHelp
887 %endif
888
889 %dir %{_libdir}/%{pname}/ExtensionPacks
890 %{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack.xml
891 %dir %{_libdir}/%{pname}/ExtensionPacks/VNC
892 %dir %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*
893 %attr(755,root,root) %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*/VBoxVNC*.so
894
895 %{_libdir}/%{pname}/VBoxDD2GC.debug
896 %{_libdir}/%{pname}/VBoxDD2GC.gc
897 %{_libdir}/%{pname}/VBoxDD2R0.debug
898 %{_libdir}/%{pname}/VBoxDD2R0.r0
899 %{_libdir}/%{pname}/VBoxDDGC.debug
900 %{_libdir}/%{pname}/VBoxDDGC.gc
901 %{_libdir}/%{pname}/VBoxDDR0.debug
902 %{_libdir}/%{pname}/VBoxDDR0.r0
903 %{_libdir}/%{pname}/VBoxEFI32.fd
904 %{_libdir}/%{pname}/VBoxEFI64.fd
905 %{_libdir}/%{pname}/VMMGC.debug
906 %{_libdir}/%{pname}/VMMGC.gc
907 %{_libdir}/%{pname}/VMMR0.debug
908 %{_libdir}/%{pname}/VMMR0.r0
909
910 %dir %{_libdir}/%{pname}/components
911 %{_libdir}/%{pname}/components/VBoxXPCOMBase.xpt
912 %{_libdir}/%{pname}/components/VirtualBox_XPCOM.xpt
913 %attr(755,root,root) %{_libdir}/%{pname}/components/VBoxC.so
914 %attr(755,root,root) %{_libdir}/%{pname}/components/VBoxSVCM.so
915 %attr(755,root,root) %{_libdir}/%{pname}/components/VBoxXPCOMIPCC.so
916
917 %dir %{_datadir}/%{pname}
918 %attr(755,root,root) %{_datadir}/%{pname}/VBoxSysInfo.sh
919
920 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
921 %attr(755,root,root) /lib/udev/VBoxCreateUSBNode.sh
922
923 %files gui
924 %defattr(644,root,root,755)
925 %attr(755,root,root) %{_bindir}/VirtualBox
926 %attr(755,root,root) %{_libdir}/%{pname}/VBoxDbg.so
927 %attr(755,root,root) %{_libdir}/%{pname}/VBoxTestOGL
928 %attr(755,root,root) %{_libdir}/%{pname}/VirtualBox
929 %dir %{_datadir}/%{pname}/nls
930 %lang(bg) %{_datadir}/%{pname}/nls/*_bg.qm
931 %lang(ca) %{_datadir}/%{pname}/nls/*_ca.qm
932 %lang(ca_VA) %{_datadir}/%{pname}/nls/*_ca_VA.qm
933 %lang(cs) %{_datadir}/%{pname}/nls/*_cs.qm
934 %lang(da) %{_datadir}/%{pname}/nls/*_da.qm
935 %lang(de) %{_datadir}/%{pname}/nls/*_de.qm
936 %lang(en) %{_datadir}/%{pname}/nls/*_en.qm
937 %lang(es) %{_datadir}/%{pname}/nls/*_es.qm
938 %lang(eu) %{_datadir}/%{pname}/nls/*_eu.qm
939 %lang(fi) %{_datadir}/%{pname}/nls/*_fa_IR.qm
940 %lang(fi) %{_datadir}/%{pname}/nls/*_fi.qm
941 %lang(fr) %{_datadir}/%{pname}/nls/*_fr.qm
942 %lang(gl_ES) %{_datadir}/%{pname}/nls/*_gl_ES.qm
943 %lang(hu) %{_datadir}/%{pname}/nls/*_hu.qm
944 %lang(id) %{_datadir}/%{pname}/nls/*_id.qm
945 %lang(it) %{_datadir}/%{pname}/nls/*_it.qm
946 %lang(ja) %{_datadir}/%{pname}/nls/*_ja.qm
947 %lang(km_KH) %{_datadir}/%{pname}/nls/*_km_KH.qm
948 %lang(ko) %{_datadir}/%{pname}/nls/*_ko.qm
949 %lang(lt) %{_datadir}/%{pname}/nls/*_lt.qm
950 %lang(nl) %{_datadir}/%{pname}/nls/*_nl.qm
951 %lang(pl) %{_datadir}/%{pname}/nls/*_pl.qm
952 %lang(pt) %{_datadir}/%{pname}/nls/*_pt.qm
953 %lang(pt_BR) %{_datadir}/%{pname}/nls/*_pt_BR.qm
954 %lang(ro) %{_datadir}/%{pname}/nls/*_ro.qm
955 %lang(ru) %{_datadir}/%{pname}/nls/*_ru.qm
956 %lang(sk) %{_datadir}/%{pname}/nls/*_sk.qm
957 %lang(sr) %{_datadir}/%{pname}/nls/*_sr.qm
958 %lang(sv) %{_datadir}/%{pname}/nls/*_sv.qm
959 %lang(tr) %{_datadir}/%{pname}/nls/*_tr.qm
960 %lang(uk) %{_datadir}/%{pname}/nls/*_uk.qm
961 %lang(zh_CN) %{_datadir}/%{pname}/nls/*_zh_CN.qm
962 %lang(zh_TW) %{_datadir}/%{pname}/nls/*_zh_TW.qm
963 %{_desktopdir}/virtualbox.desktop
964 %{_pixmapsdir}/virtualbox.png
965 %{_iconsdir}/hicolor/*/apps/virtualbox.png
966 %{_iconsdir}/hicolor/*/apps/virtualbox.svg
967 %{_iconsdir}/hicolor/*/mimetypes/virtualbox-*.png
968 %{_datadir}/mime/packages/virtualbox.xml
969
970 %files additions
971 %defattr(644,root,root,755)
972 %{_datadir}/%{pname}/VBoxGuestAdditions.iso
973
974 %files guest
975 %defattr(644,root,root,755)
976 %attr(755,root,root) /sbin/mount.vboxsf
977 %attr(754,root,root) /etc/rc.d/init.d/vboxservice
978 %{systemdunitdir}/vboxservice.service
979 %attr(755,root,root) %{_bindir}/VBoxControl
980 %attr(755,root,root) %{_bindir}/VBoxService
981
982 %files guest-x11
983 %defattr(644,root,root,755)
984 # NOTE: unfinished, should contain .desktop files for starting up mouse
985 # integration and other desktop services
986 # NOTE: the filelist is incomplete too
987 %attr(755,root,root) %{_bindir}/VBoxClient
988 /etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
989 /etc/xdg/autostart/vboxclient.desktop
990
991 %if 0
992 %attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd
993 %attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd-service
994 %attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd-x11
995 %endif
996
997 %if %{with webservice}
998 %files webservice
999 %defattr(644,root,root,755)
1000 %attr(755,root,root) %{_bindir}/vboxwebsrv
1001 %attr(755,root,root) %{_libdir}/%{pname}/vboxwebsrv
1002 %attr(755,root,root) %{_libdir}/%{pname}/webtest
1003 %endif
1004
1005 %if %{with lightdm}
1006 %files -n lightdm-greeter-vbox
1007 %defattr(644,root,root,755)
1008 %attr(755,root,root) %{_sbindir}/vbox-greeter
1009 %{_datadir}/xgreeters/vbox-greeter.desktop
1010 %endif
1011
1012 %files -n pam-pam_vbox
1013 %defattr(644,root,root,755)
1014 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
1015
1016 %if %{with doc}
1017 %files doc
1018 %defattr(644,root,root,755)
1019 # this is a symlink...
1020 %doc %{_libdir}/%{pname}/UserManual.pdf
1021 %lang(fr) %doc %{_libdir}/%{pname}/UserManual_fr_FR.pdf
1022 # ..to this file
1023 %doc %{outdir}/UserManual.pdf
1024 %lang(fr) %doc %{outdir}/UserManual_fr_FR.pdf
1025 %endif
1026
1027 %files -n xorg-driver-video-vboxvideo
1028 %defattr(644,root,root,755)
1029 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
1030 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
1031 # vboxvideo_dri.so deps
1032 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
1033 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
1034 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
1035 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
1036 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
1037 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
1038
1039 %if %{with dkms}
1040 %files -n dkms-vboxguest
1041 %defattr(644,root,root,755)
1042 %{_usrsrc}/vboxguest-%{version}-%{rel}
1043
1044 %files -n dkms-vboxhost
1045 %defattr(644,root,root,755)
1046 %{_usrsrc}/vboxhost-%{version}-%{rel}
1047 %endif
1048 %endif
This page took 0.138262 seconds and 2 git commands to generate.