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