]> git.pld-linux.org Git - packages/VirtualBox.git/blob - VirtualBox.spec
- add vboxnetctl to udev rules
[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 # - Add chkconfig script for vboxnetadp.
9 #
10 # Conditional build:
11 %bcond_without  dist_kernel     # without distribution kernel
12 %bcond_without  kernel          # don't build kernel module
13 %bcond_without  userspace       # don't build userspace package
14 %bcond_with     force_userspace # force userspace build (useful if alt_kernel is set)
15 %bcond_with     verbose
16
17 %if %{without kernel}
18 %undefine       with_dist_kernel
19 %endif
20 %if "%{_alt_kernel}" != "%{nil}"
21 %undefine       with_userspace
22 %endif
23 %if %{with force_userspace}
24 %define         with_userspace 1
25 %endif
26 %if %{without userspace}
27 # nothing to be placed to debuginfo package
28 %define         _enable_debug_packages  0
29 %endif
30
31 %define         rel             4
32 %define         pname   VirtualBox
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.1.2
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:  e7808f16114f5b1a65aa2df1aa33e1a7
42 Source1:        http://download.virtualbox.org/virtualbox/%{version}/UserManual.pdf
43 # Source1-md5:  052357bb684515035b3e561b35a1d6f2
44 Source2:        http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
45 # Source2-md5:  d1ac5c53fb889338849134e07a6bc16f
46 Source3:        %{pname}-vboxdrv.init
47 Source4:        %{pname}-vboxguest.init
48 Source5:        %{pname}-vboxnetflt.init
49 Source6:        %{pname}-vboxvfs.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", NAME="%k", GROUP="vbox", MODE="0660"
361 KERNEL=="vboxguest", NAME="%k", GROUP="vbox", MODE="0660"
362 KERNEL=="vboxnetctl", NAME="%k", 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_kernel_modules -m PLD-MODULE-BUILD/vboxdrv/vboxdrv -d misc
474 %install_kernel_modules -m PLD-MODULE-BUILD/vboxguest/vboxguest -d misc
475 %install_kernel_modules -m PLD-MODULE-BUILD/vboxnetadp/vboxnetadp -d misc
476 %install_kernel_modules -m PLD-MODULE-BUILD/vboxnetflt/vboxnetflt -d misc
477 %install_kernel_modules -m PLD-MODULE-BUILD/vboxvfs/vboxvfs -d misc
478 %install_kernel_modules -m PLD-MODULE-BUILD/vboxvideo_drm/vboxvideo -d misc
479
480 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
481
482 cat <<'EOF' > $RPM_BUILD_ROOT/etc/modprobe.d/vboxvfs.conf
483 # Filesystem name has got it's name from Shared Folders, while module is from VFS
484 alias vboxsf vboxvfs
485 EOF
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-vboxvfs-%{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
554 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
555 %depmod %{_kernel_ver}
556
557 %post   -n kernel%{_alt_kernel}-misc-vboxnetflt
558 %depmod %{_kernel_ver}
559 /sbin/chkconfig --add vboxnetflt
560 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
561
562 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
563 %depmod %{_kernel_ver}
564
565 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
566 if [ "$1" = "0" ]; then
567         %service vboxnetflt stop
568         /sbin/chkconfig --del vboxnetflt
569 fi
570
571 %post   -n kernel%{_alt_kernel}-misc-vboxvfs
572 %depmod %{_kernel_ver}
573 /sbin/chkconfig --add vboxvfs
574 %service vboxvfs restart "VirtualBox OSE Host file system access VFS"
575
576 %postun -n kernel%{_alt_kernel}-misc-vboxvfs
577 %depmod %{_kernel_ver}
578
579 %preun -n kernel%{_alt_kernel}-misc-vboxvfs
580 if [ "$1" = "0" ]; then
581         %service vboxvfs stop
582         /sbin/chkconfig --del vboxvfs
583 fi
584
585 %post   -n kernel%{_alt_kernel}-misc-vboxvideo
586 %depmod %{_kernel_ver}
587
588 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
589 %depmod %{_kernel_ver}
590
591 %if %{with userspace}
592 %files
593 %defattr(644,root,root,755)
594 %doc UserManual.pdf
595 %dir %{_libdir}/VirtualBox
596 %dir %{_libdir}/VirtualBox/additions
597 %dir %{_libdir}/VirtualBox/components
598 %dir %{_libdir}/VirtualBox/nls
599 %attr(755,root,root) %{_bindir}/VBoxBFE
600 %attr(755,root,root) %{_bindir}/VBoxHeadless
601 %attr(755,root,root) %{_bindir}/VBoxManage
602 %attr(755,root,root) %{_bindir}/VBoxSDL
603 %attr(755,root,root) %{_bindir}/VBoxSVC
604 %attr(755,root,root) %{_bindir}/VBoxTunctl
605 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
606 %attr(755,root,root) %{_bindir}/VirtualBox
607 %attr(755,root,root) /sbin/mount.vdi
608 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
609 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
610 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
611 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
612 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
613 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
614 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
615 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
616 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
617 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
618 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
619 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
620 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
621 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
622 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
623 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
624 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
625 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
626 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython.so
627 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython2_6.so
628 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
629 %ifarch %{ix86}
630 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
631 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
632 %endif
633 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
634 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
635 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
636 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
637 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
638 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
639 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
640 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
641 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
642 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
643 %{_libdir}/VirtualBox/VBoxDD2GC.gc
644 %{_libdir}/VirtualBox/VBoxDDGC.gc
645 %{_libdir}/VirtualBox/VMMGC.gc
646 %{_libdir}/VirtualBox/VBoxDD2R0.r0
647 %{_libdir}/VirtualBox/VBoxDDR0.r0
648 %{_libdir}/VirtualBox/VMMR0.r0
649 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
650 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
651 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
652 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
653 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
654 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
655 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
656 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
657 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
658 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
659 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
660 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
661 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
662 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
663 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
664 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
665 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
666 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
667 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
668 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
669 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
670 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
671 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
672 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
673 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
674 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
675 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
676 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
677 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
678 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
679 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
680 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
681 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
682 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
683 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
684 %{_pixmapsdir}/VBox.png
685 %{_desktopdir}/*.desktop
686
687 %files additions
688 %defattr(644,root,root,755)
689 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
690
691 %files udev
692 %defattr(644,root,root,755)
693 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
694
695 %files -n xorg-driver-input-vboxmouse
696 %defattr(644,root,root,755)
697 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
698
699 %files -n xorg-driver-video-vboxvideo
700 %defattr(644,root,root,755)
701 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
702 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
703 # vboxvideo_dri.so deps
704 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
705 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
706 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
707 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
708 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
709 %endif
710
711 %if %{with kernel}
712 %files -n kernel%{_alt_kernel}-misc-vboxguest
713 %defattr(644,root,root,755)
714 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
715 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
716
717 %files -n kernel%{_alt_kernel}-misc-vboxdrv
718 %defattr(644,root,root,755)
719 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
720 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
721
722 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
723 %defattr(644,root,root,755)
724 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
725
726 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
727 %defattr(644,root,root,755)
728 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
729 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
730
731 %files -n kernel%{_alt_kernel}-misc-vboxvfs
732 %defattr(644,root,root,755)
733 %attr(754,root,root) /etc/rc.d/init.d/vboxvfs
734 %attr(755,root,root) %{_sbindir}/mount.vboxsf
735 /etc/modprobe.d/vboxvfs.conf
736 /lib/modules/%{_kernel_ver}/misc/vboxvfs.ko*
737
738 %files -n kernel%{_alt_kernel}-misc-vboxvideo
739 %defattr(644,root,root,755)
740 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*
741 %endif
This page took 0.124315 seconds and 4 git commands to generate.