4 # - Find how to compile with PLD CFLAGS/CXXFLAGS/LDFLAGS.
6 # - Package utils (and write initscripts ?) for Guest OS.
7 # - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2.
8 # If so check if it is distributable.
11 %bcond_without dist_kernel # without distribution kernel
12 %bcond_without kernel # don't build kernel module
13 %bcond_without userspace # don't build userspace package
14 %bcond_with force_userspace # force userspace build (useful if alt_kernel is set)
18 %undefine with_dist_kernel
20 %if "%{_alt_kernel}" != "%{nil}"
21 %undefine with_userspace
23 %if %{with force_userspace}
24 %define with_userspace 1
26 %if %{without userspace}
27 # nothing to be placed to debuginfo package
28 %define _enable_debug_packages 0
32 %define pname VirtualBox
34 Summary: VirtualBox OSE - x86 hardware virtualizer
35 Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86
36 Name: %{pname}%{_alt_kernel}
40 Group: Applications/Emulators
41 Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
42 # Source0-md5: 0d8c3d2cb4924140b602bfc115c5801f
43 Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
44 # Source1-md5: 89957a63bdd79e15e0b1b8df35acc635
45 Source3: %{pname}-vboxdrv.init
46 Source4: %{pname}-vboxguest.init
47 Source5: %{pname}-vboxnetflt.init
48 Source6: %{pname}-vboxsf.init
49 Source7: %{pname}-vboxnetadp.init
53 Patch0: %{pname}-configure-spaces.patch
54 Patch1: %{pname}-export_modules.patch
55 Patch2: %{pname}-VBoxSysInfo.patch
56 Patch3: %{pname}-warning_workaround.patch
57 Patch4: %{pname}-vnc.patch
58 Patch5: %{pname}-dri.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: docbook-dtd44-xml
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: mkisofs
99 BuildRequires: makeself
100 BuildRequires: pam-devel
101 BuildRequires: pkgconfig
102 BuildRequires: pulseaudio-devel >= 0.9.0
103 BuildRequires: python-devel
104 BuildRequires: python-modules
105 BuildRequires: qt4-build >= 4.2.0
106 BuildRequires: qt4-linguist
107 BuildRequires: sed >= 4.0
108 BuildRequires: texlive-fonts-bitstream
109 BuildRequires: texlive-fonts-other
110 BuildRequires: texlive-fonts-type1-bitstream
111 BuildRequires: texlive-format-pdflatex
113 BuildRequires: xalan-c-devel >= 1.10.0
114 BuildRequires: xerces-c-devel >= 2.6.0
115 BuildRequires: zlib-devel >= 1.2.1
117 %if %{with dist_kernel}
118 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
120 Requires(post,preun): /sbin/chkconfig
121 Requires(postun): /usr/sbin/groupdel
122 Requires(pre): /usr/bin/getgid
123 Requires(pre): /usr/sbin/groupadd
124 Requires: QtCore >= 4.7.0
126 Provides: group(vbox)
127 ExclusiveArch: %{ix86} %{x8664}
128 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
131 %define vbox_platform linux.amd64
133 %define vbox_platform linux.x86
135 %define outdir out/%{vbox_platform}/release/bin
136 %define _sbindir /sbin
139 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
140 hardware. Targeted at server, desktop and embedded use, it is now the
141 only professional-quality virtualization solution that is also Open
144 Some of the features of VirtualBox OSE are:
146 Modularity: VirtualBox OSE has an extremely modular design with
147 well-defined internal programming interfaces and a client/server
148 design. This makes it easy to control it from several interfaces at
149 once: for example, you can start a virtual machine in a typical
150 virtual machine GUI and then control that machine from the command
151 line. VirtualBox OSE also comes with a full Software Development Kit:
152 even though it is Open Source Software, you don't have to hack the
153 source to write a new interface for VirtualBox OSE.
155 Virtual machine descriptions in XML: the configuration settings of
156 virtual machines are stored entirely in XML and are independent of the
157 local machines. Virtual machine definitions can therefore easily be
158 ported to other computers.
160 You should install this package in your Host OS.
162 %description -l pl.UTF-8
163 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
164 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
165 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
166 również jako Otwarte Oprogramowanie.
168 Przykładowe cechy VirtualBoksa:
170 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
171 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
172 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
173 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
174 poziomu interfejsu graficznego, a później kontrolować ją z linii
175 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
176 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
179 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
180 wirtualnych są w całości przechowywane w XML-u i są niezależne od
181 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
182 konfigurację maszyny wirtualnej na inny komputer.
185 Summary: udev rules for VirtualBox OSE kernel modules
186 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
191 udev rules for VirtualBox OSE kernel modules.
193 You should install this package in your Host OS and in Guest OS.
195 %description udev -l pl.UTF-8
196 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
199 Summary: VirtualBox Guest Additions
201 Requires: %{name} = %{version}-%{release}
203 %description additions
204 VirtualBox Guest Additions.
206 This package contains ISO9660 image with drivers for Guest OS.
208 You should install this package in your Host OS.
211 Summary: VirtualBox Guest Additions
213 Suggests: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
214 Suggests: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
215 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
216 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
219 Tools that utilize kernel modules for supporting integration with the
220 Host, including file sharing and tracking of mouse pointer movement
221 and X.org X11 video and mouse driver.
223 You should install this package in your Guest OS.
225 %package -n pam-pam_vbox
226 Summary: PAM module to perform automated guest logons
229 %description -n pam-pam_vbox
230 PAM module (Pluggable Authentication Module) which can be used to
231 perform automated guest logons.
233 %package -n xorg-driver-input-vboxmouse
234 Summary: X.org mouse driver for VirtualBox OSE guest OS
235 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
236 Group: X11/Applications
237 Requires: xorg-xserver-server >= 1.0.99.901
238 %if "%{pld_release}" == "ti"
239 Requires: xorg-xserver-server(xinput-abi) <= 11.0
241 Requires: xorg-xserver-server(xinput-abi) <= 11.0
243 Requires: xorg-xserver-server(xinput-abi) >= 4.0
245 %description -n xorg-driver-input-vboxmouse
246 X.org mouse driver for VirtualBox OSE guest OS.
248 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
249 Sterownik myszy dla systemu gościa w VirtualBoksie.
251 %package -n xorg-driver-video-vboxvideo
252 Summary: X.org video driver for VirtualBox OSE guest OS
253 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
254 Group: X11/Applications
255 Requires: Mesa-dri-driver-swrast
256 Requires: xorg-xserver-libdri >= 1.7.4
257 Requires: xorg-xserver-server >= 1.0.99.901
258 %if "%{pld_release}" == "ti"
259 Requires: xorg-xserver-server(videodrv-abi) <= 8.0
261 Requires: xorg-xserver-server(videodrv-abi) <= 8.0
263 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
265 %description -n xorg-driver-video-vboxvideo
266 X.org video driver for VirtualBox OSE guest OS.
268 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
269 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
271 %package -n kernel%{_alt_kernel}-misc-vboxguest
272 Summary: VirtualBox OSE Guest Additions for Linux Module
273 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
274 Release: %{rel}@%{_kernel_ver_str}
276 Requires(post,postun): /sbin/depmod
277 Requires: dev >= 2.9.0-7
278 %if %{with dist_kernel}
279 %requires_releq_kernel
280 Requires(postun): %releq_kernel
282 Provides: kernel(vboxguest) = %{version}-%{rel}
283 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
284 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
286 %description -n kernel%{_alt_kernel}-misc-vboxguest
287 VirtualBox OSE Guest Additions for Linux Module.
289 You should install this package in your Guest OS.
291 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
292 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
295 %package -n kernel%{_alt_kernel}-misc-vboxdrv
296 Summary: VirtualBox OSE Support Driver
297 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
298 Release: %{rel}@%{_kernel_ver_str}
300 Requires(post,postun): /sbin/depmod
301 Requires: dev >= 2.9.0-7
302 %if %{with dist_kernel}
303 %requires_releq_kernel
304 Requires(postun): %releq_kernel
306 Provides: kernel(vboxdrv) = %{version}-%{rel}
308 %description -n kernel%{_alt_kernel}-misc-vboxdrv
309 VirtualBox OSE Support Driver.
311 You should install this package in your Host OS.
313 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
314 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
317 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
318 Summary: VirtualBox OSE Network Adapter Driver
319 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
320 Release: %{rel}@%{_kernel_ver_str}
322 Requires(post,postun): /sbin/depmod
323 Requires: dev >= 2.9.0-7
324 Requires: kernel%{_alt_kernel}-misc-vboxdrv
325 %if %{with dist_kernel}
326 %requires_releq_kernel
327 Requires(postun): %releq_kernel
329 Provides: kernel(vboxnetflt) = %{version}-%{rel}
331 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
332 VirtualBox OSE Network Adapter Driver.
334 You should install this package in your Host OS.
336 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
337 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
340 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
341 Summary: VirtualBox OSE Network Filter Driver
342 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
343 Release: %{rel}@%{_kernel_ver_str}
345 Requires(post,postun): /sbin/depmod
346 Requires: dev >= 2.9.0-7
347 Requires: kernel%{_alt_kernel}-misc-vboxdrv
348 %if %{with dist_kernel}
349 %requires_releq_kernel
350 Requires(postun): %releq_kernel
352 Provides: kernel(vboxnetflt) = %{version}-%{rel}
354 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
355 VirtualBox OSE Network Filter Driver.
357 You should install this package in your Host OS.
359 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
360 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
361 dla systemu głównego.
363 %package -n kernel%{_alt_kernel}-misc-vboxsf
364 Summary: Host file system access (Shared Folders) for VirtualBox OSE
365 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
366 Release: %{rel}@%{_kernel_ver_str}
368 Requires(post,postun): /sbin/depmod
369 Requires: dev >= 2.9.0-7
370 Requires: kernel%{_alt_kernel}-misc-vboxguest
371 %if %{with dist_kernel}
372 %requires_releq_kernel
373 Requires(postun): %releq_kernel
375 Provides: kernel(vboxsf) = %{version}-%{rel}
376 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
378 %description -n kernel%{_alt_kernel}-misc-vboxsf
379 Host file system access (Shared Folders) for VirtualBox OSE.
381 You should install this package in your Guest OS.
383 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
384 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
385 głównego z poziomu systemu gościa.
387 %package -n kernel%{_alt_kernel}-misc-vboxvideo
388 Summary: DRM support for VirtualBox OSE
389 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
390 Release: %{rel}@%{_kernel_ver_str}
392 Requires(post,postun): /sbin/depmod
393 Requires: dev >= 2.9.0-7
394 %if %{with dist_kernel}
395 %requires_releq_kernel
396 %if "%{rpm_build_macros}" >= "1.531"
397 %requires_releq_kernel -n drm
399 Requires(postun): %releq_kernel
401 Provides: kernel(vboxvideo) = %{version}-%{rel}
403 %description -n kernel%{_alt_kernel}-misc-vboxvideo
404 DRM support for VirtualBox OSE.
406 You should install this package in your Guest OS.
408 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
409 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
412 %setup -q -n %{pname}-%{version}_OSE
420 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
421 -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
423 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
425 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
427 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
428 tar -zxf guest-modules.tar.gz -C GuestDrivers
430 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
431 tar -zxf host-modules.tar.gz -C HostDrivers
435 %if %{with userspace}
436 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
438 --with-gcc="%{__cc}" \
439 --with-g++="%{__cxx}" \
441 --disable-hardening \
445 kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
449 cd PLD-MODULE-BUILD/HostDrivers
450 %build_kernel_modules -m vboxdrv -C vboxdrv
451 %build_kernel_modules -m vboxnetadp -C vboxnetadp
452 %build_kernel_modules -m vboxnetflt -C vboxnetflt
455 %build_kernel_modules -m vboxguest -C vboxguest
456 cp -a vboxguest/Module.symvers vboxsf
457 %build_kernel_modules -m vboxsf -C vboxsf -c
458 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
460 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
464 rm -rf $RPM_BUILD_ROOT
466 %if %{with userspace}
467 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
468 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
469 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
471 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
472 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
474 rm -f $RPM_BUILD_ROOT/VBox.png
477 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
479 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
480 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
481 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
482 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
483 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
486 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
487 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
489 %if "%{pld_release}" == "ti"
490 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_19.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
491 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_19.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
493 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_19.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
494 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_19.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
496 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
497 # xorg other driver versions
498 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
499 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
501 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
502 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
503 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
504 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
505 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
506 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
507 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
509 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
510 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
512 install -d $RPM_BUILD_ROOT/%{_lib}/security
513 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
516 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
517 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
518 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
519 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
521 # IPRT Testcase / Tool - Source Code Massager.
522 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
525 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
529 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
530 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
531 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
532 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
533 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
534 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
535 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
536 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
539 # packaged by kernel part
540 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
544 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
545 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
546 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
547 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
548 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
549 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
550 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
551 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
552 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
553 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
554 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
555 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
557 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
562 rm -rf $RPM_BUILD_ROOT
565 %groupadd -g 221 -r -f vbox
569 You must install vboxdrv kernel module for this software to work:
570 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
572 Additionally you might want to install:
573 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
574 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
576 On Guest Linux system you might want to install:
577 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
578 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
579 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
584 if [ "$1" = "0" ]; then
588 %post -n kernel%{_alt_kernel}-misc-vboxguest
589 %depmod %{_kernel_ver}
590 /sbin/chkconfig --add vboxguest
591 %service vboxguest restart "VirtualBox OSE Guest additions driver"
593 %postun -n kernel%{_alt_kernel}-misc-vboxguest
594 %depmod %{_kernel_ver}
596 %preun -n kernel%{_alt_kernel}-misc-vboxguest
597 if [ "$1" = "0" ]; then
598 %service vboxguest stop
599 /sbin/chkconfig --del vboxguest
602 %post -n kernel%{_alt_kernel}-misc-vboxdrv
603 %depmod %{_kernel_ver}
604 /sbin/chkconfig --add vboxdrv
605 %service vboxdrv restart "VirtualBox OSE Support Driver"
607 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
608 %depmod %{_kernel_ver}
610 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
611 if [ "$1" = "0" ]; then
612 %service vboxdrv stop
613 /sbin/chkconfig --del vboxdrv
616 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
617 %depmod %{_kernel_ver}
618 /sbin/chkconfig --add vboxnetadp
619 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
621 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
622 %depmod %{_kernel_ver}
624 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
625 if [ "$1" = "0" ]; then
626 %service vboxnetadp stop
627 /sbin/chkconfig --del vboxnetadp
630 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
631 %depmod %{_kernel_ver}
632 /sbin/chkconfig --add vboxnetflt
633 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
635 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
636 %depmod %{_kernel_ver}
638 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
639 if [ "$1" = "0" ]; then
640 %service vboxnetflt stop
641 /sbin/chkconfig --del vboxnetflt
644 %post -n kernel%{_alt_kernel}-misc-vboxsf
645 %depmod %{_kernel_ver}
646 /sbin/chkconfig --add vboxsf
647 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
649 %postun -n kernel%{_alt_kernel}-misc-vboxsf
650 %depmod %{_kernel_ver}
652 %preun -n kernel%{_alt_kernel}-misc-vboxsf
653 if [ "$1" = "0" ]; then
655 /sbin/chkconfig --del vboxsf
658 %post -n kernel%{_alt_kernel}-misc-vboxvideo
659 %depmod %{_kernel_ver}
661 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
662 %depmod %{_kernel_ver}
664 %if %{with userspace}
666 %defattr(644,root,root,755)
668 %doc out/linux.amd64/release/bin/UserManual.pdf
671 %doc out/linux.x86/release/bin/UserManual.pdf
673 %dir %{_libdir}/VirtualBox
674 %dir %{_libdir}/VirtualBox/ExtensionPacks
675 %dir %{_libdir}/VirtualBox/additions
676 %dir %{_libdir}/VirtualBox/components
677 %dir %{_libdir}/VirtualBox/icons
678 %dir %{_libdir}/VirtualBox/nls
679 %attr(755,root,root) %{_bindir}/VBoxBFE
680 %attr(755,root,root) %{_bindir}/VBoxHeadless
681 %attr(755,root,root) %{_bindir}/VBoxManage
682 %attr(755,root,root) %{_bindir}/VBoxSDL
683 %attr(755,root,root) %{_bindir}/VBoxSVC
684 %attr(755,root,root) %{_bindir}/VBoxTunctl
685 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
686 %attr(755,root,root) %{_bindir}/VirtualBox
687 %attr(755,root,root) %{_sbindir}/mount.vdi
688 %attr(755,root,root) %{_libdir}/VirtualBox/DBGCPlugInDiggers.so
689 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuth.so
690 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuthSimple.so
691 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
692 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxCreateUSBNode.sh
693 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDbg.so
694 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
695 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
696 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
697 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxExtPackHelperApp
698 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
699 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
701 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
702 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
703 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
704 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
705 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
706 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
707 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
708 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
709 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
711 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
712 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
714 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
715 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
716 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
717 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
718 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
719 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
720 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
721 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
722 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
723 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
724 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
725 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
726 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
727 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
728 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
729 %{_libdir}/VirtualBox/VBoxDD2GC.gc
730 %{_libdir}/VirtualBox/VBoxDDGC.gc
731 %{_libdir}/VirtualBox/VMMGC.gc
732 %{_libdir}/VirtualBox/VBoxDD2R0.r0
733 %{_libdir}/VirtualBox/VBoxDDR0.r0
734 %{_libdir}/VirtualBox/VMMR0.r0
735 %{_libdir}/VirtualBox/EfiThunk
736 %{_libdir}/VirtualBox/VBoxEFI32.fd
737 %{_libdir}/VirtualBox/VBoxEFI64.fd
738 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
739 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
740 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
741 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
742 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
743 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
744 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
745 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
746 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
747 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
748 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
749 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
750 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
751 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
752 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
753 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
754 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
755 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
756 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
757 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
758 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
759 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
760 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
761 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
762 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
763 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
764 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
765 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
766 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
767 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
768 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
769 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
770 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
771 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
772 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
773 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
774 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
775 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
776 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
777 %{_pixmapsdir}/VBox.png
778 %{_desktopdir}/*.desktop
779 %{_libdir}/VirtualBox/icons/*/virtualbox-ova.png
780 %{_libdir}/VirtualBox/icons/*/virtualbox-ovf.png
781 %{_libdir}/VirtualBox/icons/*/virtualbox-vbox-extpack.png
782 %{_libdir}/VirtualBox/icons/*/virtualbox-vbox.png
783 %{_libdir}/VirtualBox/virtualbox.xml
786 %defattr(644,root,root,755)
787 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
790 %defattr(644,root,root,755)
791 # NOTE: unfinished, should contain .desktop files for starting up mouse
792 # integration and other desktop services
793 # NOTE: the filelist is incopmplete too
794 %attr(755,root,root) %{_bindir}/VBoxService
796 %attr(755,root,root) %{_libdir}/VirtualBox/additions/autorun.sh
797 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd
798 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-service
799 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-x11
801 %files -n pam-pam_vbox
802 %defattr(644,root,root,755)
803 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
806 %defattr(644,root,root,755)
807 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
809 %files -n xorg-driver-input-vboxmouse
810 %defattr(644,root,root,755)
811 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
813 %files -n xorg-driver-video-vboxvideo
814 %defattr(644,root,root,755)
815 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
816 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
817 # vboxvideo_dri.so deps
818 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
819 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
820 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
821 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
822 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
823 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
827 %files -n kernel%{_alt_kernel}-misc-vboxguest
828 %defattr(644,root,root,755)
829 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
830 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
832 %files -n kernel%{_alt_kernel}-misc-vboxdrv
833 %defattr(644,root,root,755)
834 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
835 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
837 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
838 %defattr(644,root,root,755)
839 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
840 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
842 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
843 %defattr(644,root,root,755)
844 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
845 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
847 %files -n kernel%{_alt_kernel}-misc-vboxsf
848 %defattr(644,root,root,755)
849 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
850 %attr(755,root,root) %{_sbindir}/mount.vboxsf
851 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
853 %files -n kernel%{_alt_kernel}-misc-vboxvideo
854 %defattr(644,root,root,755)
855 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*