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.
9 # - resolve mess with subpackages?
10 # - addtions: iso (containing additions/*.iso)
11 # - guest: to be installed to guests (deps on x11 drivers)
14 %bcond_without doc # don't build the documentation
15 %bcond_without dist_kernel # without distribution kernel
16 %bcond_without kernel # don't build kernel module
17 %bcond_without userspace # don't build userspace package
18 %bcond_with force_userspace # force userspace build (useful if alt_kernel is set)
22 %undefine with_dist_kernel
24 %if "%{_alt_kernel}" != "%{nil}"
25 %undefine with_userspace
27 %if %{with force_userspace}
28 %define with_userspace 1
30 %if %{without userspace}
31 # nothing to be placed to debuginfo package
32 %define _enable_debug_packages 0
36 %define pname VirtualBox
38 Summary: VirtualBox OSE - x86 hardware virtualizer
39 Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86
40 Name: %{pname}%{_alt_kernel}
44 Group: Applications/Emulators
45 Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
46 # Source0-md5: a3e81289f2357fcf4bbe3e77805f38b6
47 Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
48 # Source1-md5: 598ca9b231c1f1ff7817aa76c80f55d6
49 Source3: %{pname}-vboxdrv.init
50 Source4: %{pname}-vboxguest.init
51 Source5: %{pname}-vboxnetflt.init
52 Source6: %{pname}-vboxsf.init
53 Source7: %{pname}-vboxnetadp.init
57 Patch0: %{pname}-configure-spaces.patch
58 Patch1: %{pname}-export_modules.patch
59 Patch2: %{pname}-VBoxSysInfo.patch
60 Patch3: %{pname}-warning_workaround.patch
61 Patch4: %{pname}-vnc.patch
62 Patch5: %{pname}-dri.patch
63 Patch6: %{pname}-vboxnetflt-no-qdisc.patch
65 Patch7: 16-no-update.patch
66 Patch8: 18-system-xorg.patch
67 Patch9: 22-no-static-libstdcpp.patch
69 URL: http://www.virtualbox.org/
70 BuildRequires: rpmbuild(macros) >= 1.535
73 BuildRequires: gcc-multilib
74 BuildRequires: glibc-devel(i686)
75 BuildRequires: libstdc++-multilib-devel
76 BuildRequires: libstdc++-multilib-static
78 %if "%{pld_release}" == "ac"
79 BuildRequires: XFree86-devel
81 BuildRequires: xorg-lib-libXcomposite-devel
82 BuildRequires: xorg-lib-libXcursor-devel
83 BuildRequires: xorg-lib-libXmu-devel
84 BuildRequires: xorg-proto-glproto-devel
85 BuildRequires: xorg-xserver-server-devel
87 BuildRequires: OpenGL-GLU-devel
88 BuildRequires: OpenGL-devel
89 BuildRequires: QtGui-devel
90 BuildRequires: QtNetwork-devel
91 BuildRequires: QtOpenGL-devel
92 BuildRequires: SDL-devel >= 1.2.7
94 BuildRequires: alsa-lib-devel >= 1.0.6
98 BuildRequires: curl-devel
99 %{?with_doc:BuildRequires: docbook-dtd44-xml}
100 BuildRequires: gcc >= 5:3.2.3
101 BuildRequires: libIDL-devel
102 BuildRequires: libcap-static
103 BuildRequires: libdrm-devel
104 BuildRequires: libpng-devel >= 1.2.5
105 BuildRequires: libstdc++-devel >= 5:3.2.3
106 BuildRequires: libstdc++-static >= 5:3.2.3
107 BuildRequires: libuuid-devel
108 BuildRequires: libvncserver-devel
109 BuildRequires: libxml2-devel >= 2.6.26
110 BuildRequires: libxslt-devel >= 1.1.17
111 BuildRequires: libxslt-progs >= 1.1.17
112 BuildRequires: makeself
113 BuildRequires: mkisofs
114 BuildRequires: pam-devel
115 BuildRequires: pixman-devel
116 BuildRequires: pkgconfig
117 BuildRequires: pulseaudio-devel >= 0.9.0
118 BuildRequires: python-devel
119 BuildRequires: python-modules
120 BuildRequires: qt4-build >= 4.2.0
121 BuildRequires: qt4-linguist
122 BuildRequires: sed >= 4.0
124 BuildRequires: texlive-fonts-bitstream
125 BuildRequires: texlive-fonts-other
126 BuildRequires: texlive-fonts-type1-bitstream
127 BuildRequires: texlive-format-pdflatex
128 BuildRequires: texlive-latex-ucs
129 BuildRequires: texlive-xetex
132 BuildRequires: xalan-c-devel >= 1.10.0
133 BuildRequires: xerces-c-devel >= 2.6.0
134 BuildRequires: zlib-devel >= 1.2.1
136 %if %{with dist_kernel}
137 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
139 Requires(post,preun): /sbin/chkconfig
140 Requires(postun): /usr/sbin/groupdel
141 Requires(pre): /usr/bin/getgid
142 Requires(pre): /usr/sbin/groupadd
143 Requires: QtCore >= 4.7.0
145 Provides: group(vbox)
146 ExclusiveArch: %{ix86} %{x8664}
147 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
150 %define vbox_platform linux.amd64
152 %define vbox_platform linux.x86
154 %define outdir out/%{vbox_platform}/release/bin
155 %define _sbindir /sbin
158 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
159 hardware. Targeted at server, desktop and embedded use, it is now the
160 only professional-quality virtualization solution that is also Open
163 Some of the features of VirtualBox OSE are:
165 Modularity: VirtualBox OSE has an extremely modular design with
166 well-defined internal programming interfaces and a client/server
167 design. This makes it easy to control it from several interfaces at
168 once: for example, you can start a virtual machine in a typical
169 virtual machine GUI and then control that machine from the command
170 line. VirtualBox OSE also comes with a full Software Development Kit:
171 even though it is Open Source Software, you don't have to hack the
172 source to write a new interface for VirtualBox OSE.
174 Virtual machine descriptions in XML: the configuration settings of
175 virtual machines are stored entirely in XML and are independent of the
176 local machines. Virtual machine definitions can therefore easily be
177 ported to other computers.
179 You should install this package in your Host OS.
181 %description -l pl.UTF-8
182 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
183 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
184 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
185 również jako Otwarte Oprogramowanie.
187 Przykładowe cechy VirtualBoksa:
189 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
190 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
191 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
192 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
193 poziomu interfejsu graficznego, a później kontrolować ją z linii
194 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
195 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
198 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
199 wirtualnych są w całości przechowywane w XML-u i są niezależne od
200 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
201 konfigurację maszyny wirtualnej na inny komputer.
204 Summary: VirtualBox documentation
208 This package contains VirtualBox User Manual.
211 Summary: udev rules for VirtualBox OSE kernel modules
212 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
217 udev rules for VirtualBox OSE kernel modules.
219 You should install this package in your Host OS and in Guest OS.
221 %description udev -l pl.UTF-8
222 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
225 Summary: VirtualBox Guest Additions
227 Requires: %{name} = %{version}-%{release}
229 %description additions
230 VirtualBox Guest Additions.
232 This package contains ISO9660 image with drivers for Guest OS.
234 You should install this package in your Host OS.
237 Summary: VirtualBox Guest Additions
239 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
240 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
241 Suggests: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
242 Suggests: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
245 Tools that utilize kernel modules for supporting integration with the
246 Host, including file sharing and tracking of mouse pointer movement
247 and X.org X11 video and mouse driver.
249 You should install this package in your Guest OS.
251 %package -n pam-pam_vbox
252 Summary: PAM module to perform automated guest logons
255 %description -n pam-pam_vbox
256 PAM module (Pluggable Authentication Module) which can be used to
257 perform automated guest logons.
259 %package -n xorg-driver-input-vboxmouse
260 Summary: X.org mouse driver for VirtualBox OSE guest OS
261 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
262 Group: X11/Applications
263 Requires: xorg-xserver-server >= 1.0.99.901
264 Requires: xorg-xserver-server(xinput-abi) <= 12.2
265 Requires: xorg-xserver-server(xinput-abi) >= 4.0
267 %description -n xorg-driver-input-vboxmouse
268 X.org mouse driver for VirtualBox OSE guest OS.
270 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
271 Sterownik myszy dla systemu gościa w VirtualBoksie.
273 %package -n xorg-driver-video-vboxvideo
274 Summary: X.org video driver for VirtualBox OSE guest OS
275 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
276 Group: X11/Applications
277 Requires: Mesa-dri-driver-swrast
278 Requires: xorg-xserver-libdri >= 1.7.4
279 Requires: xorg-xserver-server >= 1.0.99.901
280 Requires: xorg-xserver-server(videodrv-abi) <= 10.0
281 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
283 %description -n xorg-driver-video-vboxvideo
284 X.org video driver for VirtualBox OSE guest OS.
286 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
287 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
289 %package -n kernel%{_alt_kernel}-misc-vboxguest
290 Summary: VirtualBox OSE Guest Additions for Linux Module
291 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
292 Release: %{rel}@%{_kernel_ver_str}
294 Requires(post,postun): /sbin/depmod
295 Requires: dev >= 2.9.0-7
296 %if %{with dist_kernel}
297 %requires_releq_kernel
298 Requires(postun): %releq_kernel
300 Provides: kernel(vboxguest) = %{version}-%{rel}
301 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
302 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
304 %description -n kernel%{_alt_kernel}-misc-vboxguest
305 VirtualBox OSE Guest Additions for Linux Module.
307 You should install this package in your Guest OS.
309 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
310 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
313 %package -n kernel%{_alt_kernel}-misc-vboxdrv
314 Summary: VirtualBox OSE Support Driver
315 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
316 Release: %{rel}@%{_kernel_ver_str}
318 Requires(post,postun): /sbin/depmod
319 Requires: dev >= 2.9.0-7
320 %if %{with dist_kernel}
321 %requires_releq_kernel
322 Requires(postun): %releq_kernel
324 Provides: kernel(vboxdrv) = %{version}-%{rel}
326 %description -n kernel%{_alt_kernel}-misc-vboxdrv
327 VirtualBox OSE Support Driver.
329 You should install this package in your Host OS.
331 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
332 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
335 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
336 Summary: VirtualBox OSE Network Adapter 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-vboxnetadp
350 VirtualBox OSE Network Adapter Driver.
352 You should install this package in your Host OS.
354 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
355 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
358 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
359 Summary: VirtualBox OSE Network Filter Driver
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-vboxdrv
366 %if %{with dist_kernel}
367 %requires_releq_kernel
368 Requires(postun): %releq_kernel
370 Provides: kernel(vboxnetflt) = %{version}-%{rel}
372 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
373 VirtualBox OSE Network Filter Driver.
375 You should install this package in your Host OS.
377 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
378 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
379 dla systemu głównego.
381 %package -n kernel%{_alt_kernel}-misc-vboxsf
382 Summary: Host file system access (Shared Folders) for VirtualBox OSE
383 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
384 Release: %{rel}@%{_kernel_ver_str}
386 Requires(post,postun): /sbin/depmod
387 Requires: dev >= 2.9.0-7
388 Requires: kernel%{_alt_kernel}-misc-vboxguest
389 %if %{with dist_kernel}
390 %requires_releq_kernel
391 Requires(postun): %releq_kernel
393 Provides: kernel(vboxsf) = %{version}-%{rel}
394 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
396 %description -n kernel%{_alt_kernel}-misc-vboxsf
397 Host file system access (Shared Folders) for VirtualBox OSE.
399 You should install this package in your Guest OS.
401 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
402 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
403 głównego z poziomu systemu gościa.
405 %package -n kernel%{_alt_kernel}-misc-vboxvideo
406 Summary: DRM support for VirtualBox OSE
407 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
408 Release: %{rel}@%{_kernel_ver_str}
410 Requires(post,postun): /sbin/depmod
411 Requires: dev >= 2.9.0-7
412 %if %{with dist_kernel}
413 %requires_releq_kernel
414 %if "%{rpm_build_macros}" >= "1.531"
415 %requires_releq_kernel -n drm
417 Requires(postun): %releq_kernel
419 Provides: kernel(vboxvideo) = %{version}-%{rel}
421 %description -n kernel%{_alt_kernel}-misc-vboxvideo
422 DRM support for VirtualBox OSE.
424 You should install this package in your Guest OS.
426 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
427 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
430 %setup -q -n %{pname}-%{version}_OSE
438 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
439 -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
441 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
443 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
445 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
446 tar -zxf guest-modules.tar.gz -C GuestDrivers
448 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
449 tar -zxf host-modules.tar.gz -C HostDrivers
457 %if %{with userspace}
458 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
460 --with-gcc="%{__cc}" \
461 --with-g++="%{__cxx}" \
462 %{!?with_doc:--disable-docs} \
464 --disable-hardening \
467 XSERVER_VERSION=$(rpm -q --queryformat '%{VERSION}\n' xorg-xserver-server-devel | awk -F. ' { print $1 $2 } ' 2> /dev/null || echo ERROR)
470 %{?with_verbose:KBUILD_VERBOSE=3} \
472 VBOX_VERSION_STRING='$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)'_PLD \
473 XSERVER_VERSION="$XSERVER_VERSION"
477 cd PLD-MODULE-BUILD/HostDrivers
478 %build_kernel_modules -m vboxdrv -C vboxdrv
479 %build_kernel_modules -m vboxnetadp -C vboxnetadp
480 %build_kernel_modules -m vboxnetflt -C vboxnetflt
483 %build_kernel_modules -m vboxguest -C vboxguest
484 cp -a vboxguest/Module.symvers vboxsf
485 %build_kernel_modules -m vboxsf -C vboxsf -c
486 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
488 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
492 rm -rf $RPM_BUILD_ROOT
494 %if %{with userspace}
495 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
496 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
497 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
499 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
500 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
502 rm -f $RPM_BUILD_ROOT/VBox.png
505 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
507 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
508 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
509 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
510 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
511 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
514 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/VBox.png,%{_pixmapsdir}/virtualbox.png}
515 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
517 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
518 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
519 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
520 # xorg other driver versions
521 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
522 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
524 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
525 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
526 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
527 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
528 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
529 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
530 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
532 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
533 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
535 install -d $RPM_BUILD_ROOT/%{_lib}/security
536 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
539 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
540 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
541 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
542 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
544 # IPRT Testcase / Tool - Source Code Massager.
545 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
548 install -d $RPM_BUILD_ROOT/etc/{X11/xinit/xinitrc.d,xdg/autostart}
549 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
550 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
551 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
552 install -p -D src/VBox/Additions/x11/Installer/98vboxadd-xclient \
553 $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
554 cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
555 $RPM_BUILD_ROOT/etc/xdg/autostart/vboxclient.desktop
559 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
560 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
561 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
562 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
563 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
564 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
567 # packaged by kernel part
568 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
572 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
573 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
574 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
575 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
576 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
577 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
578 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
579 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
580 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
581 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
582 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
583 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
585 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
590 rm -rf $RPM_BUILD_ROOT
593 %groupadd -g 221 -r -f vbox
597 You must install vboxdrv kernel module for this software to work:
598 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
600 Additionally you might want to install:
601 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
602 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
604 On Guest Linux system you might want to install:
605 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
606 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
607 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
612 if [ "$1" = "0" ]; then
616 %post -n kernel%{_alt_kernel}-misc-vboxguest
617 %depmod %{_kernel_ver}
618 /sbin/chkconfig --add vboxguest
619 %service vboxguest restart "VirtualBox OSE Guest additions driver"
621 %postun -n kernel%{_alt_kernel}-misc-vboxguest
622 %depmod %{_kernel_ver}
624 %preun -n kernel%{_alt_kernel}-misc-vboxguest
625 if [ "$1" = "0" ]; then
626 %service vboxguest stop
627 /sbin/chkconfig --del vboxguest
630 %post -n kernel%{_alt_kernel}-misc-vboxdrv
631 %depmod %{_kernel_ver}
632 /sbin/chkconfig --add vboxdrv
633 %service vboxdrv restart "VirtualBox OSE Support Driver"
635 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
636 %depmod %{_kernel_ver}
638 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
639 if [ "$1" = "0" ]; then
640 %service vboxdrv stop
641 /sbin/chkconfig --del vboxdrv
644 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
645 %depmod %{_kernel_ver}
646 /sbin/chkconfig --add vboxnetadp
647 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
649 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
650 %depmod %{_kernel_ver}
652 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
653 if [ "$1" = "0" ]; then
654 %service vboxnetadp stop
655 /sbin/chkconfig --del vboxnetadp
658 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
659 %depmod %{_kernel_ver}
660 /sbin/chkconfig --add vboxnetflt
661 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
663 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
664 %depmod %{_kernel_ver}
666 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
667 if [ "$1" = "0" ]; then
668 %service vboxnetflt stop
669 /sbin/chkconfig --del vboxnetflt
672 %post -n kernel%{_alt_kernel}-misc-vboxsf
673 %depmod %{_kernel_ver}
674 /sbin/chkconfig --add vboxsf
675 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
677 %postun -n kernel%{_alt_kernel}-misc-vboxsf
678 %depmod %{_kernel_ver}
680 %preun -n kernel%{_alt_kernel}-misc-vboxsf
681 if [ "$1" = "0" ]; then
683 /sbin/chkconfig --del vboxsf
686 %post -n kernel%{_alt_kernel}-misc-vboxvideo
687 %depmod %{_kernel_ver}
689 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
690 %depmod %{_kernel_ver}
692 %if %{with userspace}
694 %defattr(644,root,root,755)
695 %dir %{_libdir}/VirtualBox
696 %dir %{_libdir}/VirtualBox/ExtensionPacks
697 %dir %{_libdir}/VirtualBox/additions
698 %dir %{_libdir}/VirtualBox/components
699 %dir %{_libdir}/VirtualBox/nls
700 %attr(755,root,root) %{_bindir}/VBoxBFE
701 %attr(755,root,root) %{_bindir}/VBoxHeadless
702 %attr(755,root,root) %{_bindir}/VBoxManage
703 %attr(755,root,root) %{_bindir}/VBoxSDL
704 %attr(755,root,root) %{_bindir}/VBoxSVC
705 %attr(755,root,root) %{_bindir}/VBoxTunctl
706 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
707 %attr(755,root,root) %{_bindir}/VirtualBox
708 %attr(755,root,root) %{_sbindir}/mount.vdi
709 %attr(755,root,root) %{_libdir}/VirtualBox/DBGCPlugInDiggers.so
710 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuth.so
711 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuthSimple.so
712 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
713 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxCreateUSBNode.sh
714 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDbg.so
715 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
716 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
717 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
718 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxExtPackHelperApp
719 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
720 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
721 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
722 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
723 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
724 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
725 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
726 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
727 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
728 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
729 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
730 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
732 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
733 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
735 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
736 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
737 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
738 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
739 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
740 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
741 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
742 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
743 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
744 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
745 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
746 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
747 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
748 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
749 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
750 %{_libdir}/VirtualBox/VBoxDD2GC.gc
751 %{_libdir}/VirtualBox/VBoxDDGC.gc
752 %{_libdir}/VirtualBox/VMMGC.gc
753 %{_libdir}/VirtualBox/VBoxDD2R0.r0
754 %{_libdir}/VirtualBox/VBoxDDR0.r0
755 %{_libdir}/VirtualBox/VMMR0.r0
756 %{_libdir}/VirtualBox/EfiThunk
757 %{_libdir}/VirtualBox/VBoxEFI32.fd
758 %{_libdir}/VirtualBox/VBoxEFI64.fd
759 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
760 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
761 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
762 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
763 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
764 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
765 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
766 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
767 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
768 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
769 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
770 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
771 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
772 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
773 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
774 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
775 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
776 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
777 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
778 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
779 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
780 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
781 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
782 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
783 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
784 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
785 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
786 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
787 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
788 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
789 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
790 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
791 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
792 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
793 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
794 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
795 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
796 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
797 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
798 %{_pixmapsdir}/virtualbox.png
799 %{_desktopdir}/*.desktop
800 %{_libdir}/VirtualBox/icons
801 %{_libdir}/VirtualBox/virtualbox.xml
804 %defattr(644,root,root,755)
805 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
808 %defattr(644,root,root,755)
809 # NOTE: unfinished, should contain .desktop files for starting up mouse
810 # integration and other desktop services
811 # NOTE: the filelist is incomplete too
812 %attr(755,root,root) %{_bindir}/VBoxClient
813 %attr(755,root,root) %{_bindir}/VBoxControl
814 %attr(755,root,root) %{_bindir}/VBoxService
815 /etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
816 /etc/xdg/autostart/vboxclient.desktop
818 %attr(755,root,root) %{_libdir}/VirtualBox/additions/autorun.sh
819 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd
820 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-service
821 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-x11
823 %files -n pam-pam_vbox
824 %defattr(644,root,root,755)
825 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
829 %defattr(644,root,root,755)
830 %doc %{outdir}/UserManual.pdf
834 %defattr(644,root,root,755)
835 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
837 %files -n xorg-driver-input-vboxmouse
838 %defattr(644,root,root,755)
839 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
841 %files -n xorg-driver-video-vboxvideo
842 %defattr(644,root,root,755)
843 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
844 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
845 # vboxvideo_dri.so deps
846 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
847 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
848 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
849 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
850 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
851 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
855 %files -n kernel%{_alt_kernel}-misc-vboxguest
856 %defattr(644,root,root,755)
857 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
858 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
860 %files -n kernel%{_alt_kernel}-misc-vboxdrv
861 %defattr(644,root,root,755)
862 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
863 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
865 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
866 %defattr(644,root,root,755)
867 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
868 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
870 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
871 %defattr(644,root,root,755)
872 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
873 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
875 %files -n kernel%{_alt_kernel}-misc-vboxsf
876 %defattr(644,root,root,755)
877 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
878 %attr(755,root,root) %{_sbindir}/mount.vboxsf
879 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
881 %files -n kernel%{_alt_kernel}-misc-vboxvideo
882 %defattr(644,root,root,755)
883 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*