]> git.pld-linux.org Git - packages/xen.git/blob - xen.spec
- blktapctrl is started by xend, consider reworking xend
[packages/xen.git] / xen.spec
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/*
This page took 0.066882 seconds and 4 git commands to generate.