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