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: cf274f0585c35c5c137e2bd9b48b462a
47 Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
48 # Source1-md5: d3c3d1848cfcb005f86db622d8a3f7db
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}-gcc.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-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: mkisofs
113 BuildRequires: makeself
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: udev rules for VirtualBox OSE kernel modules
205 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
210 udev rules for VirtualBox OSE kernel modules.
212 You should install this package in your Host OS and in Guest OS.
214 %description udev -l pl.UTF-8
215 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
218 Summary: VirtualBox Guest Additions
220 Requires: %{name} = %{version}-%{release}
222 %description additions
223 VirtualBox Guest Additions.
225 This package contains ISO9660 image with drivers for Guest OS.
227 You should install this package in your Host OS.
230 Summary: VirtualBox Guest Additions
232 Suggests: kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
233 Suggests: kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
234 Requires: xorg-driver-input-vboxmouse = %{version}-%{release}
235 Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
238 Tools that utilize kernel modules for supporting integration with the
239 Host, including file sharing and tracking of mouse pointer movement
240 and X.org X11 video and mouse driver.
242 You should install this package in your Guest OS.
244 %package -n pam-pam_vbox
245 Summary: PAM module to perform automated guest logons
248 %description -n pam-pam_vbox
249 PAM module (Pluggable Authentication Module) which can be used to
250 perform automated guest logons.
252 %package -n xorg-driver-input-vboxmouse
253 Summary: X.org mouse driver for VirtualBox OSE guest OS
254 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
255 Group: X11/Applications
256 Requires: xorg-xserver-server >= 1.0.99.901
257 Requires: xorg-xserver-server(xinput-abi) <= 12.2
258 Requires: xorg-xserver-server(xinput-abi) >= 4.0
260 %description -n xorg-driver-input-vboxmouse
261 X.org mouse driver for VirtualBox OSE guest OS.
263 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
264 Sterownik myszy dla systemu gościa w VirtualBoksie.
266 %package -n xorg-driver-video-vboxvideo
267 Summary: X.org video driver for VirtualBox OSE guest OS
268 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
269 Group: X11/Applications
270 Requires: Mesa-dri-driver-swrast
271 Requires: xorg-xserver-libdri >= 1.7.4
272 Requires: xorg-xserver-server >= 1.0.99.901
273 Requires: xorg-xserver-server(videodrv-abi) <= 10.0
274 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
276 %description -n xorg-driver-video-vboxvideo
277 X.org video driver for VirtualBox OSE guest OS.
279 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
280 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
282 %package -n kernel%{_alt_kernel}-misc-vboxguest
283 Summary: VirtualBox OSE Guest Additions for Linux Module
284 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
285 Release: %{rel}@%{_kernel_ver_str}
287 Requires(post,postun): /sbin/depmod
288 Requires: dev >= 2.9.0-7
289 %if %{with dist_kernel}
290 %requires_releq_kernel
291 Requires(postun): %releq_kernel
293 Provides: kernel(vboxguest) = %{version}-%{rel}
294 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
295 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
297 %description -n kernel%{_alt_kernel}-misc-vboxguest
298 VirtualBox OSE Guest Additions for Linux Module.
300 You should install this package in your Guest OS.
302 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
303 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
306 %package -n kernel%{_alt_kernel}-misc-vboxdrv
307 Summary: VirtualBox OSE Support Driver
308 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
309 Release: %{rel}@%{_kernel_ver_str}
311 Requires(post,postun): /sbin/depmod
312 Requires: dev >= 2.9.0-7
313 %if %{with dist_kernel}
314 %requires_releq_kernel
315 Requires(postun): %releq_kernel
317 Provides: kernel(vboxdrv) = %{version}-%{rel}
319 %description -n kernel%{_alt_kernel}-misc-vboxdrv
320 VirtualBox OSE Support Driver.
322 You should install this package in your Host OS.
324 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
325 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
328 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
329 Summary: VirtualBox OSE Network Adapter Driver
330 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
331 Release: %{rel}@%{_kernel_ver_str}
333 Requires(post,postun): /sbin/depmod
334 Requires: dev >= 2.9.0-7
335 Requires: kernel%{_alt_kernel}-misc-vboxdrv
336 %if %{with dist_kernel}
337 %requires_releq_kernel
338 Requires(postun): %releq_kernel
340 Provides: kernel(vboxnetflt) = %{version}-%{rel}
342 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
343 VirtualBox OSE Network Adapter Driver.
345 You should install this package in your Host OS.
347 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
348 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
351 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
352 Summary: VirtualBox OSE Network Filter Driver
353 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
354 Release: %{rel}@%{_kernel_ver_str}
356 Requires(post,postun): /sbin/depmod
357 Requires: dev >= 2.9.0-7
358 Requires: kernel%{_alt_kernel}-misc-vboxdrv
359 %if %{with dist_kernel}
360 %requires_releq_kernel
361 Requires(postun): %releq_kernel
363 Provides: kernel(vboxnetflt) = %{version}-%{rel}
365 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
366 VirtualBox OSE Network Filter Driver.
368 You should install this package in your Host OS.
370 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
371 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
372 dla systemu głównego.
374 %package -n kernel%{_alt_kernel}-misc-vboxsf
375 Summary: Host file system access (Shared Folders) for VirtualBox OSE
376 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
377 Release: %{rel}@%{_kernel_ver_str}
379 Requires(post,postun): /sbin/depmod
380 Requires: dev >= 2.9.0-7
381 Requires: kernel%{_alt_kernel}-misc-vboxguest
382 %if %{with dist_kernel}
383 %requires_releq_kernel
384 Requires(postun): %releq_kernel
386 Provides: kernel(vboxsf) = %{version}-%{rel}
387 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
389 %description -n kernel%{_alt_kernel}-misc-vboxsf
390 Host file system access (Shared Folders) for VirtualBox OSE.
392 You should install this package in your Guest OS.
394 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
395 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
396 głównego z poziomu systemu gościa.
398 %package -n kernel%{_alt_kernel}-misc-vboxvideo
399 Summary: DRM support for VirtualBox OSE
400 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
401 Release: %{rel}@%{_kernel_ver_str}
403 Requires(post,postun): /sbin/depmod
404 Requires: dev >= 2.9.0-7
405 %if %{with dist_kernel}
406 %requires_releq_kernel
407 %if "%{rpm_build_macros}" >= "1.531"
408 %requires_releq_kernel -n drm
410 Requires(postun): %releq_kernel
412 Provides: kernel(vboxvideo) = %{version}-%{rel}
414 %description -n kernel%{_alt_kernel}-misc-vboxvideo
415 DRM support for VirtualBox OSE.
417 You should install this package in your Guest OS.
419 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
420 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
423 %setup -q -n %{pname}-%{version}_OSE
431 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
432 -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
434 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
436 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
438 ../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
439 tar -zxf guest-modules.tar.gz -C GuestDrivers
441 ../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
442 tar -zxf host-modules.tar.gz -C HostDrivers
451 %if %{with userspace}
452 echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
454 --with-gcc="%{__cc}" \
455 --with-g++="%{__cxx}" \
456 %{!?with_doc:--disable-docs} \
458 --disable-hardening \
461 XSERVER_VERSION=$(rpm -q --queryformat '%{VERSION}\n' xorg-xserver-server-devel | awk -F. ' { print $1 $2 } ' 2> /dev/null || echo ERROR)
464 %{?with_verbose:KBUILD_VERBOSE=3} \
466 VBOX_VERSION_STRING='$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)'_PLD \
467 XSERVER_VERSION="$XSERVER_VERSION"
471 cd PLD-MODULE-BUILD/HostDrivers
472 %build_kernel_modules -m vboxdrv -C vboxdrv
473 %build_kernel_modules -m vboxnetadp -C vboxnetadp
474 %build_kernel_modules -m vboxnetflt -C vboxnetflt
477 %build_kernel_modules -m vboxguest -C vboxguest
478 cp -a vboxguest/Module.symvers vboxsf
479 %build_kernel_modules -m vboxsf -C vboxsf -c
480 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
482 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
486 rm -rf $RPM_BUILD_ROOT
488 %if %{with userspace}
489 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
490 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
491 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
493 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
494 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
496 rm -f $RPM_BUILD_ROOT/VBox.png
499 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
501 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
502 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
503 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
504 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
505 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
508 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/VBox.png,%{_pixmapsdir}/virtualbox.png}
509 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
511 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
512 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
513 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
514 # xorg other driver versions
515 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
516 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
518 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
519 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
520 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
521 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
522 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
523 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
524 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
526 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
527 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
529 install -d $RPM_BUILD_ROOT/%{_lib}/security
530 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
533 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
534 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
535 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
536 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
538 # IPRT Testcase / Tool - Source Code Massager.
539 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
542 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
546 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
547 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
548 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
549 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
550 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
551 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
552 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
553 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
556 # packaged by kernel part
557 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
561 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
562 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
563 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
564 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
565 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
566 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
567 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc
568 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc
569 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc
570 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
571 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
572 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
574 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
579 rm -rf $RPM_BUILD_ROOT
582 %groupadd -g 221 -r -f vbox
586 You must install vboxdrv kernel module for this software to work:
587 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
589 Additionally you might want to install:
590 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
591 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
593 On Guest Linux system you might want to install:
594 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
595 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
596 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
601 if [ "$1" = "0" ]; then
605 %post -n kernel%{_alt_kernel}-misc-vboxguest
606 %depmod %{_kernel_ver}
607 /sbin/chkconfig --add vboxguest
608 %service vboxguest restart "VirtualBox OSE Guest additions driver"
610 %postun -n kernel%{_alt_kernel}-misc-vboxguest
611 %depmod %{_kernel_ver}
613 %preun -n kernel%{_alt_kernel}-misc-vboxguest
614 if [ "$1" = "0" ]; then
615 %service vboxguest stop
616 /sbin/chkconfig --del vboxguest
619 %post -n kernel%{_alt_kernel}-misc-vboxdrv
620 %depmod %{_kernel_ver}
621 /sbin/chkconfig --add vboxdrv
622 %service vboxdrv restart "VirtualBox OSE Support Driver"
624 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
625 %depmod %{_kernel_ver}
627 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
628 if [ "$1" = "0" ]; then
629 %service vboxdrv stop
630 /sbin/chkconfig --del vboxdrv
633 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
634 %depmod %{_kernel_ver}
635 /sbin/chkconfig --add vboxnetadp
636 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
638 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
639 %depmod %{_kernel_ver}
641 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
642 if [ "$1" = "0" ]; then
643 %service vboxnetadp stop
644 /sbin/chkconfig --del vboxnetadp
647 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
648 %depmod %{_kernel_ver}
649 /sbin/chkconfig --add vboxnetflt
650 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
652 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
653 %depmod %{_kernel_ver}
655 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
656 if [ "$1" = "0" ]; then
657 %service vboxnetflt stop
658 /sbin/chkconfig --del vboxnetflt
661 %post -n kernel%{_alt_kernel}-misc-vboxsf
662 %depmod %{_kernel_ver}
663 /sbin/chkconfig --add vboxsf
664 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
666 %postun -n kernel%{_alt_kernel}-misc-vboxsf
667 %depmod %{_kernel_ver}
669 %preun -n kernel%{_alt_kernel}-misc-vboxsf
670 if [ "$1" = "0" ]; then
672 /sbin/chkconfig --del vboxsf
675 %post -n kernel%{_alt_kernel}-misc-vboxvideo
676 %depmod %{_kernel_ver}
678 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
679 %depmod %{_kernel_ver}
681 %if %{with userspace}
683 %defattr(644,root,root,755)
684 %{?with_doc:%doc %{outdir}/UserManual.pdf}
685 %dir %{_libdir}/VirtualBox
686 %dir %{_libdir}/VirtualBox/ExtensionPacks
687 %dir %{_libdir}/VirtualBox/additions
688 %dir %{_libdir}/VirtualBox/components
689 %dir %{_libdir}/VirtualBox/nls
690 %attr(755,root,root) %{_bindir}/VBoxBFE
691 %attr(755,root,root) %{_bindir}/VBoxHeadless
692 %attr(755,root,root) %{_bindir}/VBoxManage
693 %attr(755,root,root) %{_bindir}/VBoxSDL
694 %attr(755,root,root) %{_bindir}/VBoxSVC
695 %attr(755,root,root) %{_bindir}/VBoxTunctl
696 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
697 %attr(755,root,root) %{_bindir}/VirtualBox
698 %attr(755,root,root) %{_sbindir}/mount.vdi
699 %attr(755,root,root) %{_libdir}/VirtualBox/DBGCPlugInDiggers.so
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuth.so
701 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuthSimple.so
702 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
703 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxCreateUSBNode.sh
704 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDbg.so
705 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
706 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
707 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
708 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxExtPackHelperApp
709 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
710 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
711 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
712 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
713 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
714 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
715 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
716 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
717 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
718 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
719 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
720 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
722 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
723 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
725 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
726 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
727 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
728 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
729 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
730 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
731 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
732 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
733 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
734 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
735 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
736 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
737 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
738 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
739 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
740 %{_libdir}/VirtualBox/VBoxDD2GC.gc
741 %{_libdir}/VirtualBox/VBoxDDGC.gc
742 %{_libdir}/VirtualBox/VMMGC.gc
743 %{_libdir}/VirtualBox/VBoxDD2R0.r0
744 %{_libdir}/VirtualBox/VBoxDDR0.r0
745 %{_libdir}/VirtualBox/VMMR0.r0
746 %{_libdir}/VirtualBox/EfiThunk
747 %{_libdir}/VirtualBox/VBoxEFI32.fd
748 %{_libdir}/VirtualBox/VBoxEFI64.fd
749 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
750 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
751 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
752 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
753 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
754 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
755 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
756 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
757 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
758 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
759 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
760 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
761 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
762 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
763 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
764 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
765 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
766 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
767 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
768 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
769 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
770 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
771 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
772 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
773 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
774 %lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
775 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
776 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
777 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
778 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
779 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
780 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
781 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
782 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
783 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
784 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
785 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
786 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
787 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
788 %{_pixmapsdir}/virtualbox.png
789 %{_desktopdir}/*.desktop
790 %{_libdir}/VirtualBox/icons
791 %{_libdir}/VirtualBox/virtualbox.xml
794 %defattr(644,root,root,755)
795 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
798 %defattr(644,root,root,755)
799 # NOTE: unfinished, should contain .desktop files for starting up mouse
800 # integration and other desktop services
801 # NOTE: the filelist is incomplete too
802 %attr(755,root,root) %{_bindir}/VBoxService
804 %attr(755,root,root) %{_libdir}/VirtualBox/additions/autorun.sh
805 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd
806 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-service
807 %attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-x11
809 %files -n pam-pam_vbox
810 %defattr(644,root,root,755)
811 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
814 %defattr(644,root,root,755)
815 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
817 %files -n xorg-driver-input-vboxmouse
818 %defattr(644,root,root,755)
819 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
821 %files -n xorg-driver-video-vboxvideo
822 %defattr(644,root,root,755)
823 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
824 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
825 # vboxvideo_dri.so deps
826 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
827 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
828 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
829 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
830 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
831 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
835 %files -n kernel%{_alt_kernel}-misc-vboxguest
836 %defattr(644,root,root,755)
837 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
838 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
840 %files -n kernel%{_alt_kernel}-misc-vboxdrv
841 %defattr(644,root,root,755)
842 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
843 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
845 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
846 %defattr(644,root,root,755)
847 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
848 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
850 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
851 %defattr(644,root,root,755)
852 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
853 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
855 %files -n kernel%{_alt_kernel}-misc-vboxsf
856 %defattr(644,root,root,755)
857 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
858 %attr(755,root,root) %{_sbindir}/mount.vboxsf
859 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
861 %files -n kernel%{_alt_kernel}-misc-vboxvideo
862 %defattr(644,root,root,755)
863 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*