3 # - most of the qemu config options aren't detected (curses, NPTL, vde, fdt)
4 # - package the ocaml stuff
6 %define xen_extfiles_url http://xenbits.xensource.com/xen-extfiles
7 Summary: Xen - a virtual machine monitor
8 Summary(pl.UTF-8): Xen - monitor maszyny wirtualnej
13 Group: Applications/System
14 Source0: http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
15 # Source0-md5: 73561faf3c1b5e36ec5c089b5db848ad
17 Source10: %{xen_extfiles_url}/lwip-1.3.0.tar.gz
18 # Source10-md5: 36cc57650cffda9a0269493be2a169bb
19 Source11: %{xen_extfiles_url}/newlib-1.16.0.tar.gz
20 # Source11-md5: bf8f1f9e3ca83d732c00a79a6ef29bc4
21 Source12: %{xen_extfiles_url}/zlib-1.2.3.tar.gz
22 # Source12-md5: debc62758716a169df9f62e6ab2bc634
23 Source13: %{xen_extfiles_url}/pciutils-2.2.9.tar.bz2
24 # Source13-md5: cec05e7785497c5e19da2f114b934ffd
25 Source14: %{xen_extfiles_url}/grub-0.97.tar.gz
26 # Source14-md5: cd3f3eb54446be6003156158d51f4884
27 Source15: %{xen_extfiles_url}/ipxe-git-v1.0.0.tar.gz
28 # Source15-md5: fb7df96781d337899066d82059346885
29 Source30: proc-xen.mount
30 Source31: var-lib-xenstored.mount
31 Source32: blktapctrl.service
32 Source33: blktapctrl.sysconfig
33 Source34: xenconsoled.service
34 Source35: xenconsoled.sysconfig
35 Source36: xenstored.service
36 Source37: xenstored.sysconfig
37 Source38: xenstored.tmpfiles
38 Source39: xend.service
39 Source40: xend.tmpfiles
40 Source41: xen-watchdog.service
43 Source51: xenconsoled.init
44 Source52: xenstored.init
45 Source53: xen-watchdog.init
46 Source54: xendomains.init
47 Source55: xen.logrotate
48 Patch0: %{name}-python_scripts.patch
49 Patch1: %{name}-symbols.patch
50 Patch2: %{name}-curses.patch
51 Patch3: %{name}-gcc.patch
52 Patch4: %{name}-xz.patch
53 URL: http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html
54 BuildRequires: SDL-devel
57 BuildRequires: curl-devel
58 BuildRequires: e2fsprogs-devel
59 BuildRequires: gcc >= 5:3.4
60 BuildRequires: gettext-devel
61 BuildRequires: latex2html
62 BuildRequires: libidn-devel
63 BuildRequires: ncurses-devel
64 BuildRequires: pciutils-devel
65 BuildRequires: pkgconfig
66 BuildRequires: python-devel
67 BuildRequires: rpm-pythonprov
68 BuildRequires: rpmbuild(macros) >= 1.268
69 #BuildRequires: texlive-dvips
70 #BuildRequires: texlive-latex-data
71 BuildRequires: texlive-latex-psnfss
72 BuildRequires: transfig
74 BuildRequires: zlib-devel
75 Requires(post,preun): /sbin/chkconfig
76 Requires: %{name}-libs = %{version}-%{release}
77 Requires: ZopeInterface
78 Requires: bridge-utils
85 Requires: python-%{name} = %{version}-%{release}
92 ExclusiveArch: %{ix86} %{x8664}
93 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
95 # some PPC/SPARC boot image in ELF format
96 %define _noautostrip .*%{_datadir}/xen/qemu/openbios-.*
99 This package contains the Xen hypervisor and Xen tools, needed to run
100 virtual machines on x86 systems, together with the kernel-xen*
101 packages. Information on how to use Xen can be found at the Xen
104 Virtualisation can be used to run multiple versions or multiple Linux
105 distributions on one system, or to test untrusted applications in a
106 sandboxed environment. Note that the Xen technology is still in
107 development, and this RPM has received extremely little testing. Don't
108 be surprised if this RPM eats your data, drinks your coffee or makes
109 fun of you in front of your friends.
111 %description -l pl.UTF-8
112 Ten pakiet zawiera nadzorcę oraz narzędzia Xen, potrzebne do
113 uruchamiania wirtualnych maszyn w systemach x86, wraz z pakietami
114 kernel-xen*. Informacje jak używać Xena można znaleźć na stronach
117 Wirtualizacja może być używana do uruchamiania wielu wersji lub wielu
118 dystrybucji Linuksa na jednym systemie lub do testowania nie zaufanych
119 aplikacji w odizolowanym środowisku. Należy zauważyć, że technologia
120 Xen jest ciągle rozwijana, a ten RPM był słabo testowany. Nie należy
121 być zdziwionym, jeśli ten pakiet zje dane, wypije całą kawę czy będzie
122 się wyśmiewał w obecności przyjaciół.
125 Summary: xen libraries
126 Summary(pl.UTF-8): Biblioteki xena
132 %description libs -l pl.UTF-8
136 Summary: Header files for xen
137 Summary(pl.UTF-8): Pliki nagłówkowe xena
138 Group: Development/Libraries
139 Requires: %{name}-libs = %{version}-%{release}
142 Header files for xen.
144 %description devel -l pl.UTF-8
145 Pliki nagłówkowe xena.
148 Summary: Static xen libraries
149 Summary(pl.UTF-8): Statyczne biblioteki xena
150 Group: Development/Libraries
151 Requires: %{name}-devel = %{version}-%{release}
154 Static xen libraries.
156 %description static -l pl.UTF-8
157 Statyczne biblioteki xena.
161 Summary(pl.UTF-8): Demon xend
167 %description xend -l pl.UTF-8
170 %package -n python-xen
171 Summary: xen Python modules
172 Summary(pl.UTF-8): Moduły Pythona dla xena
174 Conflicts: xen < 3.2.1-0.3
176 %description -n python-xen
179 %description -n python-xen -l pl.UTF-8
180 Moduły Pythona dla xena.
182 %package -n bash-completion-%{name}
183 Summary: bash-completion for xen
184 Group: Applications/Shells
185 Requires: %{name} = %{version}-%{release}
186 Requires: bash-completion
188 %description -n bash-completion-%{name}
189 This package provides bash-completion for xen.
199 %{__rm} -v tools/check/*.orig
202 ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom
203 ln -s %{PATCH23} stubdom/grub.patches/99grub-ext4-support.patch
204 ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
207 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
208 export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
210 %{__make} dist-xen dist-tools dist-docs \
217 %{__make} -j1 dist-stubdom \
222 rm -rf $RPM_BUILD_ROOT
223 install -d $RPM_BUILD_ROOT/etc/xen/examples \
224 $RPM_BUILD_ROOT{/usr/lib/tmpfiles.d,%{systemdunitdir}}
226 %{__make} -j1 install-xen install-tools install-stubdom install-docs \
228 DESTDIR=$RPM_BUILD_ROOT
230 install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
231 install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
232 install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service
233 install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl.sysconfig
234 install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
235 install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled.sysconfig
236 install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
237 install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored.sysconfig
238 install %{SOURCE38} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xenstored.conf
239 install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service
240 install %{SOURCE40} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xend.conf
241 install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
243 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
244 install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
245 install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled
246 install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored
247 install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog
248 install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
249 #install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
251 mv $RPM_BUILD_ROOT/etc/xen/{xmexample*,examples}
253 cp -p tools/blktap/README{,.blktap}
254 cp -p tools/xenmon/README{,.xenmon}
256 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
257 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
261 # remove unneeded files
262 %{__rm} $RPM_BUILD_ROOT/boot/xen-4.1.gz
263 %{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz
264 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
265 %{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
268 rm -rf $RPM_BUILD_ROOT
271 /sbin/chkconfig --add xen-watchdog
272 /sbin/chkconfig --add xenconsoled
273 /sbin/chkconfig --add xenstored
274 /sbin/chkconfig --add xendomains
277 if [ "$1" = "0" ]; then
278 %service xendomains stop
279 /sbin/chkconfig --del xendomains
281 %service xenconsoled stop
282 /sbin/chkconfig --del xenconsoled
284 %service xenstored stop
285 /sbin/chkconfig --del xenstored
287 %service xen-watchdog stop
288 /sbin/chkconfig --del xen-watchdog
292 /sbin/chkconfig --add xend
295 if [ "$1" = "0" ]; then
297 /sbin/chkconfig --del xend
300 %post libs -p /sbin/ldconfig
301 %postun libs -p /sbin/ldconfig
304 %defattr(644,root,root,755)
305 %doc COPYING README* docs/misc/*
307 %doc tools/blktap/README.blktap tools/xenmon/README.xenmon
308 %doc tools/ioemu-dir/*.html
309 /boot/%{name}-syms-%{version}
310 /boot/%{name}-%{version}.gz
312 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
313 %attr(754,root,root) /etc/rc.d/init.d/xen-watchdog
314 %attr(754,root,root) /etc/rc.d/init.d/xenconsoled
315 %attr(754,root,root) /etc/rc.d/init.d/xenstored
316 %attr(754,root,root) /etc/rc.d/init.d/xendomains
317 %{systemdunitdir}/proc-xen.mount
318 %{systemdunitdir}/var-lib-xenstored.mount
319 %{systemdunitdir}/blktapctrl.service
320 %{systemdunitdir}/xen-watchdog.service
321 %{systemdunitdir}/xenconsoled.service
322 %{systemdunitdir}/xenstored.service
323 %dir %{_sysconfdir}/xen
324 %dir %{_sysconfdir}/xen/auto
325 %dir %{_sysconfdir}/xen/examples
326 %dir %{_sysconfdir}/xen/scripts
327 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/*
328 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/examples/*
329 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README*
330 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool
331 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf
332 %config(noreplace) %verify(not md5 mtime size) /etc/udev/*
333 %attr(755,root,root) %{_bindir}/*
334 %attr(755,root,root) %{_sbindir}/[bfgikloqtv]*
335 %attr(755,root,root) %{_sbindir}/xen??*
336 %attr(755,root,root) %{_sbindir}/xl
337 %attr(755,root,root) %{_sbindir}/xsview
338 %dir %{_libdir}/%{name}
339 %dir %{_libdir}/%{name}/bin
340 %attr(744,root,root) %{_libdir}/%{name}/bin/*
341 %if "%{_lib}" != "lib"
342 %dir %{_prefix}/lib/%{name}
343 %dir %{_prefix}/lib/%{name}/bin
344 %attr(755,root,root) %{_prefix}/lib/%{name}/bin/qemu-dm
345 %attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdom-dm
346 %attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdompath.sh
348 %dir %{_prefix}/lib/%{name}/boot
349 %{_prefix}/lib/%{name}/boot/ioemu-stubdom.gz
350 %{_prefix}/lib/%{name}/boot/pv-grub-x86_32.gz
351 %{_prefix}/lib/%{name}/boot/pv-grub-x86_64.gz
352 %attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader
355 %{_sharedstatedir}/xen
356 %{_sharedstatedir}/xenstored
357 %dir /var/run/xenstored
358 %{systemdtmpfilesdir}/xenstored.conf
361 %defattr(644,root,root,755)
362 %attr(755,root,root) %{_libdir}/lib*.so.*
364 %dir %{_libdir}/fs/ext2fs-lib
365 %dir %{_libdir}/fs/fat
366 %dir %{_libdir}/fs/iso9660
367 %dir %{_libdir}/fs/reiserfs
368 %dir %{_libdir}/fs/ufs
369 %dir %{_libdir}/fs/zfs
370 %attr(755,root,root) %{_libdir}/fs/*/*.so
373 %defattr(644,root,root,755)
374 %attr(755,root,root) %{_libdir}/lib*.so
378 %defattr(644,root,root,755)
382 %defattr(644,root,root,755)
383 %attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend
384 %{systemdunitdir}/xend.service
385 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm*
386 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend*
387 %attr(755,root,root) %{_sbindir}/xend
388 %attr(755,root,root) %{_sbindir}/xm
389 %dir %attr(700,root,root) /var/run/xend
390 %{systemdtmpfilesdir}/xend.conf
393 %defattr(644,root,root,755)
394 %attr(755,root,root) %{py_sitedir}/fsimage.so
396 %dir %{py_sitedir}/xen
397 %dir %{py_sitedir}/xen/lowlevel
398 %{py_sitedir}/xen/lowlevel/*.py*
399 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/*.so
400 %{py_sitedir}/xen/remus
402 %{py_sitedir}/xen/util
403 %{py_sitedir}/xen/web
404 %{py_sitedir}/xen/xend
406 %{py_sitedir}/xen/xsview
407 %{py_sitedir}/xen/*.py*
408 %if "%{py_ver}" > "2.4"
409 %{py_sitedir}/*.egg-info
412 %files -n bash-completion-%{name}
413 %defattr(644,root,root,755)
414 /etc/bash_completion.d/*