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