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