3 # - Find how to compile with PLD CFLAGS/CXXFLAGS/LDFLAGS.
5 # - Package utils (and write initscripts ?) for Guest OS.
6 # - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2.
7 # If so check if it is distributable.
10 %bcond_without dist_kernel # without distribution kernel
11 %bcond_without kernel # don't build kernel module
12 %bcond_without userspace # don't build userspace package
13 %bcond_with force_userspace # force userspace build (useful if alt_kernel is set)
17 %undefine with_dist_kernel
19 %if "%{_alt_kernel}" != "%{nil}"
20 %undefine with_userspace
22 %if %{with force_userspace}
23 %define with_userspace 1
25 %if %{without userspace}
26 # nothing to be placed to debuginfo package
27 %define _enable_debug_packages 0
31 %define pname VirtualBox
33 Summary: VirtualBox OSE - x86 hardware virtualizer
34 Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86
35 Name: %{pname}%{_alt_kernel}
39 Group: Applications/Emulators
40 Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}-OSE.tar.bz2
41 # Source0-md5: 84de65bddb365ba61eddd3b112b303e5
42 Source1: http://download.virtualbox.org/virtualbox/%{version}/UserManual.pdf
43 # Source1-md5: 322feb471c55b81e95e0caecdc93efb0
44 Source2: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
45 # Source2-md5: 023cc07b07e0b3850c5e8c354ddc6075
46 Source3: %{pname}-vboxdrv.init
47 Source4: %{pname}-vboxguest.init
48 Source5: %{pname}-vboxnetflt.init
49 Source6: %{pname}-vboxsf.init
50 Source7: %{pname}-vboxnetadp.init
54 Patch0: %{pname}-configure.patch
55 Patch1: %{pname}-configure-spaces.patch
56 Patch2: %{pname}-export_modules.patch
57 Patch3: %{pname}-VBoxSysInfo.patch
58 Patch4: %{pname}-warning_workaround.patch
59 Patch5: %{pname}-vnc.patch
60 URL: http://www.virtualbox.org/
61 BuildRequires: rpmbuild(macros) >= 1.535
64 BuildRequires: gcc-multilib
65 BuildRequires: glibc-devel(i686)
66 BuildRequires: libstdc++-multilib-devel
67 BuildRequires: libstdc++-multilib-static
69 %if "%{pld_release}" == "ac"
70 BuildRequires: XFree86-devel
72 BuildRequires: xorg-lib-libXcursor-devel
73 BuildRequires: xorg-lib-libXmu-devel
75 BuildRequires: OpenGL-GLU-devel
76 BuildRequires: OpenGL-devel
77 BuildRequires: QtGui-devel
78 BuildRequires: QtNetwork-devel
79 BuildRequires: QtOpenGL-devel
80 BuildRequires: SDL-devel >= 1.2.7
82 BuildRequires: alsa-lib-devel >= 1.0.6
86 BuildRequires: curl-devel
87 BuildRequires: gcc >= 5:3.2.3
88 BuildRequires: libIDL-devel
89 BuildRequires: libcap-static
90 BuildRequires: libpng-devel >= 1.2.5
91 BuildRequires: libstdc++-devel >= 5:3.2.3
92 BuildRequires: libstdc++-static >= 5:3.2.3
93 BuildRequires: libuuid-devel
94 BuildRequires: libvncserver-devel
95 BuildRequires: libxml2-devel >= 2.6.26
96 BuildRequires: libxslt-devel >= 1.1.17
97 BuildRequires: libxslt-progs >= 1.1.17
98 BuildRequires: pam-devel
99 BuildRequires: pkgconfig
100 BuildRequires: pulseaudio-devel >= 0.9.0
101 BuildRequires: python-devel
102 BuildRequires: python-modules
103 BuildRequires: qt4-build >= 4.2.0
104 BuildRequires: qt4-linguist
105 BuildRequires: sed >= 4.0
107 BuildRequires: xalan-c-devel >= 1.10.0
108 BuildRequires: xerces-c-devel >= 2.6.0
109 BuildRequires: zlib-devel >= 1.2.1
111 %if %{with dist_kernel}
112 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
114 Requires(post,preun): /sbin/chkconfig
115 Requires(postun): /usr/sbin/groupdel
116 Requires(pre): /usr/bin/getgid
117 Requires(pre): /usr/sbin/groupadd
118 Requires: QtCore >= 4.6.1
120 Provides: group(vbox)
121 ExclusiveArch: %{ix86} %{x8664}
122 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
125 %define vbox_platform linux.amd64
127 %define vbox_platform linux.x86
129 %define outdir out/%{vbox_platform}/release/bin
130 %define _sbindir /sbin
133 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
134 hardware. Targeted at server, desktop and embedded use, it is now the
135 only professional-quality virtualization solution that is also Open
138 Some of the features of VirtualBox OSE are:
140 Modularity: VirtualBox OSE has an extremely modular design with
141 well-defined internal programming interfaces and a client/server
142 design. This makes it easy to control it from several interfaces at
143 once: for example, you can start a virtual machine in a typical
144 virtual machine GUI and then control that machine from the command
145 line. VirtualBox OSE also comes with a full Software Development Kit:
146 even though it is Open Source Software, you don't have to hack the
147 source to write a new interface for VirtualBox OSE.
149 Virtual machine descriptions in XML: the configuration settings of
150 virtual machines are stored entirely in XML and are independent of the
151 local machines. Virtual machine definitions can therefore easily be
152 ported to other computers.
154 You should install this package in your Host OS.
156 %description -l pl.UTF-8
157 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
158 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
159 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
160 również jako Otwarte Oprogramowanie.
162 Przykładowe cechy VirtualBoksa:
164 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
165 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
166 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
167 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
168 poziomu interfejsu graficznego, a później kontrolować ją z linii
169 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
170 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
173 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
174 wirtualnych są w całości przechowywane w XML-u i są niezależne od
175 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
176 konfigurację maszyny wirtualnej na inny komputer.
179 Summary: udev rules for VirtualBox OSE kernel modules
180 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
185 udev rules for VirtualBox OSE kernel modules.
187 You should install this package in your Host OS and in Guest OS.
189 %description udev -l pl.UTF-8
190 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
193 Summary: VirtualBox Guest Additions
195 Requires: %{name} = %{version}-%{release}
197 %description additions
198 VirtualBox Guest Additions.
200 This package contains ISO9660 image with drivers for Guest OS.
202 You should install this package in your Host OS.
205 Summary: VirtualBox Guest Additions
207 Requires: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
208 Requires: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
209 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
210 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
213 Tools that utilize kernel modules for supporting integration with the
214 Host, including file sharing and tracking of mouse pointer movement
215 and X.org X11 video and mouse driver.
217 You should install this package in your Guest OS.
219 %package -n pam-pam_vbox
220 Summary: PAM module to perform automated guest logons
223 %description -n pam-pam_vbox
224 PAM module (Pluggable Authentication Module) which can be used to
225 perform automated guest logons.
227 %package -n xorg-driver-input-vboxmouse
228 Summary: X.org mouse driver for VirtualBox OSE guest OS
229 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
230 Group: X11/Applications
231 Requires: xorg-xserver-server >= 1.0.99.901
232 %if "%{pld_release}" == "ti"
233 Requires: xorg-xserver-server(xinput-abi) <= 7.0
235 Requires: xorg-xserver-server(xinput-abi) <= 9.0
237 Requires: xorg-xserver-server(xinput-abi) >= 4.0
239 %description -n xorg-driver-input-vboxmouse
240 X.org mouse driver for VirtualBox OSE guest OS.
242 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
243 Sterownik myszy dla systemu gościa w VirtualBoksie.
245 %package -n xorg-driver-video-vboxvideo
246 Summary: X.org video driver for VirtualBox OSE guest OS
247 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
248 Group: X11/Applications
249 Requires: xorg-xserver-libdri >= 1.7.4
250 Requires: xorg-xserver-server >= 1.0.99.901
251 %if "%{pld_release}" == "ti"
252 Requires: xorg-xserver-server(videodrv-abi) <= 6.0
254 Requires: xorg-xserver-server(videodrv-abi) <= 7.0
256 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
258 %description -n xorg-driver-video-vboxvideo
259 X.org video driver for VirtualBox OSE guest OS.
261 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
262 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
264 %package -n kernel%{_alt_kernel}-misc-vboxguest
265 Summary: VirtualBox OSE Guest Additions for Linux Module
266 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
267 Release: %{rel}@%{_kernel_ver_str}
269 Requires(post,postun): /sbin/depmod
270 Requires: dev >= 2.9.0-7
271 %if %{with dist_kernel}
272 %requires_releq_kernel
273 Requires(postun): %releq_kernel
275 Provides: kernel(vboxguest) = %{version}-%{rel}
276 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
277 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
279 %description -n kernel%{_alt_kernel}-misc-vboxguest
280 VirtualBox OSE Guest Additions for Linux Module.
282 You should install this package in your Guest OS.
284 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
285 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
288 %package -n kernel%{_alt_kernel}-misc-vboxdrv
289 Summary: VirtualBox OSE Support Driver
290 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
291 Release: %{rel}@%{_kernel_ver_str}
293 Requires(post,postun): /sbin/depmod
294 Requires: dev >= 2.9.0-7
295 %if %{with dist_kernel}
296 %requires_releq_kernel
297 Requires(postun): %releq_kernel
299 Provides: kernel(vboxdrv) = %{version}-%{rel}
301 %description -n kernel%{_alt_kernel}-misc-vboxdrv
302 VirtualBox OSE Support Driver.
304 You should install this package in your Host OS.
306 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
307 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
310 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
311 Summary: VirtualBox OSE Network Adapter Driver
312 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
313 Release: %{rel}@%{_kernel_ver_str}
315 Requires(post,postun): /sbin/depmod
316 Requires: dev >= 2.9.0-7
317 Requires: kernel%{_alt_kernel}-misc-vboxdrv
318 %if %{with dist_kernel}
319 %requires_releq_kernel
320 Requires(postun): %releq_kernel
322 Provides: kernel(vboxnetflt) = %{version}-%{rel}
324 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
325 VirtualBox OSE Network Adapter Driver.
327 You should install this package in your Host OS.
329 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
330 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
333 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
334 Summary: VirtualBox OSE Network Filter Driver
335 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
336 Release: %{rel}@%{_kernel_ver_str}
338 Requires(post,postun): /sbin/depmod
339 Requires: dev >= 2.9.0-7
340 Requires: kernel%{_alt_kernel}-misc-vboxdrv
341 %if %{with dist_kernel}
342 %requires_releq_kernel
343 Requires(postun): %releq_kernel
345 Provides: kernel(vboxnetflt) = %{version}-%{rel}
347 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
348 VirtualBox OSE Network Filter Driver.
350 You should install this package in your Host OS.
352 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
353 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
354 dla systemu głównego.
356 %package -n kernel%{_alt_kernel}-misc-vboxsf
357 Summary: Host file system access (Shared Folders) for VirtualBox OSE
358 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
359 Release: %{rel}@%{_kernel_ver_str}
361 Requires(post,postun): /sbin/depmod
362 Requires: dev >= 2.9.0-7
363 Requires: kernel%{_alt_kernel}-misc-vboxguest
364 %if %{with dist_kernel}
365 %requires_releq_kernel
366 Requires(postun): %releq_kernel
368 Provides: kernel(vboxsf) = %{version}-%{rel}
369 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
371 %description -n kernel%{_alt_kernel}-misc-vboxsf
372 Host file system access (Shared Folders) for VirtualBox OSE.
374 You should install this package in your Guest OS.
376 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
377 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
378 głównego z poziomu systemu gościa.
380 %package -n kernel%{_alt_kernel}-misc-vboxvideo
381 Summary: DRM support for VirtualBox OSE
382 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
383 Release: %{rel}@%{_kernel_ver_str}
385 Requires(post,postun): /sbin/depmod
386 Requires: dev >= 2.9.0-7
387 %if %{with dist_kernel}
388 %requires_releq_kernel
389 %if "%{rpm_build_macros}" >= "1.531"
390 %requires_releq_kernel -n drm
392 Requires(postun): %releq_kernel
394 Provides: kernel(vboxvideo) = %{version}-%{rel}
396 %description -n kernel%{_alt_kernel}-misc-vboxvideo
397 DRM support for VirtualBox OSE.
399 You should install this package in your Guest OS.
401 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
402 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
405 %setup -q -n %{pname}-%{version}_OSE
413 %{__sed} -i -e 's,$VBOX_DOC_PATH,%{_docdir}/%{name}-%{version},' src/VBox/Installer/linux/virtualbox.desktop
414 %{__sed} -i -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/linux/virtualbox.desktop
417 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
419 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
421 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
422 tar -zxf guest-modules.tar.gz -C GuestDrivers
424 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
425 tar -zxf host-modules.tar.gz -C HostDrivers
429 %if %{with userspace}
430 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
432 --with-gcc="%{__cc}" \
433 --with-g++="%{__cxx}" \
434 --disable-hardening \
438 kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
442 cd PLD-MODULE-BUILD/HostDrivers
443 %build_kernel_modules -m vboxdrv -C vboxdrv
444 %build_kernel_modules -m vboxnetadp -C vboxnetadp
445 %build_kernel_modules -m vboxnetflt -C vboxnetflt
448 %build_kernel_modules -m vboxguest -C vboxguest
449 cp -a vboxguest/Module.symvers vboxsf
450 %build_kernel_modules -m vboxsf -C vboxsf -c
451 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
453 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c -o mount.vboxsf
457 rm -rf $RPM_BUILD_ROOT
459 %if %{with userspace}
461 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
462 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
464 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
465 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
467 rm -f $RPM_BUILD_ROOT/VBox.png
470 cp -a$l %{outdir} $RPM_BUILD_ROOT%{_libdir}/%{pname}
472 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
473 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
474 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
475 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
476 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
479 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
480 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
482 %if "%{pld_release}" == "ti"
483 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_17.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
484 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_17.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
486 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_18.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
487 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_18.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
489 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
490 # xorg other driver versions
491 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
492 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
494 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
495 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
496 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
497 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
498 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
499 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
500 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
502 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
503 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
505 install -d $RPM_BUILD_ROOT/%{_lib}/security
506 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
509 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
510 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
511 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
512 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
514 # IPRT Testcase / Tool - Source Code Massager.
515 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
518 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
522 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
523 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
524 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
525 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
526 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
527 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
528 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
529 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
532 # packaged by kernel part
533 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
537 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
538 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
539 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
540 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
541 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
542 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
543 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
544 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
545 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
546 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
547 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
548 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
550 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
555 rm -rf $RPM_BUILD_ROOT
558 %groupadd -g 221 -r -f vbox
562 You must install vboxdrv kernel module for this software to work:
563 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
565 Additionally you might want to install:
566 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
567 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
569 On Guest Linux system you might want to install:
570 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
571 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
572 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
577 if [ "$1" = "0" ]; then
581 %post -n kernel%{_alt_kernel}-misc-vboxguest
582 %depmod %{_kernel_ver}
583 /sbin/chkconfig --add vboxguest
584 %service vboxguest restart "VirtualBox OSE Guest additions driver"
586 %postun -n kernel%{_alt_kernel}-misc-vboxguest
587 %depmod %{_kernel_ver}
589 %preun -n kernel%{_alt_kernel}-misc-vboxguest
590 if [ "$1" = "0" ]; then
591 %service vboxguest stop
592 /sbin/chkconfig --del vboxguest
595 %post -n kernel%{_alt_kernel}-misc-vboxdrv
596 %depmod %{_kernel_ver}
597 /sbin/chkconfig --add vboxdrv
598 %service vboxdrv restart "VirtualBox OSE Support Driver"
600 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
601 %depmod %{_kernel_ver}
603 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
604 if [ "$1" = "0" ]; then
605 %service vboxdrv stop
606 /sbin/chkconfig --del vboxdrv
609 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
610 %depmod %{_kernel_ver}
611 /sbin/chkconfig --add vboxnetadp
612 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
614 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
615 %depmod %{_kernel_ver}
617 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
618 if [ "$1" = "0" ]; then
619 %service vboxnetadp stop
620 /sbin/chkconfig --del vboxnetadp
623 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
624 %depmod %{_kernel_ver}
625 /sbin/chkconfig --add vboxnetflt
626 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
628 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
629 %depmod %{_kernel_ver}
631 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
632 if [ "$1" = "0" ]; then
633 %service vboxnetflt stop
634 /sbin/chkconfig --del vboxnetflt
637 %post -n kernel%{_alt_kernel}-misc-vboxsf
638 %depmod %{_kernel_ver}
639 /sbin/chkconfig --add vboxsf
640 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
642 %postun -n kernel%{_alt_kernel}-misc-vboxsf
643 %depmod %{_kernel_ver}
645 %preun -n kernel%{_alt_kernel}-misc-vboxsf
646 if [ "$1" = "0" ]; then
648 /sbin/chkconfig --del vboxsf
651 %post -n kernel%{_alt_kernel}-misc-vboxvideo
652 %depmod %{_kernel_ver}
654 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
655 %depmod %{_kernel_ver}
657 %if %{with userspace}
659 %defattr(644,root,root,755)
661 %dir %{_libdir}/VirtualBox
662 %dir %{_libdir}/VirtualBox/additions
663 %dir %{_libdir}/VirtualBox/components
664 %dir %{_libdir}/VirtualBox/nls
665 %attr(755,root,root) %{_bindir}/VBoxBFE
666 %attr(755,root,root) %{_bindir}/VBoxHeadless
667 %attr(755,root,root) %{_bindir}/VBoxManage
668 %attr(755,root,root) %{_bindir}/VBoxSDL
669 %attr(755,root,root) %{_bindir}/VBoxSVC
670 %attr(755,root,root) %{_bindir}/VBoxTunctl
671 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
672 %attr(755,root,root) %{_bindir}/VirtualBox
673 %attr(755,root,root) %{_sbindir}/mount.vdi
674 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
675 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
676 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
677 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
678 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
679 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
680 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
681 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
682 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
683 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
684 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
685 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
686 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
687 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
688 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
689 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
690 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
691 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
692 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
693 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
694 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
696 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
697 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
699 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
701 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
702 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
703 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
704 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
705 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
706 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
707 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
708 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
709 %{_libdir}/VirtualBox/VBoxDD2GC.gc
710 %{_libdir}/VirtualBox/VBoxDDGC.gc
711 %{_libdir}/VirtualBox/VMMGC.gc
712 %{_libdir}/VirtualBox/VBoxDD2R0.r0
713 %{_libdir}/VirtualBox/VBoxDDR0.r0
714 %{_libdir}/VirtualBox/VMMR0.r0
715 %{_libdir}/VirtualBox/EfiThunk
716 %{_libdir}/VirtualBox/VBoxEFI32.fd
717 %{_libdir}/VirtualBox/VBoxEFI64.fd
718 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
719 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
720 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
721 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
722 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
723 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
724 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
725 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
726 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
727 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
728 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
729 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
730 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
731 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
732 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
733 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
734 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
735 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
736 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
737 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
738 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
739 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
740 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
741 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
742 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
743 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
744 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
745 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
746 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
747 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
748 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
749 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
750 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
751 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
752 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
753 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
754 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
755 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
756 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
757 %{_pixmapsdir}/VBox.png
758 %{_desktopdir}/*.desktop
761 %defattr(644,root,root,755)
762 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
765 %defattr(644,root,root,755)
766 %attr(755,root,root) %{_bindir}/VBoxService
768 %files -n pam-pam_vbox
769 %defattr(644,root,root,755)
770 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
773 %defattr(644,root,root,755)
774 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
776 %files -n xorg-driver-input-vboxmouse
777 %defattr(644,root,root,755)
778 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
780 %files -n xorg-driver-video-vboxvideo
781 %defattr(644,root,root,755)
782 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
783 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
784 # vboxvideo_dri.so deps
785 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
786 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
787 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
788 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
789 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
790 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
794 %files -n kernel%{_alt_kernel}-misc-vboxguest
795 %defattr(644,root,root,755)
796 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
797 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
799 %files -n kernel%{_alt_kernel}-misc-vboxdrv
800 %defattr(644,root,root,755)
801 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
802 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
804 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
805 %defattr(644,root,root,755)
806 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
807 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
809 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
810 %defattr(644,root,root,755)
811 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
812 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
814 %files -n kernel%{_alt_kernel}-misc-vboxsf
815 %defattr(644,root,root,755)
816 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
817 %attr(755,root,root) %{_sbindir}/mount.vboxsf
818 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
820 %files -n kernel%{_alt_kernel}-misc-vboxvideo
821 %defattr(644,root,root,755)
822 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*