]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # TODO: | |
3 | # - most of the qemu config options aren't detected (curses, NPTL, vde, fdt) | |
4 | # - package the ocaml stuff | |
5 | # | |
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 | |
9 | Name: xen | |
10 | Version: 4.1.2 | |
11 | Release: 0.1 | |
12 | License: GPL | |
13 | Group: Applications/System | |
14 | Source0: http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz | |
15 | # Source0-md5: 73561faf3c1b5e36ec5c089b5db848ad | |
16 | # used by stubdoms | |
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 | |
41 | # sysvinit scripts | |
42 | Source50: xend.init | |
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}-xz.patch | |
52 | Patch4: pygrubfix.patch | |
53 | Patch5: pygrubfix2.patch | |
54 | Patch6: qemu-xen-4.1-testing.git-3cf61880403b4e484539596a95937cc066243388.patch | |
55 | Patch7: xen-4.1-testing.23190.patch | |
56 | Patch8: xend.catchbt.patch | |
57 | Patch9: xend.empty.xml.patch | |
58 | Patch10: xend-pci-loop.patch | |
59 | Patch11: xen-dumpdir.patch | |
60 | # stubdom patch | |
61 | Patch100: grub-ext4-support.patch | |
62 | URL: http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html | |
63 | BuildRequires: SDL-devel | |
64 | BuildRequires: acpica | |
65 | BuildRequires: bcc | |
66 | BuildRequires: curl-devel | |
67 | BuildRequires: e2fsprogs-devel | |
68 | BuildRequires: gcc >= 5:3.4 | |
69 | BuildRequires: gettext-devel | |
70 | BuildRequires: latex2html | |
71 | BuildRequires: libidn-devel | |
72 | BuildRequires: ncurses-devel | |
73 | BuildRequires: pciutils-devel | |
74 | BuildRequires: pkgconfig | |
75 | BuildRequires: python-devel | |
76 | BuildRequires: rpm-pythonprov | |
77 | BuildRequires: rpmbuild(macros) >= 1.268 | |
78 | #BuildRequires: texlive-dvips | |
79 | #BuildRequires: texlive-latex-data | |
80 | BuildRequires: texlive-latex-psnfss | |
81 | BuildRequires: transfig | |
82 | BuildRequires: which | |
83 | BuildRequires: zlib-devel | |
84 | Requires(post,preun): /sbin/chkconfig | |
85 | Requires: %{name}-libs = %{version}-%{release} | |
86 | Requires: ZopeInterface | |
87 | Requires: bridge-utils | |
88 | Requires: coreutils | |
89 | Requires: diffutils | |
90 | Requires: gawk | |
91 | Requires: iptables | |
92 | Requires: losetup | |
93 | Requires: net-tools | |
94 | Requires: python-%{name} = %{version}-%{release} | |
95 | Requires: rc-scripts | |
96 | Requires: sed | |
97 | Requires: util-linux | |
98 | Requires: which | |
99 | Obsoletes: xen-doc | |
100 | Obsoletes: xen-udev | |
101 | ExclusiveArch: %{ix86} %{x8664} | |
102 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
103 | ||
104 | # some PPC/SPARC boot image in ELF format | |
105 | %define _noautostrip .*%{_datadir}/xen/qemu/openbios-.* | |
106 | ||
107 | %description | |
108 | This package contains the Xen hypervisor and Xen tools, needed to run | |
109 | virtual machines on x86 systems, together with the kernel-xen* | |
110 | packages. Information on how to use Xen can be found at the Xen | |
111 | project pages. | |
112 | ||
113 | Virtualisation can be used to run multiple versions or multiple Linux | |
114 | distributions on one system, or to test untrusted applications in a | |
115 | sandboxed environment. Note that the Xen technology is still in | |
116 | development, and this RPM has received extremely little testing. Don't | |
117 | be surprised if this RPM eats your data, drinks your coffee or makes | |
118 | fun of you in front of your friends. | |
119 | ||
120 | %description -l pl.UTF-8 | |
121 | Ten pakiet zawiera nadzorcę oraz narzędzia Xen, potrzebne do | |
122 | uruchamiania wirtualnych maszyn w systemach x86, wraz z pakietami | |
123 | kernel-xen*. Informacje jak używać Xena można znaleźć na stronach | |
124 | projektu. | |
125 | ||
126 | Wirtualizacja może być używana do uruchamiania wielu wersji lub wielu | |
127 | dystrybucji Linuksa na jednym systemie lub do testowania nie zaufanych | |
128 | aplikacji w odizolowanym środowisku. Należy zauważyć, że technologia | |
129 | Xen jest ciągle rozwijana, a ten RPM był słabo testowany. Nie należy | |
130 | być zdziwionym, jeśli ten pakiet zje dane, wypije całą kawę czy będzie | |
131 | się wyśmiewał w obecności przyjaciół. | |
132 | ||
133 | %package libs | |
134 | Summary: xen libraries | |
135 | Summary(pl.UTF-8): Biblioteki xena | |
136 | Group: Libraries | |
137 | ||
138 | %description libs | |
139 | xen libraries. | |
140 | ||
141 | %description libs -l pl.UTF-8 | |
142 | Biblioteki xena. | |
143 | ||
144 | %package devel | |
145 | Summary: Header files for xen | |
146 | Summary(pl.UTF-8): Pliki nagłówkowe xena | |
147 | Group: Development/Libraries | |
148 | Requires: %{name}-libs = %{version}-%{release} | |
149 | ||
150 | %description devel | |
151 | Header files for xen. | |
152 | ||
153 | %description devel -l pl.UTF-8 | |
154 | Pliki nagłówkowe xena. | |
155 | ||
156 | %package static | |
157 | Summary: Static xen libraries | |
158 | Summary(pl.UTF-8): Statyczne biblioteki xena | |
159 | Group: Development/Libraries | |
160 | Requires: %{name}-devel = %{version}-%{release} | |
161 | ||
162 | %description static | |
163 | Static xen libraries. | |
164 | ||
165 | %description static -l pl.UTF-8 | |
166 | Statyczne biblioteki xena. | |
167 | ||
168 | %package xend | |
169 | Summary: xend daemon | |
170 | Summary(pl.UTF-8): Demon xend | |
171 | Group: Daemons | |
172 | ||
173 | %description xend | |
174 | xend daemon. | |
175 | ||
176 | %description xend -l pl.UTF-8 | |
177 | Demon xend. | |
178 | ||
179 | %package -n python-xen | |
180 | Summary: xen Python modules | |
181 | Summary(pl.UTF-8): Moduły Pythona dla xena | |
182 | Group: Libraries | |
183 | Conflicts: xen < 3.2.1-0.3 | |
184 | ||
185 | %description -n python-xen | |
186 | xen Python modules. | |
187 | ||
188 | %description -n python-xen -l pl.UTF-8 | |
189 | Moduły Pythona dla xena. | |
190 | ||
191 | %package -n bash-completion-%{name} | |
192 | Summary: bash-completion for xen | |
193 | Group: Applications/Shells | |
194 | Requires: %{name} = %{version}-%{release} | |
195 | Requires: bash-completion | |
196 | ||
197 | %description -n bash-completion-%{name} | |
198 | This package provides bash-completion for xen. | |
199 | ||
200 | %prep | |
201 | %setup -q | |
202 | %patch0 -p1 | |
203 | %patch1 -p1 | |
204 | %patch2 -p1 | |
205 | %patch3 -p1 | |
206 | %patch4 -p1 | |
207 | %patch5 -p1 | |
208 | %patch6 -p1 | |
209 | %patch7 -p1 | |
210 | %patch8 -p1 | |
211 | %patch9 -p1 | |
212 | %patch10 -p1 | |
213 | %patch11 -p1 | |
214 | ||
215 | %{__rm} -v tools/check/*.orig | |
216 | ||
217 | # stubdom sources | |
218 | ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom | |
219 | ln -s %{PATCH100} stubdom/grub.patches/99grub-ext4-support.patch | |
220 | ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz | |
221 | ||
222 | %build | |
223 | export CFLAGS="%{rpmcflags} -I/usr/include/ncurses" | |
224 | export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses" | |
225 | ||
226 | %{__make} dist-xen dist-tools dist-docs \ | |
227 | prefix=%{_prefix} \ | |
228 | CC="%{__cc}" \ | |
229 | CXX="%{__cxx}" | |
230 | ||
231 | unset CFLAGS | |
232 | unset CXXFLAGS | |
233 | %{__make} -j1 dist-stubdom \ | |
234 | CC="%{__cc}" \ | |
235 | CXX="%{__cxx}" | |
236 | ||
237 | %install | |
238 | rm -rf $RPM_BUILD_ROOT | |
239 | install -d $RPM_BUILD_ROOT/etc/xen/examples \ | |
240 | $RPM_BUILD_ROOT{/usr/lib/tmpfiles.d,%{systemdunitdir}} | |
241 | ||
242 | %{__make} -j1 install-xen install-tools install-stubdom install-docs \ | |
243 | prefix=%{_prefix} \ | |
244 | DESTDIR=$RPM_BUILD_ROOT | |
245 | ||
246 | install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount | |
247 | install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount | |
248 | # started internally by xend | |
249 | #install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service | |
250 | #install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl | |
251 | install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service | |
252 | install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled | |
253 | install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service | |
254 | install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored | |
255 | install %{SOURCE38} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xenstored.conf | |
256 | install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service | |
257 | install %{SOURCE40} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xend.conf | |
258 | install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service | |
259 | # sysvinit scripts | |
260 | %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/* | |
261 | install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend | |
262 | install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled | |
263 | install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored | |
264 | install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog | |
265 | install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains | |
266 | #install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen | |
267 | ||
268 | mv $RPM_BUILD_ROOT/etc/xen/{xmexample*,examples} | |
269 | ||
270 | cp -p tools/blktap/README{,.blktap} | |
271 | cp -p tools/xenmon/README{,.xenmon} | |
272 | ||
273 | %py_comp $RPM_BUILD_ROOT%{py_sitedir} | |
274 | %py_ocomp $RPM_BUILD_ROOT%{py_sitedir} | |
275 | ||
276 | %py_postclean | |
277 | ||
278 | # remove unneeded files | |
279 | %{__rm} $RPM_BUILD_ROOT/boot/xen-4.1.gz | |
280 | %{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz | |
281 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen | |
282 | %{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING | |
283 | ||
284 | %clean | |
285 | rm -rf $RPM_BUILD_ROOT | |
286 | ||
287 | %post | |
288 | /sbin/chkconfig --add xen-watchdog | |
289 | /sbin/chkconfig --add xenconsoled | |
290 | /sbin/chkconfig --add xenstored | |
291 | /sbin/chkconfig --add xendomains | |
292 | ||
293 | %preun | |
294 | if [ "$1" = "0" ]; then | |
295 | %service xendomains stop | |
296 | /sbin/chkconfig --del xendomains | |
297 | ||
298 | %service xenconsoled stop | |
299 | /sbin/chkconfig --del xenconsoled | |
300 | ||
301 | %service xenstored stop | |
302 | /sbin/chkconfig --del xenstored | |
303 | ||
304 | %service xen-watchdog stop | |
305 | /sbin/chkconfig --del xen-watchdog | |
306 | fi | |
307 | ||
308 | %post xend | |
309 | /sbin/chkconfig --add xend | |
310 | ||
311 | %preun xend | |
312 | if [ "$1" = "0" ]; then | |
313 | %service xend stop | |
314 | /sbin/chkconfig --del xend | |
315 | fi | |
316 | ||
317 | %post libs -p /sbin/ldconfig | |
318 | %postun libs -p /sbin/ldconfig | |
319 | ||
320 | %files | |
321 | %defattr(644,root,root,755) | |
322 | %doc COPYING README* docs/misc/* | |
323 | %doc docs/html/* | |
324 | %doc tools/blktap/README.blktap tools/xenmon/README.xenmon | |
325 | %doc tools/ioemu-dir/*.html | |
326 | /boot/%{name}-syms-%{version} | |
327 | /boot/%{name}-%{version}.gz | |
328 | /boot/%{name}.gz | |
329 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenconsoled | |
330 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenstored | |
331 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xendomains | |
332 | %attr(754,root,root) /etc/rc.d/init.d/xen-watchdog | |
333 | %attr(754,root,root) /etc/rc.d/init.d/xenconsoled | |
334 | %attr(754,root,root) /etc/rc.d/init.d/xenstored | |
335 | %attr(754,root,root) /etc/rc.d/init.d/xendomains | |
336 | %{systemdunitdir}/proc-xen.mount | |
337 | %{systemdunitdir}/var-lib-xenstored.mount | |
338 | %{systemdunitdir}/xen-watchdog.service | |
339 | %{systemdunitdir}/xenconsoled.service | |
340 | %{systemdunitdir}/xenstored.service | |
341 | %dir %{_sysconfdir}/xen | |
342 | %dir %{_sysconfdir}/xen/auto | |
343 | %dir %{_sysconfdir}/xen/examples | |
344 | %dir %{_sysconfdir}/xen/scripts | |
345 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/* | |
346 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/examples/* | |
347 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README* | |
348 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool | |
349 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf | |
350 | %config(noreplace) %verify(not md5 mtime size) /etc/udev/* | |
351 | %attr(755,root,root) %{_bindir}/* | |
352 | %attr(755,root,root) %{_sbindir}/[bfgikloqtv]* | |
353 | %attr(755,root,root) %{_sbindir}/xen??* | |
354 | %attr(755,root,root) %{_sbindir}/xl | |
355 | %attr(755,root,root) %{_sbindir}/xsview | |
356 | %dir %{_libdir}/%{name} | |
357 | %dir %{_libdir}/%{name}/bin | |
358 | %attr(744,root,root) %{_libdir}/%{name}/bin/* | |
359 | %if "%{_lib}" != "lib" | |
360 | %dir %{_prefix}/lib/%{name} | |
361 | %dir %{_prefix}/lib/%{name}/bin | |
362 | %attr(755,root,root) %{_prefix}/lib/%{name}/bin/qemu-dm | |
363 | %attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdom-dm | |
364 | %attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdompath.sh | |
365 | %endif | |
366 | %dir %{_prefix}/lib/%{name}/boot | |
367 | %{_prefix}/lib/%{name}/boot/ioemu-stubdom.gz | |
368 | %{_prefix}/lib/%{name}/boot/pv-grub-x86_32.gz | |
369 | %{_prefix}/lib/%{name}/boot/pv-grub-x86_64.gz | |
370 | %attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader | |
371 | %{_datadir}/xen | |
372 | %{_mandir}/man?/* | |
373 | %{_sharedstatedir}/xen | |
374 | %{_sharedstatedir}/xenstored | |
375 | %dir /var/run/xenstored | |
376 | %{systemdtmpfilesdir}/xenstored.conf | |
377 | ||
378 | %files libs | |
379 | %defattr(644,root,root,755) | |
380 | %attr(755,root,root) %{_libdir}/lib*.so.* | |
381 | %dir %{_libdir}/fs | |
382 | %dir %{_libdir}/fs/ext2fs-lib | |
383 | %dir %{_libdir}/fs/fat | |
384 | %dir %{_libdir}/fs/iso9660 | |
385 | %dir %{_libdir}/fs/reiserfs | |
386 | %dir %{_libdir}/fs/ufs | |
387 | %dir %{_libdir}/fs/zfs | |
388 | %attr(755,root,root) %{_libdir}/fs/*/*.so | |
389 | ||
390 | %files devel | |
391 | %defattr(644,root,root,755) | |
392 | %attr(755,root,root) %{_libdir}/lib*.so | |
393 | %{_includedir}/* | |
394 | ||
395 | %files static | |
396 | %defattr(644,root,root,755) | |
397 | %{_libdir}/lib*.a | |
398 | ||
399 | %files xend | |
400 | %defattr(644,root,root,755) | |
401 | #%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/blktapctrl | |
402 | #%{systemdunitdir}/blktapctrl.service | |
403 | %{systemdunitdir}/xend.service | |
404 | %attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend | |
405 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm* | |
406 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend* | |
407 | %attr(755,root,root) %{_sbindir}/xend | |
408 | %attr(755,root,root) %{_sbindir}/xm | |
409 | %dir %attr(700,root,root) /var/run/xend | |
410 | %{systemdtmpfilesdir}/xend.conf | |
411 | ||
412 | %files -n python-xen | |
413 | %defattr(644,root,root,755) | |
414 | %attr(755,root,root) %{py_sitedir}/fsimage.so | |
415 | %{py_sitedir}/grub | |
416 | %dir %{py_sitedir}/xen | |
417 | %dir %{py_sitedir}/xen/lowlevel | |
418 | %{py_sitedir}/xen/lowlevel/*.py* | |
419 | %attr(755,root,root) %{py_sitedir}/xen/lowlevel/*.so | |
420 | %{py_sitedir}/xen/remus | |
421 | %{py_sitedir}/xen/sv | |
422 | %{py_sitedir}/xen/util | |
423 | %{py_sitedir}/xen/web | |
424 | %{py_sitedir}/xen/xend | |
425 | %{py_sitedir}/xen/xm | |
426 | %{py_sitedir}/xen/xsview | |
427 | %{py_sitedir}/xen/*.py* | |
428 | %if "%{py_ver}" > "2.4" | |
429 | %{py_sitedir}/*.egg-info | |
430 | %endif | |
431 | ||
432 | %files -n bash-completion-%{name} | |
433 | %defattr(644,root,root,755) | |
434 | /etc/bash_completion.d/* |