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: 5aad764cd4e886f9d80d7bde42163c7a
42 Source1: http://download.virtualbox.org/virtualbox/%{version}/UserManual.pdf
43 # Source1-md5: 370bb3e893acffa584536c8f9e966c79
44 Source2: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
45 # Source2-md5: 4fde0f279854334b84c01972fbed2874
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-spaces.patch
55 Patch1: %{pname}-export_modules.patch
56 Patch2: %{pname}-VBoxSysInfo.patch
57 Patch3: %{pname}-warning_workaround.patch
58 Patch4: %{pname}-vnc.patch
59 URL: http://www.virtualbox.org/
60 BuildRequires: rpmbuild(macros) >= 1.535
63 BuildRequires: gcc-multilib
64 BuildRequires: glibc-devel(i686)
65 BuildRequires: libstdc++-multilib-devel
66 BuildRequires: libstdc++-multilib-static
68 %if "%{pld_release}" == "ac"
69 BuildRequires: XFree86-devel
71 BuildRequires: xorg-lib-libXcursor-devel
72 BuildRequires: xorg-lib-libXmu-devel
74 BuildRequires: OpenGL-GLU-devel
75 BuildRequires: OpenGL-devel
76 BuildRequires: QtGui-devel
77 BuildRequires: QtNetwork-devel
78 BuildRequires: QtOpenGL-devel
79 BuildRequires: SDL-devel >= 1.2.7
81 BuildRequires: alsa-lib-devel >= 1.0.6
85 BuildRequires: curl-devel
86 BuildRequires: gcc >= 5:3.2.3
87 BuildRequires: libIDL-devel
88 BuildRequires: libcap-static
89 BuildRequires: libpng-devel >= 1.2.5
90 BuildRequires: libstdc++-devel >= 5:3.2.3
91 BuildRequires: libstdc++-static >= 5:3.2.3
92 BuildRequires: libuuid-devel
93 BuildRequires: libvncserver-devel
94 BuildRequires: libxml2-devel >= 2.6.26
95 BuildRequires: libxslt-devel >= 1.1.17
96 BuildRequires: libxslt-progs >= 1.1.17
97 BuildRequires: pam-devel
98 BuildRequires: pkgconfig
99 BuildRequires: pulseaudio-devel >= 0.9.0
100 BuildRequires: python-devel
101 BuildRequires: python-modules
102 BuildRequires: qt4-build >= 4.2.0
103 BuildRequires: qt4-linguist
104 BuildRequires: sed >= 4.0
106 BuildRequires: xalan-c-devel >= 1.10.0
107 BuildRequires: xerces-c-devel >= 2.6.0
108 BuildRequires: zlib-devel >= 1.2.1
110 %if %{with dist_kernel}
111 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
113 Requires(post,preun): /sbin/chkconfig
114 Requires(postun): /usr/sbin/groupdel
115 Requires(pre): /usr/bin/getgid
116 Requires(pre): /usr/sbin/groupadd
117 Requires: QtCore >= 4.7.0
119 Provides: group(vbox)
120 ExclusiveArch: %{ix86} %{x8664}
121 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
124 %define vbox_platform linux.amd64
126 %define vbox_platform linux.x86
128 %define outdir out/%{vbox_platform}/release/bin
129 %define _sbindir /sbin
132 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
133 hardware. Targeted at server, desktop and embedded use, it is now the
134 only professional-quality virtualization solution that is also Open
137 Some of the features of VirtualBox OSE are:
139 Modularity: VirtualBox OSE has an extremely modular design with
140 well-defined internal programming interfaces and a client/server
141 design. This makes it easy to control it from several interfaces at
142 once: for example, you can start a virtual machine in a typical
143 virtual machine GUI and then control that machine from the command
144 line. VirtualBox OSE also comes with a full Software Development Kit:
145 even though it is Open Source Software, you don't have to hack the
146 source to write a new interface for VirtualBox OSE.
148 Virtual machine descriptions in XML: the configuration settings of
149 virtual machines are stored entirely in XML and are independent of the
150 local machines. Virtual machine definitions can therefore easily be
151 ported to other computers.
153 You should install this package in your Host OS.
155 %description -l pl.UTF-8
156 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
157 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
158 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
159 również jako Otwarte Oprogramowanie.
161 Przykładowe cechy VirtualBoksa:
163 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
164 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
165 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
166 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
167 poziomu interfejsu graficznego, a później kontrolować ją z linii
168 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
169 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
172 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
173 wirtualnych są w całości przechowywane w XML-u i są niezależne od
174 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
175 konfigurację maszyny wirtualnej na inny komputer.
178 Summary: udev rules for VirtualBox OSE kernel modules
179 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
184 udev rules for VirtualBox OSE kernel modules.
186 You should install this package in your Host OS and in Guest OS.
188 %description udev -l pl.UTF-8
189 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
192 Summary: VirtualBox Guest Additions
194 Requires: %{name} = %{version}-%{release}
196 %description additions
197 VirtualBox Guest Additions.
199 This package contains ISO9660 image with drivers for Guest OS.
201 You should install this package in your Host OS.
204 Summary: VirtualBox Guest Additions
206 Suggests: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
207 Suggests: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
208 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
209 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
212 Tools that utilize kernel modules for supporting integration with the
213 Host, including file sharing and tracking of mouse pointer movement
214 and X.org X11 video and mouse driver.
216 You should install this package in your Guest OS.
218 %package -n pam-pam_vbox
219 Summary: PAM module to perform automated guest logons
222 %description -n pam-pam_vbox
223 PAM module (Pluggable Authentication Module) which can be used to
224 perform automated guest logons.
226 %package -n xorg-driver-input-vboxmouse
227 Summary: X.org mouse driver for VirtualBox OSE guest OS
228 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
229 Group: X11/Applications
230 Requires: xorg-xserver-server >= 1.0.99.901
231 %if "%{pld_release}" == "ti"
232 Requires: xorg-xserver-server(xinput-abi) <= 7.0
234 Requires: xorg-xserver-server(xinput-abi) <= 11.0
236 Requires: xorg-xserver-server(xinput-abi) >= 4.0
238 %description -n xorg-driver-input-vboxmouse
239 X.org mouse driver for VirtualBox OSE guest OS.
241 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
242 Sterownik myszy dla systemu gościa w VirtualBoksie.
244 %package -n xorg-driver-video-vboxvideo
245 Summary: X.org video driver for VirtualBox OSE guest OS
246 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
247 Group: X11/Applications
248 Requires: xorg-xserver-libdri >= 1.7.4
249 Requires: xorg-xserver-server >= 1.0.99.901
250 %if "%{pld_release}" == "ti"
251 Requires: xorg-xserver-server(videodrv-abi) <= 6.0
253 Requires: xorg-xserver-server(videodrv-abi) <= 8.0
255 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
257 %description -n xorg-driver-video-vboxvideo
258 X.org video driver for VirtualBox OSE guest OS.
260 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
261 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
263 %package -n kernel%{_alt_kernel}-misc-vboxguest
264 Summary: VirtualBox OSE Guest Additions for Linux Module
265 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
266 Release: %{rel}@%{_kernel_ver_str}
268 Requires(post,postun): /sbin/depmod
269 Requires: dev >= 2.9.0-7
270 %if %{with dist_kernel}
271 %requires_releq_kernel
272 Requires(postun): %releq_kernel
274 Provides: kernel(vboxguest) = %{version}-%{rel}
275 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
276 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
278 %description -n kernel%{_alt_kernel}-misc-vboxguest
279 VirtualBox OSE Guest Additions for Linux Module.
281 You should install this package in your Guest OS.
283 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
284 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
287 %package -n kernel%{_alt_kernel}-misc-vboxdrv
288 Summary: VirtualBox OSE Support Driver
289 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
290 Release: %{rel}@%{_kernel_ver_str}
292 Requires(post,postun): /sbin/depmod
293 Requires: dev >= 2.9.0-7
294 %if %{with dist_kernel}
295 %requires_releq_kernel
296 Requires(postun): %releq_kernel
298 Provides: kernel(vboxdrv) = %{version}-%{rel}
300 %description -n kernel%{_alt_kernel}-misc-vboxdrv
301 VirtualBox OSE Support Driver.
303 You should install this package in your Host OS.
305 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
306 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
309 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
310 Summary: VirtualBox OSE Network Adapter Driver
311 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
312 Release: %{rel}@%{_kernel_ver_str}
314 Requires(post,postun): /sbin/depmod
315 Requires: dev >= 2.9.0-7
316 Requires: kernel%{_alt_kernel}-misc-vboxdrv
317 %if %{with dist_kernel}
318 %requires_releq_kernel
319 Requires(postun): %releq_kernel
321 Provides: kernel(vboxnetflt) = %{version}-%{rel}
323 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
324 VirtualBox OSE Network Adapter Driver.
326 You should install this package in your Host OS.
328 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
329 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
332 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
333 Summary: VirtualBox OSE Network Filter Driver
334 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
335 Release: %{rel}@%{_kernel_ver_str}
337 Requires(post,postun): /sbin/depmod
338 Requires: dev >= 2.9.0-7
339 Requires: kernel%{_alt_kernel}-misc-vboxdrv
340 %if %{with dist_kernel}
341 %requires_releq_kernel
342 Requires(postun): %releq_kernel
344 Provides: kernel(vboxnetflt) = %{version}-%{rel}
346 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
347 VirtualBox OSE Network Filter Driver.
349 You should install this package in your Host OS.
351 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
352 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
353 dla systemu głównego.
355 %package -n kernel%{_alt_kernel}-misc-vboxsf
356 Summary: Host file system access (Shared Folders) for VirtualBox OSE
357 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
358 Release: %{rel}@%{_kernel_ver_str}
360 Requires(post,postun): /sbin/depmod
361 Requires: dev >= 2.9.0-7
362 Requires: kernel%{_alt_kernel}-misc-vboxguest
363 %if %{with dist_kernel}
364 %requires_releq_kernel
365 Requires(postun): %releq_kernel
367 Provides: kernel(vboxsf) = %{version}-%{rel}
368 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
370 %description -n kernel%{_alt_kernel}-misc-vboxsf
371 Host file system access (Shared Folders) for VirtualBox OSE.
373 You should install this package in your Guest OS.
375 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
376 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
377 głównego z poziomu systemu gościa.
379 %package -n kernel%{_alt_kernel}-misc-vboxvideo
380 Summary: DRM support for VirtualBox OSE
381 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
382 Release: %{rel}@%{_kernel_ver_str}
384 Requires(post,postun): /sbin/depmod
385 Requires: dev >= 2.9.0-7
386 %if %{with dist_kernel}
387 %requires_releq_kernel
388 %if "%{rpm_build_macros}" >= "1.531"
389 %requires_releq_kernel -n drm
391 Requires(postun): %releq_kernel
393 Provides: kernel(vboxvideo) = %{version}-%{rel}
395 %description -n kernel%{_alt_kernel}-misc-vboxvideo
396 DRM support for VirtualBox OSE.
398 You should install this package in your Guest OS.
400 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
401 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
404 %setup -q -n %{pname}-%{version}_OSE
411 %{__sed} -i -e 's,$VBOX_DOC_PATH,%{_docdir}/%{name}-%{version},' src/VBox/Installer/linux/virtualbox.desktop
412 %{__sed} -i -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/linux/virtualbox.desktop
415 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
417 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
419 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
420 tar -zxf guest-modules.tar.gz -C GuestDrivers
422 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
423 tar -zxf host-modules.tar.gz -C HostDrivers
427 %if %{with userspace}
428 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
430 --with-gcc="%{__cc}" \
431 --with-g++="%{__cxx}" \
432 --disable-hardening \
436 kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
440 cd PLD-MODULE-BUILD/HostDrivers
441 %build_kernel_modules -m vboxdrv -C vboxdrv
442 %build_kernel_modules -m vboxnetadp -C vboxnetadp
443 %build_kernel_modules -m vboxnetflt -C vboxnetflt
446 %build_kernel_modules -m vboxguest -C vboxguest
447 cp -a vboxguest/Module.symvers vboxsf
448 %build_kernel_modules -m vboxsf -C vboxsf -c
449 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
451 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c -o mount.vboxsf
455 rm -rf $RPM_BUILD_ROOT
457 %if %{with userspace}
459 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
460 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
462 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
463 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
465 rm -f $RPM_BUILD_ROOT/VBox.png
468 cp -a$l %{outdir} $RPM_BUILD_ROOT%{_libdir}/%{pname}
470 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
471 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
472 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
473 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
474 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
477 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
478 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
480 %if "%{pld_release}" == "ti"
481 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_17.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
482 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_17.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
484 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_19.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
485 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_19.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
487 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
488 # xorg other driver versions
489 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
490 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
492 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
493 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
494 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
495 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
496 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
497 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
498 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
500 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
501 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
503 install -d $RPM_BUILD_ROOT/%{_lib}/security
504 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
507 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
508 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
509 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
510 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
512 # IPRT Testcase / Tool - Source Code Massager.
513 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
516 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
520 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
521 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
522 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
523 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
524 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
525 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
526 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
527 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
530 # packaged by kernel part
531 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
535 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
536 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
537 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
538 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
539 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
540 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
541 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
542 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
543 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
544 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
545 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
546 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
548 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
553 rm -rf $RPM_BUILD_ROOT
556 %groupadd -g 221 -r -f vbox
560 You must install vboxdrv kernel module for this software to work:
561 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
563 Additionally you might want to install:
564 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
565 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
567 On Guest Linux system you might want to install:
568 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
569 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
570 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
575 if [ "$1" = "0" ]; then
579 %post -n kernel%{_alt_kernel}-misc-vboxguest
580 %depmod %{_kernel_ver}
581 /sbin/chkconfig --add vboxguest
582 %service vboxguest restart "VirtualBox OSE Guest additions driver"
584 %postun -n kernel%{_alt_kernel}-misc-vboxguest
585 %depmod %{_kernel_ver}
587 %preun -n kernel%{_alt_kernel}-misc-vboxguest
588 if [ "$1" = "0" ]; then
589 %service vboxguest stop
590 /sbin/chkconfig --del vboxguest
593 %post -n kernel%{_alt_kernel}-misc-vboxdrv
594 %depmod %{_kernel_ver}
595 /sbin/chkconfig --add vboxdrv
596 %service vboxdrv restart "VirtualBox OSE Support Driver"
598 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
599 %depmod %{_kernel_ver}
601 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
602 if [ "$1" = "0" ]; then
603 %service vboxdrv stop
604 /sbin/chkconfig --del vboxdrv
607 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
608 %depmod %{_kernel_ver}
609 /sbin/chkconfig --add vboxnetadp
610 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
612 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
613 %depmod %{_kernel_ver}
615 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
616 if [ "$1" = "0" ]; then
617 %service vboxnetadp stop
618 /sbin/chkconfig --del vboxnetadp
621 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
622 %depmod %{_kernel_ver}
623 /sbin/chkconfig --add vboxnetflt
624 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
626 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
627 %depmod %{_kernel_ver}
629 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
630 if [ "$1" = "0" ]; then
631 %service vboxnetflt stop
632 /sbin/chkconfig --del vboxnetflt
635 %post -n kernel%{_alt_kernel}-misc-vboxsf
636 %depmod %{_kernel_ver}
637 /sbin/chkconfig --add vboxsf
638 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
640 %postun -n kernel%{_alt_kernel}-misc-vboxsf
641 %depmod %{_kernel_ver}
643 %preun -n kernel%{_alt_kernel}-misc-vboxsf
644 if [ "$1" = "0" ]; then
646 /sbin/chkconfig --del vboxsf
649 %post -n kernel%{_alt_kernel}-misc-vboxvideo
650 %depmod %{_kernel_ver}
652 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
653 %depmod %{_kernel_ver}
655 %if %{with userspace}
657 %defattr(644,root,root,755)
659 %dir %{_libdir}/VirtualBox
660 %dir %{_libdir}/VirtualBox/additions
661 %dir %{_libdir}/VirtualBox/components
662 %dir %{_libdir}/VirtualBox/nls
663 %attr(755,root,root) %{_bindir}/VBoxBFE
664 %attr(755,root,root) %{_bindir}/VBoxHeadless
665 %attr(755,root,root) %{_bindir}/VBoxManage
666 %attr(755,root,root) %{_bindir}/VBoxSDL
667 %attr(755,root,root) %{_bindir}/VBoxSVC
668 %attr(755,root,root) %{_bindir}/VBoxTunctl
669 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
670 %attr(755,root,root) %{_bindir}/VirtualBox
671 %attr(755,root,root) %{_sbindir}/mount.vdi
672 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
673 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
674 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
675 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
676 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
677 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
678 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
679 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
680 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
681 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
682 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
683 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
684 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
685 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
686 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
687 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
688 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
689 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
690 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
691 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
692 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
694 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
695 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
697 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
698 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
699 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
701 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
702 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
703 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
704 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
705 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
706 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
707 %{_libdir}/VirtualBox/VBoxDD2GC.gc
708 %{_libdir}/VirtualBox/VBoxDDGC.gc
709 %{_libdir}/VirtualBox/VMMGC.gc
710 %{_libdir}/VirtualBox/VBoxDD2R0.r0
711 %{_libdir}/VirtualBox/VBoxDDR0.r0
712 %{_libdir}/VirtualBox/VMMR0.r0
713 %{_libdir}/VirtualBox/EfiThunk
714 %{_libdir}/VirtualBox/VBoxEFI32.fd
715 %{_libdir}/VirtualBox/VBoxEFI64.fd
716 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
717 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
718 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
719 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
720 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
721 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
722 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
723 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
724 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
725 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
726 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
727 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
728 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
729 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
730 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
731 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
732 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
733 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
734 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
735 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
736 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
737 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
738 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
739 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
740 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
741 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
742 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
743 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
744 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
745 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
746 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
747 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
748 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
749 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
750 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
751 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
752 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
753 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
754 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
755 %{_pixmapsdir}/VBox.png
756 %{_desktopdir}/*.desktop
759 %defattr(644,root,root,755)
760 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
763 %defattr(644,root,root,755)
764 # NOTE: unfinished, should contain .desktop files for starting up mouse
765 # integration and other desktop services
766 # NOTE: the filelist is incopmplete too
767 %attr(755,root,root) %{_bindir}/VBoxService
769 %files -n pam-pam_vbox
770 %defattr(644,root,root,755)
771 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
774 %defattr(644,root,root,755)
775 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
777 %files -n xorg-driver-input-vboxmouse
778 %defattr(644,root,root,755)
779 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
781 %files -n xorg-driver-video-vboxvideo
782 %defattr(644,root,root,755)
783 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
784 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
785 # vboxvideo_dri.so deps
786 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
787 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
788 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
789 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
790 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
791 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
795 %files -n kernel%{_alt_kernel}-misc-vboxguest
796 %defattr(644,root,root,755)
797 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
798 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
800 %files -n kernel%{_alt_kernel}-misc-vboxdrv
801 %defattr(644,root,root,755)
802 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
803 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
805 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
806 %defattr(644,root,root,755)
807 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
808 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
810 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
811 %defattr(644,root,root,755)
812 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
813 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
815 %files -n kernel%{_alt_kernel}-misc-vboxsf
816 %defattr(644,root,root,755)
817 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
818 %attr(755,root,root) %{_sbindir}/mount.vboxsf
819 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
821 %files -n kernel%{_alt_kernel}-misc-vboxvideo
822 %defattr(644,root,root,755)
823 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*