]> git.pld-linux.org Git - packages/VirtualBox.git/blob - VirtualBox.spec
d5c4fafd47cc918be78ae1e50d0711e283c1f3c2
[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 You should install this package in your Guest OS.
282
283 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
284 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
285 systemu gościa.
286
287 %package -n kernel%{_alt_kernel}-misc-vboxdrv
288 Summary:        VirtualBox OSE Support Driver
289 Summary(pl.UTF-8):      Moduł jądra Linuksa dla VirtualBoksa OSE
290 Release:        %{rel}@%{_kernel_ver_str}
291 Group:          Base/Kernel
292 Requires(post,postun):  /sbin/depmod
293 Requires:       dev >= 2.9.0-7
294 %if %{with dist_kernel}
295 %requires_releq_kernel
296 Requires(postun):       %releq_kernel
297 %endif
298 Provides:       kernel(vboxdrv) = %{version}-%{rel}
299
300 %description -n kernel%{_alt_kernel}-misc-vboxdrv
301 VirtualBox OSE Support Driver.
302
303 You should install this package in your Host OS.
304
305 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
306 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
307 systemu głównego.
308
309 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
310 Summary:        VirtualBox OSE Network Adapter Driver
311 Summary(pl.UTF-8):      Moduł jądra Linuksa dla VirtualBoksa OSE
312 Release:        %{rel}@%{_kernel_ver_str}
313 Group:          Base/Kernel
314 Requires(post,postun):  /sbin/depmod
315 Requires:       dev >= 2.9.0-7
316 Requires:       kernel%{_alt_kernel}-misc-vboxdrv
317 %if %{with dist_kernel}
318 %requires_releq_kernel
319 Requires(postun):       %releq_kernel
320 %endif
321 Provides:       kernel(vboxnetflt) = %{version}-%{rel}
322
323 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
324 VirtualBox OSE Network Adapter Driver.
325
326 You should install this package in your Host OS.
327
328 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
329 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
330 sieciowej.
331
332 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
333 Summary:        VirtualBox OSE Network Filter Driver
334 Summary(pl.UTF-8):      Moduł jądra Linuksa dla VirtualBoksa OSE
335 Release:        %{rel}@%{_kernel_ver_str}
336 Group:          Base/Kernel
337 Requires(post,postun):  /sbin/depmod
338 Requires:       dev >= 2.9.0-7
339 Requires:       kernel%{_alt_kernel}-misc-vboxdrv
340 %if %{with dist_kernel}
341 %requires_releq_kernel
342 Requires(postun):       %releq_kernel
343 %endif
344 Provides:       kernel(vboxnetflt) = %{version}-%{rel}
345
346 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
347 VirtualBox OSE Network Filter Driver.
348
349 You should install this package in your Host OS.
350
351 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
352 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
353 dla systemu głównego.
354
355 %package -n kernel%{_alt_kernel}-misc-vboxsf
356 Summary:        Host file system access (Shared Folders) for VirtualBox OSE
357 Summary(pl.UTF-8):      Moduł jądra Linuksa dla VirtualBoksa OSE
358 Release:        %{rel}@%{_kernel_ver_str}
359 Group:          Base/Kernel
360 Requires(post,postun):  /sbin/depmod
361 Requires:       dev >= 2.9.0-7
362 Requires:       kernel%{_alt_kernel}-misc-vboxguest
363 %if %{with dist_kernel}
364 %requires_releq_kernel
365 Requires(postun):       %releq_kernel
366 %endif
367 Provides:       kernel(vboxsf) = %{version}-%{rel}
368 Obsoletes:      kernel%{_alt_kernel}-misc-vboxvfs
369
370 %description -n kernel%{_alt_kernel}-misc-vboxsf
371 Host file system access (Shared Folders) for VirtualBox OSE.
372
373 You should install this package in your Guest OS.
374
375 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
376 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
377 głównego z poziomu systemu gościa.
378
379 %package -n kernel%{_alt_kernel}-misc-vboxvideo
380 Summary:        DRM support for VirtualBox OSE
381 Summary(pl.UTF-8):      Moduł jądra Linuksa dla VirtualBoksa OSE
382 Release:        %{rel}@%{_kernel_ver_str}
383 Group:          Base/Kernel
384 Requires(post,postun):  /sbin/depmod
385 Requires:       dev >= 2.9.0-7
386 %if %{with dist_kernel}
387 %requires_releq_kernel
388 %if "%{rpm_build_macros}" >= "1.531"
389 %requires_releq_kernel -n drm
390 %endif
391 Requires(postun):       %releq_kernel
392 %endif
393 Provides:       kernel(vboxvideo) = %{version}-%{rel}
394
395 %description -n kernel%{_alt_kernel}-misc-vboxvideo
396 DRM support for VirtualBox OSE.
397
398 You should install this package in your Guest OS.
399
400 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
401 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
402
403 %prep
404 %setup -q -n %{pname}-%{version}_OSE
405 %patch0 -p1
406 %patch1 -p1
407 %patch2 -p1
408 %patch3 -p1
409 %patch4 -p1
410
411 %{__sed} -i -e 's,$VBOX_DOC_PATH,%{_docdir}/%{name}-%{version},' src/VBox/Installer/linux/virtualbox.desktop
412 %{__sed} -i -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/linux/virtualbox.desktop
413
414 cp -a %{SOURCE1} .
415 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
416
417 rm -rf PLD-MODULE-BUILD && mkdir PLD-MODULE-BUILD && cd PLD-MODULE-BUILD
418 ../src/VBox/Additions/linux/export_modules modules.tar.gz
419         tar -zxf modules.tar.gz && rm -f modules.tar.gz
420 ../src/VBox/HostDrivers/linux/export_modules modules.tar.gz --without-hardening && \
421         tar -zxf modules.tar.gz && rm -f modules.tar.gz
422
423 %build
424 %if %{with userspace}
425 ./configure \
426         --with-gcc="%{__cc}" \
427         --with-g++="%{__cxx}" \
428         --disable-hardening \
429         --disable-kmods
430
431 . ./env.sh && \
432 kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
433 %endif
434
435 %if %{with kernel}
436 cd PLD-MODULE-BUILD
437 %build_kernel_modules -m vboxguest -C vboxguest
438 %build_kernel_modules -m vboxdrv -C .vbox_modules/vboxdrv
439 %build_kernel_modules -m vboxnetadp -C .vbox_modules/vboxnetadp
440 %build_kernel_modules -m vboxnetflt -C .vbox_modules/vboxnetflt
441 cp -a vboxguest/Module.symvers vboxsf
442 %build_kernel_modules -m vboxsf -C vboxsf -c
443 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
444 cd ..
445 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c -o mount.vboxsf
446 %endif
447
448 %install
449 rm -rf $RPM_BUILD_ROOT
450
451 %if %{with userspace}
452 install -d \
453         $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
454         $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
455
456 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
457 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
458         l=l
459         rm -f $RPM_BUILD_ROOT/VBox.png
460 fi
461
462 cp -a$l %{outdir} $RPM_BUILD_ROOT%{_libdir}/%{pname}
463
464 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
465 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
466 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
467 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
468         ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
469 done
470
471 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
472 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
473
474 %if "%{pld_release}" == "ti"
475 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_17.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
476 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_17.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
477 %else
478 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_18.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
479 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_18.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
480 %endif
481 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
482 # xorg other driver versions
483 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
484 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
485
486 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
487 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
488 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
489 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
490 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
491 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
492 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
493
494 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
495 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
496
497 install -d $RPM_BUILD_ROOT/%{_lib}/security
498 mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
499
500 # cleanup unpackaged
501 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
502 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
503 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
504 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
505
506 # IPRT Testcase / Tool - Source Code Massager.
507 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
508
509 # Guest Only Tools
510 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
511
512 # unknown - checkme
513 %if 1
514 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
515 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
516 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
517 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
518 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
519 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
520 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
521 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
522 %endif
523
524 # packaged by kernel part
525 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
526 %endif
527
528 %if %{with kernel}
529 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
530 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
531 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
532 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
533 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
534 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
535 %install_kernel_modules -m PLD-MODULE-BUILD/.vbox_modules/vboxdrv/vboxdrv -d misc
536 %install_kernel_modules -m PLD-MODULE-BUILD/vboxguest/vboxguest -d misc
537 %install_kernel_modules -m PLD-MODULE-BUILD/.vbox_modules/vboxnetadp/vboxnetadp -d misc
538 %install_kernel_modules -m PLD-MODULE-BUILD/.vbox_modules/vboxnetflt/vboxnetflt -d misc
539 %install_kernel_modules -m PLD-MODULE-BUILD/vboxsf/vboxsf -d misc
540 %install_kernel_modules -m PLD-MODULE-BUILD/vboxvideo_drm/vboxvideo -d misc
541
542 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
543
544 %endif
545
546 %clean
547 rm -rf $RPM_BUILD_ROOT
548
549 %pre
550 %groupadd -g 221 -r -f vbox
551
552 %post
553 cat << 'EOF'
554 You must install vboxdrv kernel module for this software to work:
555     kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
556
557 Additionally you might want to install:
558     kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
559     kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
560
561 On Guest Linux system you might want to install:
562     kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
563     kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
564     kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
565
566 EOF
567
568 %postun
569 if [ "$1" = "0" ]; then
570         %groupremove vbox
571 fi
572
573 %post   -n kernel%{_alt_kernel}-misc-vboxguest
574 %depmod %{_kernel_ver}
575 /sbin/chkconfig --add vboxguest
576 %service vboxguest restart "VirtualBox OSE Guest additions driver"
577
578 %postun -n kernel%{_alt_kernel}-misc-vboxguest
579 %depmod %{_kernel_ver}
580
581 %preun -n kernel%{_alt_kernel}-misc-vboxguest
582 if [ "$1" = "0" ]; then
583         %service vboxguest stop
584         /sbin/chkconfig --del vboxguest
585 fi
586
587 %post   -n kernel%{_alt_kernel}-misc-vboxdrv
588 %depmod %{_kernel_ver}
589 /sbin/chkconfig --add vboxdrv
590 %service vboxdrv restart "VirtualBox OSE Support Driver"
591
592 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
593 %depmod %{_kernel_ver}
594
595 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
596 if [ "$1" = "0" ]; then
597         %service vboxdrv stop
598         /sbin/chkconfig --del vboxdrv
599 fi
600
601 %post   -n kernel%{_alt_kernel}-misc-vboxnetadp
602 %depmod %{_kernel_ver}
603 /sbin/chkconfig --add vboxnetadp
604 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
605
606 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
607 %depmod %{_kernel_ver}
608
609 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
610 if [ "$1" = "0" ]; then
611         %service vboxnetadp stop
612         /sbin/chkconfig --del vboxnetadp
613 fi
614
615 %post   -n kernel%{_alt_kernel}-misc-vboxnetflt
616 %depmod %{_kernel_ver}
617 /sbin/chkconfig --add vboxnetflt
618 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
619
620 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
621 %depmod %{_kernel_ver}
622
623 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
624 if [ "$1" = "0" ]; then
625         %service vboxnetflt stop
626         /sbin/chkconfig --del vboxnetflt
627 fi
628
629 %post   -n kernel%{_alt_kernel}-misc-vboxsf
630 %depmod %{_kernel_ver}
631 /sbin/chkconfig --add vboxsf
632 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
633
634 %postun -n kernel%{_alt_kernel}-misc-vboxsf
635 %depmod %{_kernel_ver}
636
637 %preun -n kernel%{_alt_kernel}-misc-vboxsf
638 if [ "$1" = "0" ]; then
639         %service vboxsf stop
640         /sbin/chkconfig --del vboxsf
641 fi
642
643 %post   -n kernel%{_alt_kernel}-misc-vboxvideo
644 %depmod %{_kernel_ver}
645
646 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
647 %depmod %{_kernel_ver}
648
649 %if %{with userspace}
650 %files
651 %defattr(644,root,root,755)
652 %doc UserManual.pdf
653 %dir %{_libdir}/VirtualBox
654 %dir %{_libdir}/VirtualBox/additions
655 %dir %{_libdir}/VirtualBox/components
656 %dir %{_libdir}/VirtualBox/nls
657 %attr(755,root,root) %{_bindir}/VBoxBFE
658 %attr(755,root,root) %{_bindir}/VBoxHeadless
659 %attr(755,root,root) %{_bindir}/VBoxManage
660 %attr(755,root,root) %{_bindir}/VBoxSDL
661 %attr(755,root,root) %{_bindir}/VBoxSVC
662 %attr(755,root,root) %{_bindir}/VBoxTunctl
663 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
664 %attr(755,root,root) %{_bindir}/VirtualBox
665 %attr(755,root,root) %{_sbindir}/mount.vdi
666 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
667 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
668 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
669 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
670 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
671 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
672 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
673 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
674 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
675 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
676 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
677 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
678 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
679 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
680 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
681 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
682 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
683 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
684 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
685 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
686 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
687 %ifarch %{ix86}
688 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
689 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
690 %endif
691 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
692 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
693 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
694 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
695 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
696 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
697 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
698 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
699 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
700 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
701 %{_libdir}/VirtualBox/VBoxDD2GC.gc
702 %{_libdir}/VirtualBox/VBoxDDGC.gc
703 %{_libdir}/VirtualBox/VMMGC.gc
704 %{_libdir}/VirtualBox/VBoxDD2R0.r0
705 %{_libdir}/VirtualBox/VBoxDDR0.r0
706 %{_libdir}/VirtualBox/VMMR0.r0
707 %{_libdir}/VirtualBox/EfiThunk
708 %{_libdir}/VirtualBox/VBoxEFI32.fd
709 %{_libdir}/VirtualBox/VBoxEFI64.fd
710 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
711 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
712 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
713 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
714 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
715 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
716 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
717 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
718 %lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
719 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
720 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
721 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
722 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
723 %lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
724 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
725 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
726 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
727 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
728 %lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
729 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
730 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
731 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
732 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
733 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
734 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
735 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
736 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
737 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
738 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
739 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
740 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
741 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
742 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
743 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
744 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
745 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
746 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
747 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
748 %{_pixmapsdir}/VBox.png
749 %{_desktopdir}/*.desktop
750
751 %files additions
752 %defattr(644,root,root,755)
753 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
754
755 %files guest
756 %defattr(644,root,root,755)
757 %attr(755,root,root) %{_bindir}/VBoxService
758
759 %files -n pam-pam_vbox
760 %defattr(644,root,root,755)
761 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
762
763 %files udev
764 %defattr(644,root,root,755)
765 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
766
767 %files -n xorg-driver-input-vboxmouse
768 %defattr(644,root,root,755)
769 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
770
771 %files -n xorg-driver-video-vboxvideo
772 %defattr(644,root,root,755)
773 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
774 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
775 # vboxvideo_dri.so deps
776 %attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
777 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
778 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
779 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
780 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
781 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
782 %endif
783
784 %if %{with kernel}
785 %files -n kernel%{_alt_kernel}-misc-vboxguest
786 %defattr(644,root,root,755)
787 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
788 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
789
790 %files -n kernel%{_alt_kernel}-misc-vboxdrv
791 %defattr(644,root,root,755)
792 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
793 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
794
795 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
796 %defattr(644,root,root,755)
797 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
798 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
799
800 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
801 %defattr(644,root,root,755)
802 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
803 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
804
805 %files -n kernel%{_alt_kernel}-misc-vboxsf
806 %defattr(644,root,root,755)
807 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
808 %attr(755,root,root) %{_sbindir}/mount.vboxsf
809 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
810
811 %files -n kernel%{_alt_kernel}-misc-vboxvideo
812 %defattr(644,root,root,755)
813 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*
814 %endif
This page took 0.090411 seconds and 3 git commands to generate.