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