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 doc # don't build the documentation
12 %bcond_without dist_kernel # without distribution kernel
13 %bcond_without kernel # don't build kernel module
14 %bcond_without userspace # don't build userspace package
15 %bcond_with force_userspace # force userspace build (useful if alt_kernel is set)
19 %undefine with_dist_kernel
21 %if "%{_alt_kernel}" != "%{nil}"
22 %undefine with_userspace
24 %if %{with force_userspace}
25 %define with_userspace 1
27 %if %{without userspace}
28 # nothing to be placed to debuginfo package
29 %define _enable_debug_packages 0
33 %define pname VirtualBox
35 Summary: VirtualBox OSE - x86 hardware virtualizer
36 Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86
37 Name: %{pname}%{_alt_kernel}
41 Group: Applications/Emulators
42 Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
43 # Source0-md5: b4770ca14d1a8cbad9b3eb0e0028ff4b
44 Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
45 # Source1-md5: 88604a0e94bf1b8c0d0f18fe4314cfdf
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}-dri.patch
60 Patch6: %{pname}-vboxnetflt-no-qdisc.patch
62 Patch7: 16-no-update.patch
63 Patch8: 18-system-xorg.patch
64 Patch9: 22-no-static-libstdcpp.patch
66 Patch10: %{pname}-gcc.patch
67 URL: http://www.virtualbox.org/
68 BuildRequires: rpmbuild(macros) >= 1.535
71 BuildRequires: gcc-multilib
72 BuildRequires: glibc-devel(i686)
73 BuildRequires: libstdc++-multilib-devel
74 BuildRequires: libstdc++-multilib-static
76 %if "%{pld_release}" == "ac"
77 BuildRequires: XFree86-devel
79 BuildRequires: xorg-lib-libXcomposite-devel
80 BuildRequires: xorg-lib-libXcursor-devel
81 BuildRequires: xorg-lib-libXmu-devel
82 BuildRequires: xorg-xserver-server-devel
84 BuildRequires: OpenGL-GLU-devel
85 BuildRequires: OpenGL-devel
86 BuildRequires: QtGui-devel
87 BuildRequires: QtNetwork-devel
88 BuildRequires: QtOpenGL-devel
89 BuildRequires: SDL-devel >= 1.2.7
91 BuildRequires: alsa-lib-devel >= 1.0.6
95 BuildRequires: curl-devel
96 %{?with_doc:BuildRequires: docbook-dtd44-xml}
97 BuildRequires: gcc >= 5:3.2.3
98 BuildRequires: libIDL-devel
99 BuildRequires: libcap-static
100 BuildRequires: libdrm-devel
101 BuildRequires: libpng-devel >= 1.2.5
102 BuildRequires: libstdc++-devel >= 5:3.2.3
103 BuildRequires: libstdc++-static >= 5:3.2.3
104 BuildRequires: libuuid-devel
105 BuildRequires: libvncserver-devel
106 BuildRequires: libxml2-devel >= 2.6.26
107 BuildRequires: libxslt-devel >= 1.1.17
108 BuildRequires: libxslt-progs >= 1.1.17
109 BuildRequires: mkisofs
110 BuildRequires: makeself
111 BuildRequires: pam-devel
112 BuildRequires: pixman-devel
113 BuildRequires: pkgconfig
114 BuildRequires: pulseaudio-devel >= 0.9.0
115 BuildRequires: python-devel
116 BuildRequires: python-modules
117 BuildRequires: qt4-build >= 4.2.0
118 BuildRequires: qt4-linguist
119 BuildRequires: sed >= 4.0
121 BuildRequires: texlive-fonts-bitstream
122 BuildRequires: texlive-fonts-other
123 BuildRequires: texlive-fonts-type1-bitstream
124 BuildRequires: texlive-format-pdflatex
125 BuildRequires: texlive-latex-ucs
128 BuildRequires: xalan-c-devel >= 1.10.0
129 BuildRequires: xerces-c-devel >= 2.6.0
130 BuildRequires: zlib-devel >= 1.2.1
132 %if %{with dist_kernel}
133 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
135 Requires(post,preun): /sbin/chkconfig
136 Requires(postun): /usr/sbin/groupdel
137 Requires(pre): /usr/bin/getgid
138 Requires(pre): /usr/sbin/groupadd
139 Requires: QtCore >= 4.7.0
141 Provides: group(vbox)
142 ExclusiveArch: %{ix86} %{x8664}
143 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
146 %define vbox_platform linux.amd64
148 %define vbox_platform linux.x86
150 %define outdir out/%{vbox_platform}/release/bin
151 %define _sbindir /sbin
154 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
155 hardware. Targeted at server, desktop and embedded use, it is now the
156 only professional-quality virtualization solution that is also Open
159 Some of the features of VirtualBox OSE are:
161 Modularity: VirtualBox OSE has an extremely modular design with
162 well-defined internal programming interfaces and a client/server
163 design. This makes it easy to control it from several interfaces at
164 once: for example, you can start a virtual machine in a typical
165 virtual machine GUI and then control that machine from the command
166 line. VirtualBox OSE also comes with a full Software Development Kit:
167 even though it is Open Source Software, you don't have to hack the
168 source to write a new interface for VirtualBox OSE.
170 Virtual machine descriptions in XML: the configuration settings of
171 virtual machines are stored entirely in XML and are independent of the
172 local machines. Virtual machine definitions can therefore easily be
173 ported to other computers.
175 You should install this package in your Host OS.
177 %description -l pl.UTF-8
178 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
179 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
180 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
181 również jako Otwarte Oprogramowanie.
183 Przykładowe cechy VirtualBoksa:
185 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
186 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
187 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
188 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
189 poziomu interfejsu graficznego, a później kontrolować ją z linii
190 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
191 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
194 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
195 wirtualnych są w całości przechowywane w XML-u i są niezależne od
196 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
197 konfigurację maszyny wirtualnej na inny komputer.
200 Summary: udev rules for VirtualBox OSE kernel modules
201 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
206 udev rules for VirtualBox OSE kernel modules.
208 You should install this package in your Host OS and in Guest OS.
210 %description udev -l pl.UTF-8
211 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
214 Summary: VirtualBox Guest Additions
216 Requires: %{name} = %{version}-%{release}
218 %description additions
219 VirtualBox Guest Additions.
221 This package contains ISO9660 image with drivers for Guest OS.
223 You should install this package in your Host OS.
226 Summary: VirtualBox Guest Additions
228 Suggests: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
229 Suggests: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
230 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
231 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
234 Tools that utilize kernel modules for supporting integration with the
235 Host, including file sharing and tracking of mouse pointer movement
236 and X.org X11 video and mouse driver.
238 You should install this package in your Guest OS.
240 %package -n pam-pam_vbox
241 Summary: PAM module to perform automated guest logons
244 %description -n pam-pam_vbox
245 PAM module (Pluggable Authentication Module) which can be used to
246 perform automated guest logons.
248 %package -n xorg-driver-input-vboxmouse
249 Summary: X.org mouse driver for VirtualBox OSE guest OS
250 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
251 Group: X11/Applications
252 Requires: xorg-xserver-server >= 1.0.99.901
253 Requires: xorg-xserver-server(xinput-abi) <= 12.2
254 Requires: xorg-xserver-server(xinput-abi) >= 4.0
256 %description -n xorg-driver-input-vboxmouse
257 X.org mouse driver for VirtualBox OSE guest OS.
259 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
260 Sterownik myszy dla systemu gościa w VirtualBoksie.
262 %package -n xorg-driver-video-vboxvideo
263 Summary: X.org video driver for VirtualBox OSE guest OS
264 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
265 Group: X11/Applications
266 Requires: Mesa-dri-driver-swrast
267 Requires: xorg-xserver-libdri >= 1.7.4
268 Requires: xorg-xserver-server >= 1.0.99.901
269 Requires: xorg-xserver-server(videodrv-abi) <= 10.0
270 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
272 %description -n xorg-driver-video-vboxvideo
273 X.org video driver for VirtualBox OSE guest OS.
275 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
276 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
278 %package -n kernel%{_alt_kernel}-misc-vboxguest
279 Summary: VirtualBox OSE Guest Additions for Linux Module
280 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
281 Release: %{rel}@%{_kernel_ver_str}
283 Requires(post,postun): /sbin/depmod
284 Requires: dev >= 2.9.0-7
285 %if %{with dist_kernel}
286 %requires_releq_kernel
287 Requires(postun): %releq_kernel
289 Provides: kernel(vboxguest) = %{version}-%{rel}
290 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
291 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
293 %description -n kernel%{_alt_kernel}-misc-vboxguest
294 VirtualBox OSE Guest Additions for Linux Module.
296 You should install this package in your Guest OS.
298 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
299 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
302 %package -n kernel%{_alt_kernel}-misc-vboxdrv
303 Summary: VirtualBox OSE Support Driver
304 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
305 Release: %{rel}@%{_kernel_ver_str}
307 Requires(post,postun): /sbin/depmod
308 Requires: dev >= 2.9.0-7
309 %if %{with dist_kernel}
310 %requires_releq_kernel
311 Requires(postun): %releq_kernel
313 Provides: kernel(vboxdrv) = %{version}-%{rel}
315 %description -n kernel%{_alt_kernel}-misc-vboxdrv
316 VirtualBox OSE Support Driver.
318 You should install this package in your Host OS.
320 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
321 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
324 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
325 Summary: VirtualBox OSE Network Adapter Driver
326 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
327 Release: %{rel}@%{_kernel_ver_str}
329 Requires(post,postun): /sbin/depmod
330 Requires: dev >= 2.9.0-7
331 Requires: kernel%{_alt_kernel}-misc-vboxdrv
332 %if %{with dist_kernel}
333 %requires_releq_kernel
334 Requires(postun): %releq_kernel
336 Provides: kernel(vboxnetflt) = %{version}-%{rel}
338 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
339 VirtualBox OSE Network Adapter Driver.
341 You should install this package in your Host OS.
343 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
344 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
347 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
348 Summary: VirtualBox OSE Network Filter Driver
349 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
350 Release: %{rel}@%{_kernel_ver_str}
352 Requires(post,postun): /sbin/depmod
353 Requires: dev >= 2.9.0-7
354 Requires: kernel%{_alt_kernel}-misc-vboxdrv
355 %if %{with dist_kernel}
356 %requires_releq_kernel
357 Requires(postun): %releq_kernel
359 Provides: kernel(vboxnetflt) = %{version}-%{rel}
361 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
362 VirtualBox OSE Network Filter Driver.
364 You should install this package in your Host OS.
366 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
367 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
368 dla systemu głównego.
370 %package -n kernel%{_alt_kernel}-misc-vboxsf
371 Summary: Host file system access (Shared Folders) for VirtualBox OSE
372 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
373 Release: %{rel}@%{_kernel_ver_str}
375 Requires(post,postun): /sbin/depmod
376 Requires: dev >= 2.9.0-7
377 Requires: kernel%{_alt_kernel}-misc-vboxguest
378 %if %{with dist_kernel}
379 %requires_releq_kernel
380 Requires(postun): %releq_kernel
382 Provides: kernel(vboxsf) = %{version}-%{rel}
383 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
385 %description -n kernel%{_alt_kernel}-misc-vboxsf
386 Host file system access (Shared Folders) for VirtualBox OSE.
388 You should install this package in your Guest OS.
390 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
391 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
392 głównego z poziomu systemu gościa.
394 %package -n kernel%{_alt_kernel}-misc-vboxvideo
395 Summary: DRM support for VirtualBox OSE
396 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
397 Release: %{rel}@%{_kernel_ver_str}
399 Requires(post,postun): /sbin/depmod
400 Requires: dev >= 2.9.0-7
401 %if %{with dist_kernel}
402 %requires_releq_kernel
403 %if "%{rpm_build_macros}" >= "1.531"
404 %requires_releq_kernel -n drm
406 Requires(postun): %releq_kernel
408 Provides: kernel(vboxvideo) = %{version}-%{rel}
410 %description -n kernel%{_alt_kernel}-misc-vboxvideo
411 DRM support for VirtualBox OSE.
413 You should install this package in your Guest OS.
415 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
416 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
419 %setup -q -n %{pname}-%{version}_OSE
427 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
428 -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
430 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
432 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
434 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
435 tar -zxf guest-modules.tar.gz -C GuestDrivers
437 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
438 tar -zxf host-modules.tar.gz -C HostDrivers
447 %if %{with userspace}
448 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
450 --with-gcc="%{__cc}" \
451 --with-g++="%{__cxx}" \
452 %{!?with_doc:--disable-docs} \
454 --disable-hardening \
459 %{?with_verbose:KBUILD_VERBOSE=3} \
461 XSERVER_VERSION="$(rpm -q --queryformat '%{VERSION}\n' xorg-xserver-server-devel | awk -F. ' { print $1 $2 } ' 2> /dev/null || echo ERROR)"
465 cd PLD-MODULE-BUILD/HostDrivers
466 %build_kernel_modules -m vboxdrv -C vboxdrv
467 %build_kernel_modules -m vboxnetadp -C vboxnetadp
468 %build_kernel_modules -m vboxnetflt -C vboxnetflt
471 %build_kernel_modules -m vboxguest -C vboxguest
472 cp -a vboxguest/Module.symvers vboxsf
473 %build_kernel_modules -m vboxsf -C vboxsf -c
474 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
476 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
480 rm -rf $RPM_BUILD_ROOT
482 %if %{with userspace}
483 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
484 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
485 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
487 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
488 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
490 rm -f $RPM_BUILD_ROOT/VBox.png
493 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
495 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
496 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
497 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
498 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
499 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
502 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
503 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
505 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
506 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
507 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
508 # xorg other driver versions
509 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
510 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
512 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
513 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
514 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
515 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
516 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
517 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
518 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
520 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
521 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
523 install -d $RPM_BUILD_ROOT/%{_lib}/security
524 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
527 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
528 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
529 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
530 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
532 # IPRT Testcase / Tool - Source Code Massager.
533 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
536 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
540 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
541 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
542 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
543 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
544 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
545 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
546 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
547 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
550 # packaged by kernel part
551 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
555 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
556 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
557 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
558 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
559 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
560 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
561 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
562 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
563 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
564 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
565 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
566 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
568 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
573 rm -rf $RPM_BUILD_ROOT
576 %groupadd -g 221 -r -f vbox
580 You must install vboxdrv kernel module for this software to work:
581 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
583 Additionally you might want to install:
584 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
585 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
587 On Guest Linux system you might want to install:
588 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
589 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
590 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
595 if [ "$1" = "0" ]; then
599 %post -n kernel%{_alt_kernel}-misc-vboxguest
600 %depmod %{_kernel_ver}
601 /sbin/chkconfig --add vboxguest
602 %service vboxguest restart "VirtualBox OSE Guest additions driver"
604 %postun -n kernel%{_alt_kernel}-misc-vboxguest
605 %depmod %{_kernel_ver}
607 %preun -n kernel%{_alt_kernel}-misc-vboxguest
608 if [ "$1" = "0" ]; then
609 %service vboxguest stop
610 /sbin/chkconfig --del vboxguest
613 %post -n kernel%{_alt_kernel}-misc-vboxdrv
614 %depmod %{_kernel_ver}
615 /sbin/chkconfig --add vboxdrv
616 %service vboxdrv restart "VirtualBox OSE Support Driver"
618 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
619 %depmod %{_kernel_ver}
621 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
622 if [ "$1" = "0" ]; then
623 %service vboxdrv stop
624 /sbin/chkconfig --del vboxdrv
627 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
628 %depmod %{_kernel_ver}
629 /sbin/chkconfig --add vboxnetadp
630 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
632 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
633 %depmod %{_kernel_ver}
635 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
636 if [ "$1" = "0" ]; then
637 %service vboxnetadp stop
638 /sbin/chkconfig --del vboxnetadp
641 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
642 %depmod %{_kernel_ver}
643 /sbin/chkconfig --add vboxnetflt
644 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
646 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
647 %depmod %{_kernel_ver}
649 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
650 if [ "$1" = "0" ]; then
651 %service vboxnetflt stop
652 /sbin/chkconfig --del vboxnetflt
655 %post -n kernel%{_alt_kernel}-misc-vboxsf
656 %depmod %{_kernel_ver}
657 /sbin/chkconfig --add vboxsf
658 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
660 %postun -n kernel%{_alt_kernel}-misc-vboxsf
661 %depmod %{_kernel_ver}
663 %preun -n kernel%{_alt_kernel}-misc-vboxsf
664 if [ "$1" = "0" ]; then
666 /sbin/chkconfig --del vboxsf
669 %post -n kernel%{_alt_kernel}-misc-vboxvideo
670 %depmod %{_kernel_ver}
672 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
673 %depmod %{_kernel_ver}
675 %if %{with userspace}
677 %defattr(644,root,root,755)
678 %{?with_doc:%doc %{outdir}/UserManual.pdf}
679 %dir %{_libdir}/VirtualBox
680 %dir %{_libdir}/VirtualBox/ExtensionPacks
681 %dir %{_libdir}/VirtualBox/additions
682 %dir %{_libdir}/VirtualBox/components
683 %dir %{_libdir}/VirtualBox/icons
684 %dir %{_libdir}/VirtualBox/icons/*x*
685 %dir %{_libdir}/VirtualBox/nls
686 %attr(755,root,root) %{_bindir}/VBoxBFE
687 %attr(755,root,root) %{_bindir}/VBoxHeadless
688 %attr(755,root,root) %{_bindir}/VBoxManage
689 %attr(755,root,root) %{_bindir}/VBoxSDL
690 %attr(755,root,root) %{_bindir}/VBoxSVC
691 %attr(755,root,root) %{_bindir}/VBoxTunctl
692 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
693 %attr(755,root,root) %{_bindir}/VirtualBox
694 %attr(755,root,root) %{_sbindir}/mount.vdi
695 %attr(755,root,root) %{_libdir}/VirtualBox/DBGCPlugInDiggers.so
696 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuth.so
697 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuthSimple.so
698 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
699 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxCreateUSBNode.sh
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDbg.so
701 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
702 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
703 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
704 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxExtPackHelperApp
705 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
706 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
707 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
708 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
709 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
710 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
711 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
712 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
713 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
714 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
715 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
716 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
718 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
719 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
721 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
722 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
723 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
724 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
725 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
726 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
727 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
728 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
729 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
730 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
731 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
732 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
733 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
734 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
735 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
736 %{_libdir}/VirtualBox/VBoxDD2GC.gc
737 %{_libdir}/VirtualBox/VBoxDDGC.gc
738 %{_libdir}/VirtualBox/VMMGC.gc
739 %{_libdir}/VirtualBox/VBoxDD2R0.r0
740 %{_libdir}/VirtualBox/VBoxDDR0.r0
741 %{_libdir}/VirtualBox/VMMR0.r0
742 %{_libdir}/VirtualBox/EfiThunk
743 %{_libdir}/VirtualBox/VBoxEFI32.fd
744 %{_libdir}/VirtualBox/VBoxEFI64.fd
745 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
746 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
747 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
748 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
749 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
750 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
751 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
752 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
753 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
754 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
755 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
756 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
757 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
758 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
759 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
760 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
761 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
762 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
763 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
764 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
765 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
766 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
767 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
768 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
769 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
770 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
771 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
772 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
773 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
774 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
775 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
776 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
777 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
778 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
779 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
780 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
781 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
782 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
783 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
784 %{_pixmapsdir}/VBox.png
785 %{_desktopdir}/*.desktop
786 %{_libdir}/VirtualBox/icons/*/virtualbox-ova.png
787 %{_libdir}/VirtualBox/icons/*/virtualbox-ovf.png
788 %{_libdir}/VirtualBox/icons/*/virtualbox-vbox-extpack.png
789 %{_libdir}/VirtualBox/icons/*/virtualbox-vbox.png
790 %{_libdir}/VirtualBox/virtualbox.xml
793 %defattr(644,root,root,755)
794 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
797 %defattr(644,root,root,755)
798 # NOTE: unfinished, should contain .desktop files for starting up mouse
799 # integration and other desktop services
800 # NOTE: the filelist is incopmplete too
801 %attr(755,root,root) %{_bindir}/VBoxService
803 %attr(755,root,root) %{_libdir}/VirtualBox/additions/autorun.sh
804 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd
805 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-service
806 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-x11
808 %files -n pam-pam_vbox
809 %defattr(644,root,root,755)
810 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
813 %defattr(644,root,root,755)
814 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
816 %files -n xorg-driver-input-vboxmouse
817 %defattr(644,root,root,755)
818 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
820 %files -n xorg-driver-video-vboxvideo
821 %defattr(644,root,root,755)
822 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
823 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
824 # vboxvideo_dri.so deps
825 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
826 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
827 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
828 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
829 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
830 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
834 %files -n kernel%{_alt_kernel}-misc-vboxguest
835 %defattr(644,root,root,755)
836 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
837 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
839 %files -n kernel%{_alt_kernel}-misc-vboxdrv
840 %defattr(644,root,root,755)
841 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
842 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
844 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
845 %defattr(644,root,root,755)
846 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
847 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
849 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
850 %defattr(644,root,root,755)
851 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
852 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
854 %files -n kernel%{_alt_kernel}-misc-vboxsf
855 %defattr(644,root,root,755)
856 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
857 %attr(755,root,root) %{_sbindir}/mount.vboxsf
858 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
860 %files -n kernel%{_alt_kernel}-misc-vboxvideo
861 %defattr(644,root,root,755)
862 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*