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