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 Patch5: %{pname}-noorigin.patch
60 Patch6: %{pname}-dri.patch
61 URL: http://www.virtualbox.org/
62 BuildRequires: rpmbuild(macros) >= 1.535
65 BuildRequires: gcc-multilib
66 BuildRequires: glibc-devel(i686)
67 BuildRequires: libstdc++-multilib-devel
68 BuildRequires: libstdc++-multilib-static
70 %if "%{pld_release}" == "ac"
71 BuildRequires: XFree86-devel
73 BuildRequires: xorg-lib-libXcursor-devel
74 BuildRequires: xorg-lib-libXmu-devel
76 BuildRequires: OpenGL-GLU-devel
77 BuildRequires: OpenGL-devel
78 BuildRequires: QtGui-devel
79 BuildRequires: QtNetwork-devel
80 BuildRequires: QtOpenGL-devel
81 BuildRequires: SDL-devel >= 1.2.7
83 BuildRequires: alsa-lib-devel >= 1.0.6
87 BuildRequires: curl-devel
88 BuildRequires: gcc >= 5:3.2.3
89 BuildRequires: libIDL-devel
90 BuildRequires: libcap-static
91 BuildRequires: libpng-devel >= 1.2.5
92 BuildRequires: libstdc++-devel >= 5:3.2.3
93 BuildRequires: libstdc++-static >= 5:3.2.3
94 BuildRequires: libuuid-devel
95 BuildRequires: libvncserver-devel
96 BuildRequires: libxml2-devel >= 2.6.26
97 BuildRequires: libxslt-devel >= 1.1.17
98 BuildRequires: libxslt-progs >= 1.1.17
99 BuildRequires: pam-devel
100 BuildRequires: pkgconfig
101 BuildRequires: pulseaudio-devel >= 0.9.0
102 BuildRequires: python-devel
103 BuildRequires: python-modules
104 BuildRequires: qt4-build >= 4.2.0
105 BuildRequires: qt4-linguist
106 BuildRequires: sed >= 4.0
108 BuildRequires: xalan-c-devel >= 1.10.0
109 BuildRequires: xerces-c-devel >= 2.6.0
110 BuildRequires: zlib-devel >= 1.2.1
112 %if %{with dist_kernel}
113 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
115 Requires(post,preun): /sbin/chkconfig
116 Requires(postun): /usr/sbin/groupdel
117 Requires(pre): /usr/bin/getgid
118 Requires(pre): /usr/sbin/groupadd
119 Requires: QtCore >= 4.7.0
121 Provides: group(vbox)
122 ExclusiveArch: %{ix86} %{x8664}
123 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
126 %define vbox_platform linux.amd64
128 %define vbox_platform linux.x86
130 %define outdir out/%{vbox_platform}/release/bin
131 %define _sbindir /sbin
134 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
135 hardware. Targeted at server, desktop and embedded use, it is now the
136 only professional-quality virtualization solution that is also Open
139 Some of the features of VirtualBox OSE are:
141 Modularity: VirtualBox OSE has an extremely modular design with
142 well-defined internal programming interfaces and a client/server
143 design. This makes it easy to control it from several interfaces at
144 once: for example, you can start a virtual machine in a typical
145 virtual machine GUI and then control that machine from the command
146 line. VirtualBox OSE also comes with a full Software Development Kit:
147 even though it is Open Source Software, you don't have to hack the
148 source to write a new interface for VirtualBox OSE.
150 Virtual machine descriptions in XML: the configuration settings of
151 virtual machines are stored entirely in XML and are independent of the
152 local machines. Virtual machine definitions can therefore easily be
153 ported to other computers.
155 You should install this package in your Host OS.
157 %description -l pl.UTF-8
158 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
159 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
160 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
161 również jako Otwarte Oprogramowanie.
163 Przykładowe cechy VirtualBoksa:
165 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
166 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
167 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
168 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
169 poziomu interfejsu graficznego, a później kontrolować ją z linii
170 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
171 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
174 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
175 wirtualnych są w całości przechowywane w XML-u i są niezależne od
176 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
177 konfigurację maszyny wirtualnej na inny komputer.
180 Summary: udev rules for VirtualBox OSE kernel modules
181 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
186 udev rules for VirtualBox OSE kernel modules.
188 You should install this package in your Host OS and in Guest OS.
190 %description udev -l pl.UTF-8
191 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
194 Summary: VirtualBox Guest Additions
196 Requires: %{name} = %{version}-%{release}
198 %description additions
199 VirtualBox Guest Additions.
201 This package contains ISO9660 image with drivers for Guest OS.
203 You should install this package in your Host OS.
206 Summary: VirtualBox Guest Additions
208 Suggests: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
209 Suggests: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
210 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
211 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
214 Tools that utilize kernel modules for supporting integration with the
215 Host, including file sharing and tracking of mouse pointer movement
216 and X.org X11 video and mouse driver.
218 You should install this package in your Guest OS.
220 %package -n pam-pam_vbox
221 Summary: PAM module to perform automated guest logons
224 %description -n pam-pam_vbox
225 PAM module (Pluggable Authentication Module) which can be used to
226 perform automated guest logons.
228 %package -n xorg-driver-input-vboxmouse
229 Summary: X.org mouse driver for VirtualBox OSE guest OS
230 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
231 Group: X11/Applications
232 Requires: xorg-xserver-server >= 1.0.99.901
233 %if "%{pld_release}" == "ti"
234 Requires: xorg-xserver-server(xinput-abi) <= 11.0
236 Requires: xorg-xserver-server(xinput-abi) <= 11.0
238 Requires: xorg-xserver-server(xinput-abi) >= 4.0
240 %description -n xorg-driver-input-vboxmouse
241 X.org mouse driver for VirtualBox OSE guest OS.
243 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
244 Sterownik myszy dla systemu gościa w VirtualBoksie.
246 %package -n xorg-driver-video-vboxvideo
247 Summary: X.org video driver for VirtualBox OSE guest OS
248 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
249 Group: X11/Applications
250 Requires: Mesa-dri-driver-swrast
251 Requires: xorg-xserver-libdri >= 1.7.4
252 Requires: xorg-xserver-server >= 1.0.99.901
253 %if "%{pld_release}" == "ti"
254 Requires: xorg-xserver-server(videodrv-abi) <= 8.0
256 Requires: xorg-xserver-server(videodrv-abi) <= 8.0
258 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
260 %description -n xorg-driver-video-vboxvideo
261 X.org video driver for VirtualBox OSE guest OS.
263 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
264 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
266 %package -n kernel%{_alt_kernel}-misc-vboxguest
267 Summary: VirtualBox OSE Guest Additions for Linux Module
268 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
269 Release: %{rel}@%{_kernel_ver_str}
271 Requires(post,postun): /sbin/depmod
272 Requires: dev >= 2.9.0-7
273 %if %{with dist_kernel}
274 %requires_releq_kernel
275 Requires(postun): %releq_kernel
277 Provides: kernel(vboxguest) = %{version}-%{rel}
278 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
279 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
281 %description -n kernel%{_alt_kernel}-misc-vboxguest
282 VirtualBox OSE Guest Additions for Linux Module.
284 You should install this package in your Guest OS.
286 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
287 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
290 %package -n kernel%{_alt_kernel}-misc-vboxdrv
291 Summary: VirtualBox OSE Support Driver
292 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
293 Release: %{rel}@%{_kernel_ver_str}
295 Requires(post,postun): /sbin/depmod
296 Requires: dev >= 2.9.0-7
297 %if %{with dist_kernel}
298 %requires_releq_kernel
299 Requires(postun): %releq_kernel
301 Provides: kernel(vboxdrv) = %{version}-%{rel}
303 %description -n kernel%{_alt_kernel}-misc-vboxdrv
304 VirtualBox OSE Support Driver.
306 You should install this package in your Host OS.
308 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
309 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
312 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
313 Summary: VirtualBox OSE Network Adapter Driver
314 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
315 Release: %{rel}@%{_kernel_ver_str}
317 Requires(post,postun): /sbin/depmod
318 Requires: dev >= 2.9.0-7
319 Requires: kernel%{_alt_kernel}-misc-vboxdrv
320 %if %{with dist_kernel}
321 %requires_releq_kernel
322 Requires(postun): %releq_kernel
324 Provides: kernel(vboxnetflt) = %{version}-%{rel}
326 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
327 VirtualBox OSE Network Adapter Driver.
329 You should install this package in your Host OS.
331 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
332 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
335 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
336 Summary: VirtualBox OSE Network Filter Driver
337 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
338 Release: %{rel}@%{_kernel_ver_str}
340 Requires(post,postun): /sbin/depmod
341 Requires: dev >= 2.9.0-7
342 Requires: kernel%{_alt_kernel}-misc-vboxdrv
343 %if %{with dist_kernel}
344 %requires_releq_kernel
345 Requires(postun): %releq_kernel
347 Provides: kernel(vboxnetflt) = %{version}-%{rel}
349 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
350 VirtualBox OSE Network Filter Driver.
352 You should install this package in your Host OS.
354 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
355 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
356 dla systemu głównego.
358 %package -n kernel%{_alt_kernel}-misc-vboxsf
359 Summary: Host file system access (Shared Folders) for VirtualBox OSE
360 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
361 Release: %{rel}@%{_kernel_ver_str}
363 Requires(post,postun): /sbin/depmod
364 Requires: dev >= 2.9.0-7
365 Requires: kernel%{_alt_kernel}-misc-vboxguest
366 %if %{with dist_kernel}
367 %requires_releq_kernel
368 Requires(postun): %releq_kernel
370 Provides: kernel(vboxsf) = %{version}-%{rel}
371 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
373 %description -n kernel%{_alt_kernel}-misc-vboxsf
374 Host file system access (Shared Folders) for VirtualBox OSE.
376 You should install this package in your Guest OS.
378 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
379 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
380 głównego z poziomu systemu gościa.
382 %package -n kernel%{_alt_kernel}-misc-vboxvideo
383 Summary: DRM support for VirtualBox OSE
384 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
385 Release: %{rel}@%{_kernel_ver_str}
387 Requires(post,postun): /sbin/depmod
388 Requires: dev >= 2.9.0-7
389 %if %{with dist_kernel}
390 %requires_releq_kernel
391 %if "%{rpm_build_macros}" >= "1.531"
392 %requires_releq_kernel -n drm
394 Requires(postun): %releq_kernel
396 Provides: kernel(vboxvideo) = %{version}-%{rel}
398 %description -n kernel%{_alt_kernel}-misc-vboxvideo
399 DRM support for VirtualBox OSE.
401 You should install this package in your Guest OS.
403 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
404 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
407 %setup -q -n %{pname}-%{version}_OSE
416 %{__sed} -i -e 's,$VBOX_DOC_PATH,%{_docdir}/%{name}-%{version},' src/VBox/Installer/linux/virtualbox.desktop
417 %{__sed} -i -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/linux/virtualbox.desktop
420 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
422 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
424 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
425 tar -zxf guest-modules.tar.gz -C GuestDrivers
427 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
428 tar -zxf host-modules.tar.gz -C HostDrivers
432 %if %{with userspace}
433 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
435 --with-gcc="%{__cc}" \
436 --with-g++="%{__cxx}" \
437 --disable-hardening \
441 kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
445 cd PLD-MODULE-BUILD/HostDrivers
446 %build_kernel_modules -m vboxdrv -C vboxdrv
447 %build_kernel_modules -m vboxnetadp -C vboxnetadp
448 %build_kernel_modules -m vboxnetflt -C vboxnetflt
451 %build_kernel_modules -m vboxguest -C vboxguest
452 cp -a vboxguest/Module.symvers vboxsf
453 %build_kernel_modules -m vboxsf -C vboxsf -c
454 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
456 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c -o mount.vboxsf
460 rm -rf $RPM_BUILD_ROOT
462 %if %{with userspace}
464 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
465 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
467 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
468 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
470 rm -f $RPM_BUILD_ROOT/VBox.png
473 cp -a$l %{outdir} $RPM_BUILD_ROOT%{_libdir}/%{pname}
475 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
476 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
477 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
478 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
479 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
482 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
483 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
485 %if "%{pld_release}" == "ti"
486 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_17.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
487 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_17.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
489 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_19.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
490 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_19.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
492 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
493 # xorg other driver versions
494 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
495 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
497 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
498 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
499 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
500 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
501 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
502 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
503 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
505 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
506 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
508 install -d $RPM_BUILD_ROOT/%{_lib}/security
509 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
512 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
513 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
514 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
515 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
517 # IPRT Testcase / Tool - Source Code Massager.
518 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
521 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
525 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
526 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
527 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
528 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
529 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
530 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
531 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
532 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
535 # packaged by kernel part
536 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
540 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
541 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
542 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
543 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
544 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
545 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
546 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
547 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
548 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
549 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
550 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
551 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
553 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
558 rm -rf $RPM_BUILD_ROOT
561 %groupadd -g 221 -r -f vbox
565 You must install vboxdrv kernel module for this software to work:
566 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
568 Additionally you might want to install:
569 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
570 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
572 On Guest Linux system you might want to install:
573 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
574 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
575 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
580 if [ "$1" = "0" ]; then
584 %post -n kernel%{_alt_kernel}-misc-vboxguest
585 %depmod %{_kernel_ver}
586 /sbin/chkconfig --add vboxguest
587 %service vboxguest restart "VirtualBox OSE Guest additions driver"
589 %postun -n kernel%{_alt_kernel}-misc-vboxguest
590 %depmod %{_kernel_ver}
592 %preun -n kernel%{_alt_kernel}-misc-vboxguest
593 if [ "$1" = "0" ]; then
594 %service vboxguest stop
595 /sbin/chkconfig --del vboxguest
598 %post -n kernel%{_alt_kernel}-misc-vboxdrv
599 %depmod %{_kernel_ver}
600 /sbin/chkconfig --add vboxdrv
601 %service vboxdrv restart "VirtualBox OSE Support Driver"
603 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
604 %depmod %{_kernel_ver}
606 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
607 if [ "$1" = "0" ]; then
608 %service vboxdrv stop
609 /sbin/chkconfig --del vboxdrv
612 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
613 %depmod %{_kernel_ver}
614 /sbin/chkconfig --add vboxnetadp
615 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
617 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
618 %depmod %{_kernel_ver}
620 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
621 if [ "$1" = "0" ]; then
622 %service vboxnetadp stop
623 /sbin/chkconfig --del vboxnetadp
626 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
627 %depmod %{_kernel_ver}
628 /sbin/chkconfig --add vboxnetflt
629 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
631 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
632 %depmod %{_kernel_ver}
634 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
635 if [ "$1" = "0" ]; then
636 %service vboxnetflt stop
637 /sbin/chkconfig --del vboxnetflt
640 %post -n kernel%{_alt_kernel}-misc-vboxsf
641 %depmod %{_kernel_ver}
642 /sbin/chkconfig --add vboxsf
643 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
645 %postun -n kernel%{_alt_kernel}-misc-vboxsf
646 %depmod %{_kernel_ver}
648 %preun -n kernel%{_alt_kernel}-misc-vboxsf
649 if [ "$1" = "0" ]; then
651 /sbin/chkconfig --del vboxsf
654 %post -n kernel%{_alt_kernel}-misc-vboxvideo
655 %depmod %{_kernel_ver}
657 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
658 %depmod %{_kernel_ver}
660 %if %{with userspace}
662 %defattr(644,root,root,755)
664 %dir %{_libdir}/VirtualBox
665 %dir %{_libdir}/VirtualBox/additions
666 %dir %{_libdir}/VirtualBox/components
667 %dir %{_libdir}/VirtualBox/nls
668 %attr(755,root,root) %{_bindir}/VBoxBFE
669 %attr(755,root,root) %{_bindir}/VBoxHeadless
670 %attr(755,root,root) %{_bindir}/VBoxManage
671 %attr(755,root,root) %{_bindir}/VBoxSDL
672 %attr(755,root,root) %{_bindir}/VBoxSVC
673 %attr(755,root,root) %{_bindir}/VBoxTunctl
674 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
675 %attr(755,root,root) %{_bindir}/VirtualBox
676 %attr(755,root,root) %{_sbindir}/mount.vdi
677 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
678 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
679 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
680 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
681 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
682 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
683 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
684 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
685 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
686 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
687 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
688 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
689 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
690 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
691 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
692 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
693 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
694 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
695 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
696 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
697 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
699 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
702 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
703 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
704 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
705 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
706 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
707 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
708 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
709 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
710 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
711 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
712 %{_libdir}/VirtualBox/VBoxDD2GC.gc
713 %{_libdir}/VirtualBox/VBoxDDGC.gc
714 %{_libdir}/VirtualBox/VMMGC.gc
715 %{_libdir}/VirtualBox/VBoxDD2R0.r0
716 %{_libdir}/VirtualBox/VBoxDDR0.r0
717 %{_libdir}/VirtualBox/VMMR0.r0
718 %{_libdir}/VirtualBox/EfiThunk
719 %{_libdir}/VirtualBox/VBoxEFI32.fd
720 %{_libdir}/VirtualBox/VBoxEFI64.fd
721 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
722 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
723 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
724 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
725 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
726 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
727 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
728 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
729 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
730 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
731 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
732 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
733 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
734 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
735 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
736 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
737 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
738 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
739 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
740 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
741 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
742 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
743 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
744 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
745 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
746 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
747 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
748 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
749 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
750 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
751 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
752 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
753 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
754 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
755 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
756 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
757 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
758 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
759 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
760 %{_pixmapsdir}/VBox.png
761 %{_desktopdir}/*.desktop
764 %defattr(644,root,root,755)
765 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
768 %defattr(644,root,root,755)
769 # NOTE: unfinished, should contain .desktop files for starting up mouse
770 # integration and other desktop services
771 # NOTE: the filelist is incopmplete too
772 %attr(755,root,root) %{_bindir}/VBoxService
774 %files -n pam-pam_vbox
775 %defattr(644,root,root,755)
776 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
779 %defattr(644,root,root,755)
780 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
782 %files -n xorg-driver-input-vboxmouse
783 %defattr(644,root,root,755)
784 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
786 %files -n xorg-driver-video-vboxvideo
787 %defattr(644,root,root,755)
788 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
789 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
790 # vboxvideo_dri.so deps
791 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
792 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
793 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
794 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
795 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
796 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
800 %files -n kernel%{_alt_kernel}-misc-vboxguest
801 %defattr(644,root,root,755)
802 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
803 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
805 %files -n kernel%{_alt_kernel}-misc-vboxdrv
806 %defattr(644,root,root,755)
807 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
808 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
810 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
811 %defattr(644,root,root,755)
812 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
813 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
815 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
816 %defattr(644,root,root,755)
817 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
818 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
820 %files -n kernel%{_alt_kernel}-misc-vboxsf
821 %defattr(644,root,root,755)
822 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
823 %attr(755,root,root) %{_sbindir}/mount.vboxsf
824 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
826 %files -n kernel%{_alt_kernel}-misc-vboxvideo
827 %defattr(644,root,root,755)
828 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*