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