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