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