]> git.pld-linux.org Git - packages/xen.git/blob - xen.spec
- added POSIX-sh compatible init scripts
[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}-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
55 BuildRequires:  acpica
56 BuildRequires:  bcc
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
73 BuildRequires:  which
74 BuildRequires:  zlib-devel
75 Requires(post,preun):   /sbin/chkconfig
76 Requires:       %{name}-libs = %{version}-%{release}
77 Requires:       ZopeInterface
78 Requires:       bridge-utils
79 Requires:       coreutils
80 Requires:       diffutils
81 Requires:       gawk
82 Requires:       iptables
83 Requires:       losetup
84 Requires:       net-tools
85 Requires:       python-%{name} = %{version}-%{release}
86 Requires:       rc-scripts
87 Requires:       sed
88 Requires:       util-linux
89 Requires:       which
90 Obsoletes:      xen-doc
91 Obsoletes:      xen-udev
92 ExclusiveArch:  %{ix86} %{x8664}
93 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
94
95 # some PPC/SPARC boot image in ELF format
96 %define         _noautostrip    .*%{_datadir}/xen/qemu/openbios-.*
97
98 %description
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
102 project pages.
103
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.
110
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
115 projektu.
116
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ół.
123
124 %package libs
125 Summary:        xen libraries
126 Summary(pl.UTF-8):      Biblioteki xena
127 Group:          Libraries
128
129 %description libs
130 xen libraries.
131
132 %description libs -l pl.UTF-8
133 Biblioteki xena.
134
135 %package devel
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}
140
141 %description devel
142 Header files for xen.
143
144 %description devel -l pl.UTF-8
145 Pliki nagłówkowe xena.
146
147 %package static
148 Summary:        Static xen libraries
149 Summary(pl.UTF-8):      Statyczne biblioteki xena
150 Group:          Development/Libraries
151 Requires:       %{name}-devel = %{version}-%{release}
152
153 %description static
154 Static xen libraries.
155
156 %description static -l pl.UTF-8
157 Statyczne biblioteki xena.
158
159 %package xend
160 Summary:        xend daemon
161 Summary(pl.UTF-8):      Demon xend
162 Group:          Daemons
163
164 %description xend
165 xend daemon.
166
167 %description xend -l pl.UTF-8
168 Demon xend.
169
170 %package -n python-xen
171 Summary:        xen Python modules
172 Summary(pl.UTF-8):      Moduły Pythona dla xena
173 Group:          Libraries
174 Conflicts:      xen < 3.2.1-0.3
175
176 %description -n python-xen
177 xen Python modules.
178
179 %description -n python-xen -l pl.UTF-8
180 Moduły Pythona dla xena.
181
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
187
188 %description -n bash-completion-%{name}
189 This package provides bash-completion for xen.
190
191 %prep
192 %setup -q
193 %patch0 -p1
194 %patch1 -p1
195 %patch2 -p1
196 #%%patch3 -p1
197 %patch4 -p1
198
199 %{__rm} -v tools/check/*.orig
200
201 # stubdom sources
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
205
206 %build
207 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
208 export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
209
210 %{__make} dist-xen dist-tools dist-docs \
211         prefix=%{_prefix} \
212         CC="%{__cc}" \
213         CXX="%{__cxx}"
214
215 unset CFLAGS
216 unset CXXFLAGS
217 %{__make} -j1 dist-stubdom \
218         CC="%{__cc}" \
219         CXX="%{__cxx}"
220
221 %install
222 rm -rf $RPM_BUILD_ROOT
223 install -d $RPM_BUILD_ROOT/etc/xen/examples \
224         $RPM_BUILD_ROOT{/usr/lib/tmpfiles.d,%{systemdunitdir}}
225
226 %{__make} -j1 install-xen install-tools install-stubdom install-docs \
227         prefix=%{_prefix} \
228         DESTDIR=$RPM_BUILD_ROOT
229
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
242 # sysvinit scripts
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
250
251 mv $RPM_BUILD_ROOT/etc/xen/{xmexample*,examples}
252
253 cp -p tools/blktap/README{,.blktap}
254 cp -p tools/xenmon/README{,.xenmon}
255
256 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
257 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
258
259 %py_postclean
260
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
266
267 %clean
268 rm -rf $RPM_BUILD_ROOT
269
270 %post
271 /sbin/chkconfig --add xen-watchdog
272 /sbin/chkconfig --add xenconsoled
273 /sbin/chkconfig --add xenstored
274 /sbin/chkconfig --add xendomains
275
276 %preun
277 if [ "$1" = "0" ]; then
278         %service xendomains stop
279         /sbin/chkconfig --del xendomains
280
281         %service xenconsoled stop
282         /sbin/chkconfig --del xenconsoled
283
284         %service xenstored stop
285         /sbin/chkconfig --del xenstored
286
287         %service xen-watchdog stop
288         /sbin/chkconfig --del xen-watchdog
289 fi
290
291 %post  xend
292 /sbin/chkconfig --add xend
293
294 %preun xend
295 if [ "$1" = "0" ]; then
296         %service xend stop
297         /sbin/chkconfig --del xend
298 fi
299
300 %post   libs -p /sbin/ldconfig
301 %postun libs -p /sbin/ldconfig
302
303 %files
304 %defattr(644,root,root,755)
305 %doc COPYING README* docs/misc/* 
306 %doc docs/html/*
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
311 /boot/%{name}.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
347 %endif
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
353 %{_datadir}/xen
354 %{_mandir}/man?/*
355 %{_sharedstatedir}/xen
356 %{_sharedstatedir}/xenstored
357 %dir /var/run/xenstored
358 %{systemdtmpfilesdir}/xenstored.conf
359
360 %files libs
361 %defattr(644,root,root,755)
362 %attr(755,root,root) %{_libdir}/lib*.so.*
363 %dir %{_libdir}/fs
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
371
372 %files devel
373 %defattr(644,root,root,755)
374 %attr(755,root,root) %{_libdir}/lib*.so
375 %{_includedir}/*
376
377 %files static
378 %defattr(644,root,root,755)
379 %{_libdir}/lib*.a
380
381 %files xend
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
391
392 %files -n python-xen
393 %defattr(644,root,root,755)
394 %attr(755,root,root) %{py_sitedir}/fsimage.so
395 %{py_sitedir}/grub
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
401 %{py_sitedir}/xen/sv
402 %{py_sitedir}/xen/util
403 %{py_sitedir}/xen/web
404 %{py_sitedir}/xen/xend
405 %{py_sitedir}/xen/xm
406 %{py_sitedir}/xen/xsview
407 %{py_sitedir}/xen/*.py*
408 %if "%{py_ver}" > "2.4"
409 %{py_sitedir}/*.egg-info
410 %endif
411
412 %files -n bash-completion-%{name}
413 %defattr(644,root,root,755)
414 /etc/bash_completion.d/*
This page took 0.326114 seconds and 3 git commands to generate.