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