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