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