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 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: libxml2-devel >= 2.6.26
94 BuildRequires: libxslt-devel >= 1.1.17
95 BuildRequires: libxslt-progs >= 1.1.17
96 BuildRequires: pam-devel
97 BuildRequires: pkgconfig
98 BuildRequires: pulseaudio-devel >= 0.9.0
99 BuildRequires: python-devel
100 BuildRequires: python-modules
101 BuildRequires: qt4-build >= 4.2.0
102 BuildRequires: qt4-linguist
103 BuildRequires: sed >= 4.0
105 BuildRequires: xalan-c-devel >= 1.10.0
106 BuildRequires: xerces-c-devel >= 2.6.0
107 BuildRequires: zlib-devel >= 1.2.1
109 %if %{with dist_kernel}
110 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
112 Requires(post,preun): /sbin/chkconfig
113 Requires(postun): /usr/sbin/groupdel
114 Requires(pre): /usr/bin/getgid
115 Requires(pre): /usr/sbin/groupadd
116 Requires: QtCore >= 4.6.1
118 Provides: group(vbox)
119 ExclusiveArch: %{ix86} %{x8664}
120 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
123 %define vbox_platform linux.amd64
125 %define vbox_platform linux.x86
127 %define outdir out/%{vbox_platform}/release/bin
128 %define _sbindir /sbin
131 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
132 hardware. Targeted at server, desktop and embedded use, it is now the
133 only professional-quality virtualization solution that is also Open
136 Some of the features of VirtualBox OSE are:
138 Modularity: VirtualBox OSE has an extremely modular design with
139 well-defined internal programming interfaces and a client/server
140 design. This makes it easy to control it from several interfaces at
141 once: for example, you can start a virtual machine in a typical
142 virtual machine GUI and then control that machine from the command
143 line. VirtualBox OSE also comes with a full Software Development Kit:
144 even though it is Open Source Software, you don't have to hack the
145 source to write a new interface for VirtualBox OSE.
147 Virtual machine descriptions in XML: the configuration settings of
148 virtual machines are stored entirely in XML and are independent of the
149 local machines. Virtual machine definitions can therefore easily be
150 ported to other computers.
152 You should install this package in your Host OS.
154 %description -l pl.UTF-8
155 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
156 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
157 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
158 również jako Otwarte Oprogramowanie.
160 Przykładowe cechy VirtualBoksa:
162 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
163 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
164 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
165 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
166 poziomu interfejsu graficznego, a później kontrolować ją z linii
167 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
168 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
171 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
172 wirtualnych są w całości przechowywane w XML-u i są niezależne od
173 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
174 konfigurację maszyny wirtualnej na inny komputer.
177 Summary: udev rules for VirtualBox OSE kernel modules
178 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.
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 Requires: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{release}
207 Requires: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{release}
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) <= 9.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) <= 7.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}
429 --with-gcc="%{__cc}" \
430 --with-g++="%{__cxx}" \
431 --disable-hardening \
435 kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
439 cd PLD-MODULE-BUILD/HostDrivers
440 %build_kernel_modules -m vboxdrv -C vboxdrv
441 %build_kernel_modules -m vboxnetadp -C vboxnetadp
442 %build_kernel_modules -m vboxnetflt -C vboxnetflt
445 %build_kernel_modules -m vboxguest -C vboxguest
446 cp -a vboxguest/Module.symvers vboxsf
447 %build_kernel_modules -m vboxsf -C vboxsf -c
448 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
450 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c -o mount.vboxsf
454 rm -rf $RPM_BUILD_ROOT
456 %if %{with userspace}
458 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
459 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
461 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
462 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
464 rm -f $RPM_BUILD_ROOT/VBox.png
467 cp -a$l %{outdir} $RPM_BUILD_ROOT%{_libdir}/%{pname}
469 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
470 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
471 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
472 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
473 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
476 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
477 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
479 %if "%{pld_release}" == "ti"
480 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_17.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
481 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_17.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
483 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_18.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
484 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_18.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
486 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
487 # xorg other driver versions
488 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
489 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
491 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
492 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
493 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
494 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
495 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
496 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
497 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
499 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
500 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
502 install -d $RPM_BUILD_ROOT/%{_lib}/security
503 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
506 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
507 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
508 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
509 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
511 # IPRT Testcase / Tool - Source Code Massager.
512 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
515 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
519 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
520 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
521 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
522 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
523 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
524 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
525 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
526 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
529 # packaged by kernel part
530 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
534 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
535 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
536 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
537 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
538 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
539 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
540 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
541 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
542 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
543 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
544 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
545 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
547 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
552 rm -rf $RPM_BUILD_ROOT
555 %groupadd -g 221 -r -f vbox
559 You must install vboxdrv kernel module for this software to work:
560 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
562 Additionally you might want to install:
563 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
564 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
566 On Guest Linux system you might want to install:
567 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
568 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
569 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
574 if [ "$1" = "0" ]; then
578 %post -n kernel%{_alt_kernel}-misc-vboxguest
579 %depmod %{_kernel_ver}
580 /sbin/chkconfig --add vboxguest
581 %service vboxguest restart "VirtualBox OSE Guest additions driver"
583 %postun -n kernel%{_alt_kernel}-misc-vboxguest
584 %depmod %{_kernel_ver}
586 %preun -n kernel%{_alt_kernel}-misc-vboxguest
587 if [ "$1" = "0" ]; then
588 %service vboxguest stop
589 /sbin/chkconfig --del vboxguest
592 %post -n kernel%{_alt_kernel}-misc-vboxdrv
593 %depmod %{_kernel_ver}
594 /sbin/chkconfig --add vboxdrv
595 %service vboxdrv restart "VirtualBox OSE Support Driver"
597 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
598 %depmod %{_kernel_ver}
600 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
601 if [ "$1" = "0" ]; then
602 %service vboxdrv stop
603 /sbin/chkconfig --del vboxdrv
606 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
607 %depmod %{_kernel_ver}
608 /sbin/chkconfig --add vboxnetadp
609 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
611 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
612 %depmod %{_kernel_ver}
614 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
615 if [ "$1" = "0" ]; then
616 %service vboxnetadp stop
617 /sbin/chkconfig --del vboxnetadp
620 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
621 %depmod %{_kernel_ver}
622 /sbin/chkconfig --add vboxnetflt
623 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
625 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
626 %depmod %{_kernel_ver}
628 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
629 if [ "$1" = "0" ]; then
630 %service vboxnetflt stop
631 /sbin/chkconfig --del vboxnetflt
634 %post -n kernel%{_alt_kernel}-misc-vboxsf
635 %depmod %{_kernel_ver}
636 /sbin/chkconfig --add vboxsf
637 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
639 %postun -n kernel%{_alt_kernel}-misc-vboxsf
640 %depmod %{_kernel_ver}
642 %preun -n kernel%{_alt_kernel}-misc-vboxsf
643 if [ "$1" = "0" ]; then
645 /sbin/chkconfig --del vboxsf
648 %post -n kernel%{_alt_kernel}-misc-vboxvideo
649 %depmod %{_kernel_ver}
651 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
652 %depmod %{_kernel_ver}
654 %if %{with userspace}
656 %defattr(644,root,root,755)
658 %dir %{_libdir}/VirtualBox
659 %dir %{_libdir}/VirtualBox/additions
660 %dir %{_libdir}/VirtualBox/components
661 %dir %{_libdir}/VirtualBox/nls
662 %attr(755,root,root) %{_bindir}/VBoxBFE
663 %attr(755,root,root) %{_bindir}/VBoxHeadless
664 %attr(755,root,root) %{_bindir}/VBoxManage
665 %attr(755,root,root) %{_bindir}/VBoxSDL
666 %attr(755,root,root) %{_bindir}/VBoxSVC
667 %attr(755,root,root) %{_bindir}/VBoxTunctl
668 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
669 %attr(755,root,root) %{_bindir}/VirtualBox
670 %attr(755,root,root) %{_sbindir}/mount.vdi
671 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
672 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
673 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
674 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
675 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
676 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
677 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
678 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
679 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
680 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
681 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
682 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
683 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
684 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
685 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
686 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
687 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
688 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
689 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
690 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
691 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
693 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
694 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
696 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
697 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
698 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
699 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
701 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
702 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
703 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
704 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
705 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
706 %{_libdir}/VirtualBox/VBoxDD2GC.gc
707 %{_libdir}/VirtualBox/VBoxDDGC.gc
708 %{_libdir}/VirtualBox/VMMGC.gc
709 %{_libdir}/VirtualBox/VBoxDD2R0.r0
710 %{_libdir}/VirtualBox/VBoxDDR0.r0
711 %{_libdir}/VirtualBox/VMMR0.r0
712 %{_libdir}/VirtualBox/EfiThunk
713 %{_libdir}/VirtualBox/VBoxEFI32.fd
714 %{_libdir}/VirtualBox/VBoxEFI64.fd
715 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
716 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
717 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
718 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
719 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
720 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
721 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
722 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
723 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
724 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
725 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
726 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
727 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
728 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
729 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
730 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
731 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
732 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
733 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
734 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
735 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
736 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
737 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
738 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
739 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
740 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
741 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
742 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
743 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
744 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
745 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
746 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
747 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
748 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
749 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
750 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
751 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
752 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
753 %{_pixmapsdir}/VBox.png
754 %{_desktopdir}/*.desktop
757 %defattr(644,root,root,755)
758 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
761 %defattr(644,root,root,755)
762 %attr(755,root,root) %{_bindir}/VBoxService
764 %files -n pam-pam_vbox
765 %defattr(644,root,root,755)
766 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
769 %defattr(644,root,root,755)
770 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
772 %files -n xorg-driver-input-vboxmouse
773 %defattr(644,root,root,755)
774 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
776 %files -n xorg-driver-video-vboxvideo
777 %defattr(644,root,root,755)
778 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
779 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
780 # vboxvideo_dri.so deps
781 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
782 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
783 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
784 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
785 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
786 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
790 %files -n kernel%{_alt_kernel}-misc-vboxguest
791 %defattr(644,root,root,755)
792 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
793 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
795 %files -n kernel%{_alt_kernel}-misc-vboxdrv
796 %defattr(644,root,root,755)
797 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
798 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
800 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
801 %defattr(644,root,root,755)
802 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
803 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
805 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
806 %defattr(644,root,root,755)
807 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
808 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
810 %files -n kernel%{_alt_kernel}-misc-vboxsf
811 %defattr(644,root,root,755)
812 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
813 %attr(755,root,root) %{_sbindir}/mount.vboxsf
814 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
816 %files -n kernel%{_alt_kernel}-misc-vboxvideo
817 %defattr(644,root,root,755)
818 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*