]> git.pld-linux.org Git - packages/VirtualBox.git/blame - VirtualBox.spec
- converted to UTF-8
[packages/VirtualBox.git] / VirtualBox.spec
CommitLineData
48363591 1#
2# TODO:
3# - Doesn't compile without /usr/src/linux/include/linux/autoconf.h so one must
4# symlink it before building package. This is because during compilation kernel
5# module is being build. Since we are building kernel modules later
6# sources/makefiles probably needs some hacking to drop this requirement.
7# - Home page says that some addons should be compiled, I don't see any except.
8# vboxaddon kernel module and {vboxmouse,vboxvideo)_drv.so. Are they required?
9# - BR list was a quickie so it may be incomplete or too big.
10# - R list probably required.
11# - .desktop file, some wrapper to launch VirtualBox (LD_LIBRARY_PATH must include
12# %{_libdir}/VirtualBox), maybe some init script to launch VBoxSVC.
13# - Devel stuff is not packaged yet.
eba4b2aa
JB
14# - Now its EA ix86 x8664, but looking into autogenerated env.sh suggests that
15# code may be compiled exclusively for i686.
32b670ab 16# - use %kernel_build macros
48363591 17#
18# Conditional build:
19%bcond_without dist_kernel # without distribution kernel
20%bcond_without smp # without SMP kernel modules
21#
22%define _snap 20070116
23Summary: VirtualBox
fd8fc899 24Summary(pl.UTF-8): VirtualBox
48363591 25Name: VirtualBox
26Version: 1.3.3
27Release: 0.1
28License: GPL v2
29Group: Applications/Emulators
30Source0: %{name}-%{version}_%{_snap}.tar.bz2
31# Source0-md5: 8554cf552c3ad07b2ae5229c3f8825dc
32Patch0: %{name}-configure.patch
33Patch1: %{name}-qt-paths.patch
34URL: http://www.virtualbox.org/
35BuildRequires: SDL-devel
e5aaadde 36BuildRequires: bash
48363591 37BuildRequires: bcc
38BuildRequires: bin86
eba4b2aa 39BuildRequires: gcc >= 5:3.2.3
48363591 40BuildRequires: iasl
41%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.7}
42BuildRequires: libIDL-devel
43BuildRequires: libuuid-devel
e5aaadde 44BuildRequires: libxslt-progs
45BuildRequires: qt-devel >= 6:3.3.6
48363591 46BuildRequires: rpmbuild(macros) >= 1.329
e5aaadde 47BuildRequires: xalan-c-devel >= 1.10.0
eba4b2aa 48#BuildRequires: xcursor-devel
e5aaadde 49BuildRequires: xerces-c-devel >= 2.6.0
eba4b2aa 50BuildRequires: xorg-lib-libXcursor-devel
e5aaadde 51BuildRequires: zlib-devel >= 1.2.1
eba4b2aa 52ExclusiveArch: %{ix86} %{x8664}
48363591 53BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
eba4b2aa 55%ifarch %{x8664}
5088674d 56%define _outdir amd64
57%else
58%define _outdir x86
59%endif
60
48363591 61%description
62InnoTek VirtualBox is a general-purpose full virtualizer for x86
63hardware. Targeted at server, desktop and embedded use, it is now the
64only professional-quality virtualization solution that is also Open
65Source Software.
66
67Some of the features of VirtualBox are:
68
69Modularity: VirtualBox has an extremely modular design with
70well-defined internal programming interfaces and a client/server
71design. This makes it easy to control it from several interfaces at
72once: for example, you can start a virtual machine in a typical
73virtual machine GUI and then control that machine from the command
74line. VirtualBox also comes with a full Software Development Kit: even
75though it is Open Source Software, you don't have to hack the source
76to write a new interface for VirtualBox.
77
78Virtual machine descriptions in XML: the configuration settings of
79virtual machines are stored entirely in XML and are independent of the
80local machines. Virtual machine definitions can therefore easily be
81ported to other computers.
82
fd8fc899
JR
83%description -l pl.UTF-8
84InnoTek VirtualBox jest emulatorem sprzętu x86. Kierowany do
85zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
86jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
87również jako Otwarte Oprogramowanie.
48363591 88
fd8fc899 89Przykładowe cechy VirtualBoksa:
48363591 90
fd8fc899
JR
91Modularność: VirtualBox jest wysoce zmodularyzowanym produktem z
92dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
93klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
94różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
95poziomu interfejsu graficznego, a później kontrolować ją z linii
96poleceń. VirtualBox dostarcza również pełny pakiet deweloperski, co
97pozwala stworzyć dowolny inny interfejs zarządzania maszyną wirtualną.
48363591 98
fd8fc899
JR
99Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
100wirtualnych są w całości przechowywane w XML-u i są niezależne od
101lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
102konfigurację maszyny wirtualnej na inny komputer.
48363591 103
104%package -n kernel%{_alt_kernel}-misc-vboxdrv
eba4b2aa 105Summary: Linux kernel module for VirtualBox
fd8fc899 106Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa
48363591 107Release: %{_rel}@%{_kernel_ver_str}
108Group: Base/Kernel
109Requires(post,postun): /sbin/depmod
110Requires: dev >= 2.9.0-7
111%if %{with dist_kernel}
112%requires_releq_kernel_up
113Requires(postun): %releq_kernel_up
114%endif
115Provides: kernel(vboxdrv) = %{version}-%{_rel}
116
117%description -n kernel%{_alt_kernel}-misc-vboxdrv
eba4b2aa 118Linux kernel module vboxdrv for VirtualBox.
48363591 119
fd8fc899
JR
120%description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
121Moduł jądra Linuksa vboxdrv dla VirtualBoksa.
48363591 122
123%package -n kernel%{_alt_kernel}-smp-misc-vboxdrv
eba4b2aa 124Summary: Linux SMP kernel module for VirtualBox
fd8fc899 125Summary(pl.UTF-8): Moduł jądra Linuksa SMP dla VirtualBoksa
48363591 126Release: %{_rel}@%{_kernel_ver_str}
127Group: Base/Kernel
128Requires(post,postun): /sbin/depmod
129Requires: dev >= 2.9.0-7
130%if %{with dist_kernel}
131%requires_releq_kernel_smp
132Requires(postun): %releq_kernel_smp
133%endif
134Provides: kernel(vboxdrv) = %{version}-%{_rel}
135
136%description -n kernel%{_alt_kernel}-smp-misc-vboxdrv
eba4b2aa 137Linux SMP kernel module vboxdrv for VirtualBox.
48363591 138
fd8fc899
JR
139%description -n kernel%{_alt_kernel}-smp-misc-vboxdrv -l pl.UTF-8
140Moduł jądra Linuksa SMP vboxdrv dla VirtualBoksa.
48363591 141
142%prep
143%setup -q -n vbox
144%patch0 -p0
145%patch1 -p0
146
147%build
106d8451 148./configure \
149 --with-gcc="%{__cc}" \
150 --with-g++="%{__cxx}"
48363591 151. ./env.sh
152kmk
153
5088674d 154cd out/linux.%{_outdir}/release/bin/src
48363591 155for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
156 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
157 exit 1
158 fi
159 rm -rf o
160 install -d o/include/linux
161 ln -sf %{_kernelsrcdir}/config-$cfg o/.config
162 ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
163 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
164%if %{with dist_kernel}
165 %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts
166%else
167 touch o/include/config/MARKER
168 ln -sf %{_kernelsrcdir}/scripts o/scripts
169%endif
170 ln -sf ../../include/VBox o/include/VBox
171 ln -sf ../../include/iprt o/include/iprt
172 %{__make} -C %{_kernelsrcdir} clean \
173 SYSSRC=%{_kernelsrcdir} \
174 SYSOUT=$PWD/o \
175 M=$PWD O=$PWD/o \
176 %{?with_verbose:V=1}
177 %{__make} -C %{_kernelsrcdir} modules \
178 CC="%{__cc}" CPP="%{__cpp}" \
179 SYSSRC=%{_kernelsrcdir} \
180 SYSOUT=$PWD/o \
181 M=$PWD O=$PWD/o \
182 %{?with_verbose:V=1}
183 mv vboxdrv.ko vboxdrv-$cfg.ko
184done
185
186%install
187rm -rf $RPM_BUILD_ROOT
188
189install -d \
190 $RPM_BUILD_ROOT%{_bindir} \
191 $RPM_BUILD_ROOT%{_libdir}/VirtualBox
192
5088674d 193install out/linux.%{_outdir}/release/bin/{VBox{BFE,Manage,SDL,SVC,XPCOMIPCD},VirtualBox} \
48363591 194 $RPM_BUILD_ROOT%{_bindir}
5088674d 195install out/linux.%{_outdir}/release/bin/VBox{DD,DD2,REM,REMImp,RT,VMM,XML,XPCOM,XPCOMIPCC}.so \
48363591 196 $RPM_BUILD_ROOT%{_libdir}/VirtualBox
5088674d 197install out/linux.%{_outdir}/release/bin/{VBox{DD,DD2}{GC.gc,R0.r0},VMM{GC.gc,R0.r0}} \
48363591 198 $RPM_BUILD_ROOT%{_libdir}/VirtualBox
199
200%if %{with kernel}
201install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
202%if %{with smp} && %{with dist_kernel}
5088674d 203install out/linux.%{_outdir}/release/bin/src/vboxdrv-smp.ko \
48363591 204 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/vboxdrv.ko
205%endif
206%endif
207
208%clean
209rm -rf $RPM_BUILD_ROOT
210
211%post -n kernel%{_alt_kernel}-misc-vboxdrv
212%depmod %{_kernel_ver}
213
214%postun -n kernel%{_alt_kernel}-misc-vboxdrv
215%depmod %{_kernel_ver}
216
217%if %{with smp} && %{with dist_kernel}
218%post -n kernel%{_alt_kernel}-smp-misc-vboxdrv
219%depmod %{_kernel_ver}smp
220
221%postun -n kernel%{_alt_kernel}-smp-misc-vboxdrv
222%depmod %{_kernel_ver}smp
223%endif
224
225%files
226%defattr(644,root,root,755)
227%attr(755,root,root) %{_bindir}/VBox*
228%attr(755,root,root) %{_bindir}/VirtualBox
48363591 229%{_libdir}/VirtualBox
230
231%files -n kernel%{_alt_kernel}-misc-vboxdrv
232%defattr(644,root,root,755)
233
234%if %{with smp} && %{with dist_kernel}
235%files -n kernel%{_alt_kernel}-smp-misc-vboxdrv
236%defattr(644,root,root,755)
237%endif
This page took 0.128283 seconds and 4 git commands to generate.