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