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: 5b39b99c2a36c96a062913e8ac67c60f
47 Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
48 # Source1-md5: 3573d8233bc2a343ff6a5c9cfa6764c2
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 Patch10: %{pname}-disable_build_NetBiosBin.patch
70 URL: http://www.virtualbox.org/
71 BuildRequires: rpmbuild(macros) >= 1.535
74 BuildRequires: gcc-multilib
75 BuildRequires: glibc-devel(i686)
76 BuildRequires: libstdc++-multilib-devel
77 BuildRequires: libstdc++-multilib-static
79 %if "%{pld_release}" == "ac"
80 BuildRequires: XFree86-devel
82 BuildRequires: xorg-lib-libXcomposite-devel
83 BuildRequires: xorg-lib-libXcursor-devel
84 BuildRequires: xorg-lib-libXmu-devel
85 BuildRequires: xorg-proto-glproto-devel
86 BuildRequires: xorg-xserver-server-devel
88 BuildRequires: OpenGL-GLU-devel
89 BuildRequires: OpenGL-devel
90 BuildRequires: QtGui-devel
91 BuildRequires: QtNetwork-devel
92 BuildRequires: QtOpenGL-devel
93 BuildRequires: SDL-devel >= 1.2.7
95 BuildRequires: alsa-lib-devel >= 1.0.6
99 BuildRequires: curl-devel
100 %{?with_doc:BuildRequires: docbook-dtd44-xml}
101 BuildRequires: gcc >= 5:3.2.3
102 BuildRequires: libIDL-devel
103 BuildRequires: libcap-static
104 BuildRequires: libdrm-devel
105 BuildRequires: libpng-devel >= 1.2.5
106 BuildRequires: libstdc++-devel >= 5:3.2.3
107 BuildRequires: libstdc++-static >= 5:3.2.3
108 BuildRequires: libuuid-devel
109 BuildRequires: libvncserver-devel >= 0.9.7
110 BuildRequires: libxml2-devel >= 2.6.26
111 BuildRequires: libxslt-devel >= 1.1.17
112 BuildRequires: libxslt-progs >= 1.1.17
113 BuildRequires: makeself
114 BuildRequires: mkisofs
115 BuildRequires: pam-devel
116 BuildRequires: pixman-devel
117 BuildRequires: pkgconfig
118 BuildRequires: pulseaudio-devel >= 0.9.0
119 BuildRequires: python-devel
120 BuildRequires: python-modules
121 BuildRequires: qt4-build >= 4.2.0
122 BuildRequires: qt4-linguist
123 BuildRequires: sed >= 4.0
125 BuildRequires: texlive-fonts-bitstream
126 BuildRequires: texlive-fonts-other
127 BuildRequires: texlive-fonts-type1-bitstream
128 BuildRequires: texlive-format-pdflatex
129 BuildRequires: texlive-latex-ucs
130 BuildRequires: texlive-xetex
133 BuildRequires: xalan-c-devel >= 1.10.0
134 BuildRequires: xerces-c-devel >= 2.6.0
135 BuildRequires: zlib-devel >= 1.2.1
137 %if %{with dist_kernel}
138 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
140 Requires(post,preun): /sbin/chkconfig
141 Requires(postun): /usr/sbin/groupdel
142 Requires(pre): /usr/bin/getgid
143 Requires(pre): /usr/sbin/groupadd
144 Requires: QtCore >= 4.7.0
146 Provides: group(vbox)
147 ExclusiveArch: %{ix86} %{x8664}
148 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
151 %define vbox_platform linux.amd64
153 %define vbox_platform linux.x86
155 %define outdir out/%{vbox_platform}/release/bin
156 %define _sbindir /sbin
159 Oracle VirtualBox OSE is a general-purpose full virtualizer for x86
160 hardware. Targeted at server, desktop and embedded use, it is now the
161 only professional-quality virtualization solution that is also Open
164 Some of the features of VirtualBox OSE are:
166 Modularity: VirtualBox OSE has an extremely modular design with
167 well-defined internal programming interfaces and a client/server
168 design. This makes it easy to control it from several interfaces at
169 once: for example, you can start a virtual machine in a typical
170 virtual machine GUI and then control that machine from the command
171 line. VirtualBox OSE also comes with a full Software Development Kit:
172 even though it is Open Source Software, you don't have to hack the
173 source to write a new interface for VirtualBox OSE.
175 Virtual machine descriptions in XML: the configuration settings of
176 virtual machines are stored entirely in XML and are independent of the
177 local machines. Virtual machine definitions can therefore easily be
178 ported to other computers.
180 You should install this package in your Host OS.
182 %description -l pl.UTF-8
183 Oracle VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
184 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
185 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
186 również jako Otwarte Oprogramowanie.
188 Przykładowe cechy VirtualBoksa:
190 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
191 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
192 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
193 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
194 poziomu interfejsu graficznego, a później kontrolować ją z linii
195 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
196 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
199 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
200 wirtualnych są w całości przechowywane w XML-u i są niezależne od
201 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
202 konfigurację maszyny wirtualnej na inny komputer.
205 Summary: VirtualBox documentation
209 This package contains VirtualBox User Manual.
212 Summary: udev rules for VirtualBox OSE kernel modules
213 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
218 udev rules for VirtualBox OSE kernel modules.
220 You should install this package in your Host OS and in Guest OS.
222 %description udev -l pl.UTF-8
223 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
226 Summary: VirtualBox Guest Additions
228 Requires: %{name} = %{version}-%{release}
230 %description additions
231 VirtualBox Guest Additions.
233 This package contains ISO9660 image with drivers for Guest OS.
235 You should install this package in your Host OS.
238 Summary: VirtualBox Guest Additions
240 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
241 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
242 Suggests: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
243 Suggests: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
246 Tools that utilize kernel modules for supporting integration with the
247 Host, including file sharing and tracking of mouse pointer movement
248 and X.org X11 video and mouse driver.
250 You should install this package in your Guest OS.
252 %package -n pam-pam_vbox
253 Summary: PAM module to perform automated guest logons
256 %description -n pam-pam_vbox
257 PAM module (Pluggable Authentication Module) which can be used to
258 perform automated guest logons.
260 %package -n xorg-driver-input-vboxmouse
261 Summary: X.org mouse driver for VirtualBox OSE guest OS
262 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
263 Group: X11/Applications
264 Requires: xorg-xserver-server >= 1.0.99.901
265 Requires: xorg-xserver-server(xinput-abi) <= 12.2
266 Requires: xorg-xserver-server(xinput-abi) >= 4.0
268 %description -n xorg-driver-input-vboxmouse
269 X.org mouse driver for VirtualBox OSE guest OS.
271 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
272 Sterownik myszy dla systemu gościa w VirtualBoksie.
274 %package -n xorg-driver-video-vboxvideo
275 Summary: X.org video driver for VirtualBox OSE guest OS
276 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
277 Group: X11/Applications
278 Requires: Mesa-dri-driver-swrast
279 Requires: xorg-xserver-libdri >= 1.7.4
280 Requires: xorg-xserver-server >= 1.0.99.901
281 Requires: xorg-xserver-server(videodrv-abi) <= 10.0
282 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
284 %description -n xorg-driver-video-vboxvideo
285 X.org video driver for VirtualBox OSE guest OS.
287 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
288 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
290 %package -n kernel%{_alt_kernel}-misc-vboxguest
291 Summary: VirtualBox OSE Guest Additions for Linux Module
292 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
293 Release: %{rel}@%{_kernel_ver_str}
295 Requires(post,postun): /sbin/depmod
296 Requires: dev >= 2.9.0-7
297 %if %{with dist_kernel}
298 %requires_releq_kernel
299 Requires(postun): %releq_kernel
301 Provides: kernel(vboxguest) = %{version}-%{rel}
302 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
303 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
305 %description -n kernel%{_alt_kernel}-misc-vboxguest
306 VirtualBox OSE Guest Additions for Linux Module.
308 You should install this package in your Guest OS.
310 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
311 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
314 %package -n kernel%{_alt_kernel}-misc-vboxdrv
315 Summary: VirtualBox OSE Support Driver
316 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
317 Release: %{rel}@%{_kernel_ver_str}
319 Requires(post,postun): /sbin/depmod
320 Requires: dev >= 2.9.0-7
321 %if %{with dist_kernel}
322 %requires_releq_kernel
323 Requires(postun): %releq_kernel
325 Provides: kernel(vboxdrv) = %{version}-%{rel}
327 %description -n kernel%{_alt_kernel}-misc-vboxdrv
328 VirtualBox OSE Support Driver.
330 You should install this package in your Host OS.
332 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
333 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
336 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
337 Summary: VirtualBox OSE Network Adapter Driver
338 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
339 Release: %{rel}@%{_kernel_ver_str}
341 Requires(post,postun): /sbin/depmod
342 Requires: dev >= 2.9.0-7
343 Requires: kernel%{_alt_kernel}-misc-vboxdrv
344 %if %{with dist_kernel}
345 %requires_releq_kernel
346 Requires(postun): %releq_kernel
348 Provides: kernel(vboxnetflt) = %{version}-%{rel}
350 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
351 VirtualBox OSE Network Adapter Driver.
353 You should install this package in your Host OS.
355 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
356 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
359 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
360 Summary: VirtualBox OSE Network Filter Driver
361 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
362 Release: %{rel}@%{_kernel_ver_str}
364 Requires(post,postun): /sbin/depmod
365 Requires: dev >= 2.9.0-7
366 Requires: kernel%{_alt_kernel}-misc-vboxdrv
367 %if %{with dist_kernel}
368 %requires_releq_kernel
369 Requires(postun): %releq_kernel
371 Provides: kernel(vboxnetflt) = %{version}-%{rel}
373 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
374 VirtualBox OSE Network Filter Driver.
376 You should install this package in your Host OS.
378 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
379 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
380 dla systemu głównego.
382 %package -n kernel%{_alt_kernel}-misc-vboxsf
383 Summary: Host file system access (Shared Folders) for VirtualBox OSE
384 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
385 Release: %{rel}@%{_kernel_ver_str}
387 Requires(post,postun): /sbin/depmod
388 Requires: dev >= 2.9.0-7
389 Requires: kernel%{_alt_kernel}-misc-vboxguest
390 %if %{with dist_kernel}
391 %requires_releq_kernel
392 Requires(postun): %releq_kernel
394 Provides: kernel(vboxsf) = %{version}-%{rel}
395 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
397 %description -n kernel%{_alt_kernel}-misc-vboxsf
398 Host file system access (Shared Folders) for VirtualBox OSE.
400 You should install this package in your Guest OS.
402 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
403 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
404 głównego z poziomu systemu gościa.
406 %package -n kernel%{_alt_kernel}-misc-vboxvideo
407 Summary: DRM support for VirtualBox OSE
408 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
409 Release: %{rel}@%{_kernel_ver_str}
411 Requires(post,postun): /sbin/depmod
412 Requires: dev >= 2.9.0-7
413 %if %{with dist_kernel}
414 %requires_releq_kernel
415 %if "%{rpm_build_macros}" >= "1.531"
416 %requires_releq_kernel -n drm
418 Requires(postun): %releq_kernel
420 Provides: kernel(vboxvideo) = %{version}-%{rel}
422 %description -n kernel%{_alt_kernel}-misc-vboxvideo
423 DRM support for VirtualBox OSE.
425 You should install this package in your Guest OS.
427 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
428 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
431 %setup -q -n %{pname}-%{version}_OSE
439 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
440 -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
442 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
444 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
446 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
447 tar -zxf guest-modules.tar.gz -C GuestDrivers
449 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
450 tar -zxf host-modules.tar.gz -C HostDrivers
459 %if %{with userspace}
460 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
462 --with-gcc="%{__cc}" \
463 --with-g++="%{__cxx}" \
464 %{!?with_doc:--disable-docs} \
466 --disable-hardening \
470 XSERVER_VERSION=$(rpm -q --queryformat '%{VERSION}\n' xorg-xserver-server-devel | awk -F. ' { print $1 $2 } ' 2> /dev/null || echo ERROR)
473 %{?with_verbose:KBUILD_VERBOSE=3} \
475 VBOX_VERSION_STRING='$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)'_PLD \
476 XSERVER_VERSION="$XSERVER_VERSION"
480 cd PLD-MODULE-BUILD/HostDrivers
481 %build_kernel_modules -m vboxdrv -C vboxdrv
482 %build_kernel_modules -m vboxnetadp -C vboxnetadp
483 %build_kernel_modules -m vboxnetflt -C vboxnetflt
486 %build_kernel_modules -m vboxguest -C vboxguest
487 cp -a vboxguest/Module.symvers vboxsf
488 %build_kernel_modules -m vboxsf -C vboxsf -c
489 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
491 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
495 rm -rf $RPM_BUILD_ROOT
497 %if %{with userspace}
498 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
499 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
500 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
502 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
503 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
505 rm -f $RPM_BUILD_ROOT/VBox.png
508 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
510 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
511 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
512 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
513 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
514 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
517 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/VBox.png,%{_pixmapsdir}/virtualbox.png}
518 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
520 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
521 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
522 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
523 # xorg other driver versions
524 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
525 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
527 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
528 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
529 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
530 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
531 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
532 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
533 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
535 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
536 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
538 install -d $RPM_BUILD_ROOT/%{_lib}/security
539 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
542 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
543 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
544 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
545 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
547 # IPRT Testcase / Tool - Source Code Massager.
548 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
551 install -d $RPM_BUILD_ROOT/etc/{X11/xinit/xinitrc.d,xdg/autostart}
552 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
553 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
554 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
555 install -p -D src/VBox/Additions/x11/Installer/98vboxadd-xclient \
556 $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
557 cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
558 $RPM_BUILD_ROOT/etc/xdg/autostart/vboxclient.desktop
562 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
563 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
564 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
565 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
566 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
567 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
570 # packaged by kernel part
571 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
575 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
576 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
577 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
578 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
579 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
580 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
581 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
582 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
583 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
584 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
585 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
586 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
588 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
593 rm -rf $RPM_BUILD_ROOT
596 %groupadd -g 221 -r -f vbox
600 You must install vboxdrv kernel module for this software to work:
601 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
603 Additionally you might want to install:
604 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
605 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
607 On Guest Linux system you might want to install:
608 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
609 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
610 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
615 if [ "$1" = "0" ]; then
619 %post -n kernel%{_alt_kernel}-misc-vboxguest
620 %depmod %{_kernel_ver}
621 /sbin/chkconfig --add vboxguest
622 %service vboxguest restart "VirtualBox OSE Guest additions driver"
624 %postun -n kernel%{_alt_kernel}-misc-vboxguest
625 %depmod %{_kernel_ver}
627 %preun -n kernel%{_alt_kernel}-misc-vboxguest
628 if [ "$1" = "0" ]; then
629 %service vboxguest stop
630 /sbin/chkconfig --del vboxguest
633 %post -n kernel%{_alt_kernel}-misc-vboxdrv
634 %depmod %{_kernel_ver}
635 /sbin/chkconfig --add vboxdrv
636 %service vboxdrv restart "VirtualBox OSE Support Driver"
638 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
639 %depmod %{_kernel_ver}
641 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
642 if [ "$1" = "0" ]; then
643 %service vboxdrv stop
644 /sbin/chkconfig --del vboxdrv
647 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
648 %depmod %{_kernel_ver}
649 /sbin/chkconfig --add vboxnetadp
650 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
652 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
653 %depmod %{_kernel_ver}
655 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
656 if [ "$1" = "0" ]; then
657 %service vboxnetadp stop
658 /sbin/chkconfig --del vboxnetadp
661 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
662 %depmod %{_kernel_ver}
663 /sbin/chkconfig --add vboxnetflt
664 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
666 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
667 %depmod %{_kernel_ver}
669 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
670 if [ "$1" = "0" ]; then
671 %service vboxnetflt stop
672 /sbin/chkconfig --del vboxnetflt
675 %post -n kernel%{_alt_kernel}-misc-vboxsf
676 %depmod %{_kernel_ver}
677 /sbin/chkconfig --add vboxsf
678 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
680 %postun -n kernel%{_alt_kernel}-misc-vboxsf
681 %depmod %{_kernel_ver}
683 %preun -n kernel%{_alt_kernel}-misc-vboxsf
684 if [ "$1" = "0" ]; then
686 /sbin/chkconfig --del vboxsf
689 %post -n kernel%{_alt_kernel}-misc-vboxvideo
690 %depmod %{_kernel_ver}
692 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
693 %depmod %{_kernel_ver}
695 %if %{with userspace}
697 %defattr(644,root,root,755)
698 %dir %{_libdir}/VirtualBox
699 %dir %{_libdir}/VirtualBox/ExtensionPacks
700 %dir %{_libdir}/VirtualBox/additions
701 %dir %{_libdir}/VirtualBox/components
702 %dir %{_libdir}/VirtualBox/nls
703 %attr(755,root,root) %{_bindir}/VBoxBFE
704 %attr(755,root,root) %{_bindir}/VBoxHeadless
705 %attr(755,root,root) %{_bindir}/VBoxManage
706 %attr(755,root,root) %{_bindir}/VBoxSDL
707 %attr(755,root,root) %{_bindir}/VBoxSVC
708 %attr(755,root,root) %{_bindir}/VBoxTunctl
709 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
710 %attr(755,root,root) %{_bindir}/VirtualBox
711 %attr(755,root,root) %{_sbindir}/mount.vdi
712 %attr(755,root,root) %{_libdir}/VirtualBox/DBGCPlugInDiggers.so
713 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuth.so
714 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuthSimple.so
715 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
716 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxCreateUSBNode.sh
717 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDbg.so
718 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
719 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
720 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
721 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxExtPackHelperApp
722 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
723 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
724 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
725 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
726 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
727 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
728 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
729 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
730 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
731 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
732 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
733 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
735 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
736 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
738 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
739 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
740 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
741 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
742 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
743 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
744 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
745 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
746 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
747 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
748 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
749 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
750 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
751 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
752 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
753 %{_libdir}/VirtualBox/VBoxDD2GC.gc
754 %{_libdir}/VirtualBox/VBoxDDGC.gc
755 %{_libdir}/VirtualBox/VMMGC.gc
756 %{_libdir}/VirtualBox/VBoxDD2R0.r0
757 %{_libdir}/VirtualBox/VBoxDDR0.r0
758 %{_libdir}/VirtualBox/VMMR0.r0
759 %{_libdir}/VirtualBox/EfiThunk
760 %{_libdir}/VirtualBox/VBoxEFI32.fd
761 %{_libdir}/VirtualBox/VBoxEFI64.fd
762 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
763 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
764 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
765 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
766 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
767 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
768 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
769 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
770 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
771 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
772 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
773 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
774 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
775 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
776 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
777 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
778 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
779 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
780 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
781 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
782 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
783 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
784 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
785 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
786 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
787 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
788 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
789 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
790 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
791 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
792 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
793 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
794 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
795 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
796 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
797 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
798 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
799 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
800 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
801 %{_pixmapsdir}/virtualbox.png
802 %{_desktopdir}/*.desktop
803 %{_libdir}/VirtualBox/icons
804 %{_libdir}/VirtualBox/virtualbox.xml
807 %defattr(644,root,root,755)
808 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
811 %defattr(644,root,root,755)
812 # NOTE: unfinished, should contain .desktop files for starting up mouse
813 # integration and other desktop services
814 # NOTE: the filelist is incomplete too
815 %attr(755,root,root) %{_bindir}/VBoxClient
816 %attr(755,root,root) %{_bindir}/VBoxControl
817 %attr(755,root,root) %{_bindir}/VBoxService
818 /etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
819 /etc/xdg/autostart/vboxclient.desktop
821 %attr(755,root,root) %{_libdir}/VirtualBox/additions/autorun.sh
822 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd
823 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-service
824 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-x11
826 %files -n pam-pam_vbox
827 %defattr(644,root,root,755)
828 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
832 %defattr(644,root,root,755)
833 %doc %{outdir}/UserManual.pdf
837 %defattr(644,root,root,755)
838 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
840 %files -n xorg-driver-input-vboxmouse
841 %defattr(644,root,root,755)
842 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
844 %files -n xorg-driver-video-vboxvideo
845 %defattr(644,root,root,755)
846 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
847 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
848 # vboxvideo_dri.so deps
849 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
850 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
851 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
852 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
853 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
854 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
858 %files -n kernel%{_alt_kernel}-misc-vboxguest
859 %defattr(644,root,root,755)
860 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
861 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
863 %files -n kernel%{_alt_kernel}-misc-vboxdrv
864 %defattr(644,root,root,755)
865 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
866 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
868 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
869 %defattr(644,root,root,755)
870 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
871 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
873 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
874 %defattr(644,root,root,755)
875 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
876 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
878 %files -n kernel%{_alt_kernel}-misc-vboxsf
879 %defattr(644,root,root,755)
880 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
881 %attr(755,root,root) %{_sbindir}/mount.vboxsf
882 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
884 %files -n kernel%{_alt_kernel}-misc-vboxvideo
885 %defattr(644,root,root,755)
886 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*