]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # TODO: | |
3 | # - system ovmf, ipxe? (like system seabios) | |
4 | # - check if other tools/libs are not usable in domU, move them to -guest | |
5 | # packages if so | |
6 | # - pass bconds to qemu configure script (tricky, as the script is called from | |
7 | # Xen Makefiles) | |
8 | # - fix %doc - some files are installed in docdir both by make install and %d, | |
9 | # other are installed once | |
10 | # - mini-os objects are relinked on install (because of .PHONY rules used to make them) | |
11 | # | |
12 | # Conditional build: | |
13 | %bcond_without qemu_traditional # without qemu-xen-traditional | |
14 | %bcond_without opengl # OpenGL support in Xen qemu | |
15 | %bcond_without sdl # SDL support in Xen qemu | |
16 | %bcond_without bluetooth # bluetooth support in Xen qemu | |
17 | %bcond_without brlapi # brlapi support in Xen qemu | |
18 | %bcond_with golang # Go library | |
19 | %bcond_without ocaml # Ocaml libraries for Xen tools | |
20 | %bcond_without pv_grub # pv-grub (deprecated) | |
21 | %bcond_with python2 # CPython 2.x module instead of 3.x | |
22 | %bcond_without efi # EFI hypervisor | |
23 | %bcond_without hypervisor # Xen hypervisor build | |
24 | %bcond_without stubdom # stubdom build | |
25 | %bcond_without xsm # XSM security module (by default, Flask) | |
26 | %bcond_without systemd # systemd | |
27 | ||
28 | %ifnarch %{x8664} %{arm} | |
29 | %undefine with_hypervisor | |
30 | %endif | |
31 | %ifnarch %{x8664} | |
32 | %undefine with_efi | |
33 | %endif | |
34 | %ifnarch %{ix86} %{x8664} | |
35 | %undefine with_stubdom | |
36 | %endif | |
37 | ||
38 | # from ./stubdom/configure.ac | |
39 | %define polarssl_version 1.1.4 | |
40 | %define tpm_emulator_version 0.7.4 | |
41 | %define gmp_version 4.3.2 | |
42 | ||
43 | %define xen_extfiles_url https://xenbits.xensource.com/xen-extfiles | |
44 | Summary: Xen - a virtual machine monitor | |
45 | Summary(pl.UTF-8): Xen - monitor maszyny wirtualnej | |
46 | Name: xen | |
47 | Version: 4.16.5 | |
48 | Release: 1 | |
49 | License: GPL v2, interface parts on BSD-like | |
50 | Group: Applications/System | |
51 | # for available versions see https://xenproject.org/xen-project-archives/ | |
52 | Source0: https://downloads.xenproject.org/release/xen/%{version}/%{name}-%{version}.tar.gz | |
53 | # Source0-md5: d2b76430ebac3cfc15dd25a352f7a5ac | |
54 | # used by stubdoms | |
55 | Source10: %{xen_extfiles_url}/lwip-1.3.0.tar.gz | |
56 | # Source10-md5: 36cc57650cffda9a0269493be2a169bb | |
57 | Source11: %{xen_extfiles_url}/newlib-1.16.0.tar.gz | |
58 | # Source11-md5: bf8f1f9e3ca83d732c00a79a6ef29bc4 | |
59 | Source12: %{xen_extfiles_url}/zlib-1.2.3.tar.gz | |
60 | # Source12-md5: debc62758716a169df9f62e6ab2bc634 | |
61 | Source13: %{xen_extfiles_url}/pciutils-2.2.9.tar.bz2 | |
62 | # Source13-md5: cec05e7785497c5e19da2f114b934ffd | |
63 | Source14: %{xen_extfiles_url}/grub-0.97.tar.gz | |
64 | # Source14-md5: cd3f3eb54446be6003156158d51f4884 | |
65 | Source15: %{xen_extfiles_url}/ipxe-git-3c040ad387099483102708bb1839110bc788cefb.tar.gz | |
66 | # Source15-md5: 23ba00d5e2c5b4343d12665af73e1cb5 | |
67 | Source17: %{xen_extfiles_url}/polarssl-%{polarssl_version}-gpl.tgz | |
68 | # Source17-md5: 7b72caf22b01464ee7d6165f2fd85f44 | |
69 | Source18: %{xen_extfiles_url}/tpm_emulator-%{tpm_emulator_version}.tar.gz | |
70 | # Source18-md5: e26becb8a6a2b6695f6b3e8097593db8 | |
71 | Source19: https://ftp.gnu.org/gnu/gmp/gmp-%{gmp_version}.tar.bz2 | |
72 | # Source19-md5: dd60683d7057917e34630b4a787932e8 | |
73 | Source35: xenconsoled.sysconfig | |
74 | Source37: xenstored.sysconfig | |
75 | Source38: xenstored.tmpfiles | |
76 | # sysvinit scripts | |
77 | Source46: xen-qemu-dom0-disk-backend.init | |
78 | Source51: xenconsoled.init | |
79 | Source52: xenstored.init | |
80 | Source53: xen-watchdog.init | |
81 | Source54: xendomains.init | |
82 | Source55: xen.logrotate | |
83 | Source56: xen.tmpfiles | |
84 | Source57: xen.cfg | |
85 | Source58: xen.efi-boot-update | |
86 | Source59: vif-openvswitch | |
87 | Source60: xen-init-list | |
88 | Source61: xen-toolstack | |
89 | # shebang patch for python2-only scripts | |
90 | Patch0: %{name}-python_scripts.patch | |
91 | Patch1: %{name}-symbols.patch | |
92 | Patch2: %{name}-link.patch | |
93 | Patch3: pygrubfix.patch | |
94 | # Warning: this disables ingress filtering implemented in xen scripts! | |
95 | Patch4: %{name}-net-disable-iptables-on-bridge.patch | |
96 | Patch5: %{name}-qemu.patch | |
97 | Patch6: %{name}-doc.patch | |
98 | Patch7: %{name}-paths.patch | |
99 | Patch8: %{name}-no_fetcher.patch | |
100 | Patch9: %{name}-no_Werror.patch | |
101 | Patch10: %{name}-stubdom-build.patch | |
102 | Patch12: %{name}-systemd.patch | |
103 | Patch14: gcc9.patch | |
104 | Patch15: gcc10.patch | |
105 | Patch16: ocaml-4.12.patch | |
106 | Patch17: %{name}-golang-32bit.patch | |
107 | Patch18: %{name}-gcc12.patch | |
108 | Patch19: gcc13.patch | |
109 | Patch20: python-fixes.patch | |
110 | URL: http://www.xen.org/products/xenhyp.html | |
111 | BuildRequires: autoconf >= 2.67 | |
112 | %ifarch %{ix86} %{x8664} | |
113 | BuildRequires: acpica | |
114 | BuildRequires: bcc | |
115 | BuildRequires: bin86 | |
116 | %endif | |
117 | %{?with_efi:BuildRequires: binutils >= 3:2.23.51.0.3-2} | |
118 | BuildRequires: bzip2-devel | |
119 | %if %{with xsm} | |
120 | BuildRequires: checkpolicy | |
121 | %endif | |
122 | # tpm_emulator uses cmake | |
123 | BuildRequires: cmake >= 2.4 | |
124 | BuildRequires: e2fsprogs-devel | |
125 | BuildRequires: fig2dev | |
126 | BuildRequires: gcc >= 6:4.8 | |
127 | %ifarch %{x8664} | |
128 | BuildRequires: gcc-multilib-32 >= 6:4.1 | |
129 | %endif | |
130 | BuildRequires: gettext-tools | |
131 | %{?with_golang:BuildRequires: golang >= 1.11.1} | |
132 | BuildRequires: libaio-devel | |
133 | %ifarch %{arm} aarch64 | |
134 | BuildRequires: libfdt-devel >= 1.4.0 | |
135 | %endif | |
136 | BuildRequires: libnl-devel >= 3.2.8 | |
137 | BuildRequires: libuuid-devel | |
138 | BuildRequires: lzo-devel >= 2 | |
139 | BuildRequires: ncurses-devel | |
140 | %if %{with ocaml} | |
141 | BuildRequires: ocaml >= 1:4.02.0 | |
142 | BuildRequires: ocaml-findlib | |
143 | %endif | |
144 | BuildRequires: pandoc | |
145 | BuildRequires: perl-base | |
146 | BuildRequires: perl-tools-pod | |
147 | BuildRequires: pkgconfig | |
148 | %if %{with python2} | |
149 | BuildRequires: python-devel >= 1:2.7 | |
150 | BuildRequires: python-markdown | |
151 | %else | |
152 | BuildRequires: python3-devel >= 1:3.2 | |
153 | BuildRequires: python3-markdown | |
154 | %endif | |
155 | BuildRequires: rpm-pythonprov | |
156 | BuildRequires: rpmbuild(macros) >= 1.647 | |
157 | BuildRequires: seabios | |
158 | %{?with_systemd:BuildRequires: systemd-devel >= 1:209} | |
159 | BuildRequires: texlive-dvips | |
160 | BuildRequires: texlive-latex-psnfss | |
161 | BuildRequires: texlive-xetex | |
162 | BuildRequires: which | |
163 | BuildRequires: xz-devel | |
164 | BuildRequires: yajl-devel | |
165 | BuildRequires: zlib-devel | |
166 | BuildRequires: zstd-devel | |
167 | %if %{with qemu_traditional} | |
168 | %{?with_opengl:BuildRequires: OpenGL-devel} | |
169 | %{?with_sdl:BuildRequires: SDL-devel >= 1.2.1} | |
170 | %{?with_bluetooth:BuildRequires: bluez-libs-devel} | |
171 | %{?with_brlapi:BuildRequires: brlapi-devel} | |
172 | BuildRequires: gnutls-devel | |
173 | BuildRequires: pciutils-devel | |
174 | BuildRequires: pixman-devel >= 0.21.8 | |
175 | BuildRequires: vde2-devel | |
176 | # for xfsctl (<xfs/xfs.h>) | |
177 | BuildRequires: xfsprogs-devel | |
178 | BuildRequires: xorg-lib-libX11-devel | |
179 | BuildRequires: xorg-lib-libXext-devel | |
180 | %endif | |
181 | %if %{with qemu_traditional} | |
182 | # FIXME: see qemu configure comments on top of spec | |
183 | %{!?with_opengl:BuildConflicts: OpenGL-devel} | |
184 | %{!?with_sdl:BuildConflicts: SDL-devel} | |
185 | %{!?with_sdl:BuildConflicts: SDL-devel} | |
186 | %{!?with_bluetooth:BuildConflicts: bluez-libs-devel} | |
187 | %{!?with_brlapi:BuildConflicts: brlapi-devel} | |
188 | %endif | |
189 | Requires(post,preun): /sbin/chkconfig | |
190 | Requires(post,preun,postun): systemd-units >= 38 | |
191 | Requires: %{name}-libs = %{version}-%{release} | |
192 | Requires: bridge-utils | |
193 | Requires: coreutils | |
194 | Requires: diffutils | |
195 | Requires: gawk | |
196 | Requires: iptables | |
197 | Requires: losetup | |
198 | Requires: net-tools | |
199 | %if %{with python2} | |
200 | Requires: python-%{name} = %{version}-%{release} | |
201 | %else | |
202 | Requires: python3-%{name} = %{version}-%{release} | |
203 | %endif | |
204 | Requires: rc-scripts | |
205 | Requires: sed | |
206 | Requires: systemd-units >= 38 | |
207 | Requires: util-linux | |
208 | Requires: which | |
209 | Requires: %{name}-guest = %{version}-%{release} | |
210 | %ifarch %{ix86} %{x8664} | |
211 | # for HVM | |
212 | Suggests: qemu-system-x86 | |
213 | %endif | |
214 | Obsoletes: xen-doc < 3 | |
215 | Obsoletes: xen-udev < 4.1.2-2 | |
216 | Obsoletes: xen-xend < 4.5 | |
217 | ExclusiveArch: %{ix86} %{x8664} %{arm} aarch64 | |
218 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
219 | ||
220 | # some PPC/SPARC boot images in ELF format | |
221 | %define _noautostrip .*%{_datadir}/\\(xen\\|qemu-xen\\)/qemu/\\(openbios-.*\\|palcode-clipper\\|s390-ccw.img\\) | |
222 | ||
223 | %description | |
224 | This package contains the Xen hypervisor and Xen tools, needed to run | |
225 | virtual machines on x86 systems, together with the kernel-xen* | |
226 | packages. Information on how to use Xen can be found at the Xen | |
227 | project pages. | |
228 | ||
229 | Virtualisation can be used to run multiple versions or multiple Linux | |
230 | distributions on one system, or to test untrusted applications in a | |
231 | sandboxed environment. Note that the Xen technology is still in | |
232 | development, and this RPM has received extremely little testing. Don't | |
233 | be surprised if this RPM eats your data, drinks your coffee or makes | |
234 | fun of you in front of your friends. | |
235 | ||
236 | %description -l pl.UTF-8 | |
237 | Ten pakiet zawiera nadzorcę oraz narzędzia Xen, potrzebne do | |
238 | uruchamiania wirtualnych maszyn w systemach x86, wraz z pakietami | |
239 | kernel-xen*. Informacje jak używać Xena można znaleźć na stronach | |
240 | projektu. | |
241 | ||
242 | Wirtualizacja może być używana do uruchamiania wielu wersji lub wielu | |
243 | dystrybucji Linuksa na jednym systemie lub do testowania nie zaufanych | |
244 | aplikacji w odizolowanym środowisku. Należy zauważyć, że technologia | |
245 | Xen jest ciągle rozwijana, a ten RPM był słabo testowany. Nie należy | |
246 | być zdziwionym, jeśli ten pakiet zje dane, wypije całą kawę czy będzie | |
247 | się wyśmiewał w obecności przyjaciół. | |
248 | ||
249 | %package guest | |
250 | Summary: Xen tools for virtual machines | |
251 | Summary(pl.UTF-8): Narzędzia Xen dla maszyn virtualnych | |
252 | Group: Applications/System | |
253 | Requires: %{name}-libs-guest = %{version}-%{release} | |
254 | ||
255 | %description guest | |
256 | Xen utilities for both dom0 and domU virtual domains. | |
257 | ||
258 | %description guest -l pl.UTF-8 | |
259 | Narzędzia Xena dla maszyn wirtualnych dom0 i domU. | |
260 | ||
261 | %package libs | |
262 | Summary: Xen libraries | |
263 | Summary(pl.UTF-8): Biblioteki Xena | |
264 | Group: Libraries | |
265 | Requires: %{name}-libs-guest = %{version}-%{release} | |
266 | Requires: libnl >= 3.2.8 | |
267 | ||
268 | %description libs | |
269 | Xen libraries. | |
270 | ||
271 | %description libs -l pl.UTF-8 | |
272 | Biblioteki Xena. | |
273 | ||
274 | %package libs-guest | |
275 | Summary: Xen libraries for virtual machines | |
276 | Summary(pl.UTF-8): Biblioteki Xena dla maszyn wirtualnych | |
277 | Group: Libraries | |
278 | ||
279 | %description libs-guest | |
280 | Xen libraries for both dom0 and domU virtual machines. | |
281 | ||
282 | %description libs-guest -l pl.UTF-8 | |
283 | Biblioteki Xena dla maszyn wirtualnych dom0 i domU. | |
284 | ||
285 | %package devel | |
286 | Summary: Header files for Xen | |
287 | Summary(pl.UTF-8): Pliki nagłówkowe Xena | |
288 | Group: Development/Libraries | |
289 | Requires: %{name}-libs = %{version}-%{release} | |
290 | ||
291 | %description devel | |
292 | Header files for Xen. | |
293 | ||
294 | %description devel -l pl.UTF-8 | |
295 | Pliki nagłówkowe Xena. | |
296 | ||
297 | %package static | |
298 | Summary: Static Xen libraries | |
299 | Summary(pl.UTF-8): Statyczne biblioteki Xena | |
300 | Group: Development/Libraries | |
301 | Requires: %{name}-devel = %{version}-%{release} | |
302 | ||
303 | %description static | |
304 | Static Xen libraries. | |
305 | ||
306 | %description static -l pl.UTF-8 | |
307 | Statyczne biblioteki Xena. | |
308 | ||
309 | %package -n ocaml-xen | |
310 | Summary: OCaml bindings for Xen | |
311 | Summary(pl.UTF-8): Wiązania OCamla dla Xena | |
312 | License: LGPL v2.1 with linking exception | |
313 | Group: Libraries | |
314 | Requires: %{name}-libs = %{version}-%{release} | |
315 | %if %{with ocaml} | |
316 | %requires_eq ocaml-runtime | |
317 | %endif | |
318 | ||
319 | %description -n ocaml-xen | |
320 | OCaml bindings for Xen. | |
321 | ||
322 | %description -n ocaml-xen -l pl.UTF-8 | |
323 | Wiązania OCamla dla Xena. | |
324 | ||
325 | %package -n ocaml-xen-devel | |
326 | Summary: OCaml bindings for Xen - development files | |
327 | Summary(pl.UTF-8): Wiązania OCamla dla Xena - pliki programistyczne | |
328 | License: LGPL v2.1 with linking exception | |
329 | Group: Development/Libraries | |
330 | Requires: ocaml-xen = %{version}-%{release} | |
331 | %if %{with ocaml} | |
332 | %requires_eq ocaml | |
333 | %endif | |
334 | ||
335 | %description -n ocaml-xen-devel | |
336 | OCaml bindings for Xen - development files. | |
337 | ||
338 | %description -n ocaml-xen-devel -l pl.UTF-8 | |
339 | Wiązania OCamla dla Xena - pliki programistyczne. | |
340 | ||
341 | %package -n python-xen | |
342 | Summary: Xen Python modules | |
343 | Summary(pl.UTF-8): Moduły Pythona dla Xena | |
344 | Group: Libraries | |
345 | Requires: %{name}-libs = %{version}-%{release} | |
346 | Conflicts: xen < 3.2.1-0.3 | |
347 | ||
348 | %description -n python-xen | |
349 | Xen Python modules. | |
350 | ||
351 | %description -n python-xen -l pl.UTF-8 | |
352 | Moduły Pythona dla Xena. | |
353 | ||
354 | %package -n python-xen-guest | |
355 | Summary: Xen Python modules for virtual machines | |
356 | Summary(pl.UTF-8): Moduły Pythona dla maszyn wirtualnych Xena | |
357 | Group: Libraries | |
358 | Requires: %{name}-libs-guest = %{version}-%{release} | |
359 | Conflicts: xen < 3.2.1-0.3 | |
360 | ||
361 | %description -n python-xen-guest | |
362 | Xen Python modules for both dom0 and domU virtual machines. | |
363 | ||
364 | %description -n python-xen-guest -l pl.UTF-8 | |
365 | Moduły Pythona dla maszyn wirtualnych dom0 i domU. | |
366 | ||
367 | %package -n python3-xen | |
368 | Summary: Xen Python 3 modules | |
369 | Summary(pl.UTF-8): Moduły Pythona 3 dla Xena | |
370 | Group: Libraries | |
371 | Requires: %{name}-libs = %{version}-%{release} | |
372 | Obsoletes: python-xen < %{version}-%{release} | |
373 | ||
374 | %description -n python3-xen | |
375 | Xen Python 3 modules. | |
376 | ||
377 | %description -n python3-xen -l pl.UTF-8 | |
378 | Moduły Pythona 3 dla Xena. | |
379 | ||
380 | %package -n python3-xen-guest | |
381 | Summary: Xen Python 3 modules for virtual machines | |
382 | Summary(pl.UTF-8): Moduły Pythona 3 dla maszyn wirtualnych Xena | |
383 | Group: Libraries | |
384 | Requires: %{name}-libs-guest = %{version}-%{release} | |
385 | Obsoletes: python-xen-guest < %{version}-%{release} | |
386 | ||
387 | %description -n python3-xen-guest | |
388 | Xen Python 3 modules for both dom0 and domU virtual machines. | |
389 | ||
390 | %description -n python3-xen-guest -l pl.UTF-8 | |
391 | Moduły Pythona 3 dla maszyn wirtualnych dom0 i domU. | |
392 | ||
393 | %package -n bash-completion-%{name} | |
394 | Summary: bash-completion for Xen (xl) | |
395 | Summary(pl.UTF-8): Bashowe dopełnianie poleceń dla Xena (xl) | |
396 | Group: Applications/Shells | |
397 | Requires: %{name} = %{version}-%{release} | |
398 | Requires: bash-completion | |
399 | ||
400 | %description -n bash-completion-%{name} | |
401 | This package provides bash-completion for Xen (xl). | |
402 | ||
403 | %description -n bash-completion-%{name} -l pl.UTF-8 | |
404 | Ten pakiet zapewnia bashowe dopełnianie poleceń dla Xena (xl). | |
405 | ||
406 | %package efi | |
407 | Summary: Xen hypervisor binary for EFI | |
408 | Summary(pl.UTF-8): Hipernadzorca Xen dla EFI | |
409 | Group: Applications/System | |
410 | Requires: %{name}-libs-guest = %{version}-%{release} | |
411 | ||
412 | %description efi | |
413 | Xen hypervisor EFI binary, which can be booted directly from (U)EFI | |
414 | firmware without help from any additional bootloader. | |
415 | ||
416 | %description efi -l pl.UTF-8 | |
417 | Nadzorca Xen w postaci, która może być uruchomiona wprost z firmware | |
418 | (U)EFI, bez potrzeby oddzielnego bootloadera. | |
419 | ||
420 | %prep | |
421 | %setup -q | |
422 | %patch0 -p1 | |
423 | %patch1 -p1 | |
424 | %patch2 -p1 | |
425 | %patch3 -p1 | |
426 | %patch4 -p1 | |
427 | %patch5 -p1 | |
428 | %patch6 -p1 | |
429 | %patch7 -p1 | |
430 | %patch8 -p1 | |
431 | %patch9 -p1 | |
432 | %patch10 -p1 | |
433 | %patch12 -p1 | |
434 | %patch14 -p1 | |
435 | %if %(echo %{cc_version} | cut -d. -f1) >= 10 | |
436 | # -Wno-error=enum-conversion requires gcc 10 | |
437 | %patch15 -p1 | |
438 | %endif | |
439 | %patch16 -p1 | |
440 | %ifarch %{ix86} %{arm} | |
441 | %patch17 -p1 | |
442 | %endif | |
443 | %patch18 -p1 | |
444 | %patch19 -p1 | |
445 | %patch20 -p1 | |
446 | ||
447 | # stubdom sources | |
448 | ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom | |
449 | ln -s %{SOURCE17} %{SOURCE18} %{SOURCE19} stubdom | |
450 | ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz | |
451 | ||
452 | %if %{with python2} | |
453 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' \ | |
454 | %else | |
455 | %{__sed} -i -e '1s,/usr/bin/env python$,%{__python3},; 1s,/usr/bin/python2$,%{__python3},' \ | |
456 | %endif | |
457 | tools/misc/xencov_split \ | |
458 | tools/misc/xenpvnetboot \ | |
459 | tools/pygrub/src/pygrub \ | |
460 | tools/python/scripts/{convert-legacy-stream,verify-stream-v2} \ | |
461 | tools/xenmon/xenmon.py \ | |
462 | tools/xentrace/xentrace_format | |
463 | ||
464 | # do not allow fetching anything via git | |
465 | echo GIT=/bin/false >> Config.mk | |
466 | ||
467 | %build | |
468 | # based on the 'autoconf.sh' from the sources | |
469 | %{__autoconf} | |
470 | cd tools | |
471 | %{__autoconf} | |
472 | %{__autoheader} | |
473 | cd ../stubdom | |
474 | %{__autoconf} | |
475 | cd ../docs | |
476 | %{__autoconf} | |
477 | cd .. | |
478 | ||
479 | # if gold is used then bioses and grub doesn't build | |
480 | install -d our-ld | |
481 | ln -f -s /usr/bin/ld.bfd our-ld/ld | |
482 | export PATH=$(pwd)/our-ld:$PATH | |
483 | ||
484 | # NOTE on ac_cv_*: | |
485 | # - use openssl (libcrypto) instead of libgcrypt as openssl is obligatory anyway | |
486 | # - prevent libiconv from being detected (not needed with glibc) | |
487 | ||
488 | %configure \ | |
489 | CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses" \ | |
490 | %{?with_python2:PYTHON=%{__python}} \ | |
491 | ac_cv_lib_gcrypt_gcry_md_hash_buffer=no \ | |
492 | ac_cv_lib_iconv_libiconv_open=no \ | |
493 | --disable-debug \ | |
494 | %{!?with_golang:--disable-golang} \ | |
495 | %{?with_pv_grub:--enable-pv-grub} \ | |
496 | %{__enable_disable qemu_traditional qemu-traditional} \ | |
497 | --with-system-seabios=/usr/share/seabios/bios.bin \ | |
498 | %ifarch %{x8664} | |
499 | --with-system-qemu=/usr/bin/qemu-system-x86_64 \ | |
500 | %else | |
501 | --with-system-qemu=/usr/bin/qemu-system-i386 \ | |
502 | %endif | |
503 | %if %{with systemd} | |
504 | --with-systemd=%{systemdunitdir} | |
505 | %else | |
506 | --disable-systemd | |
507 | %endif | |
508 | export EXTRA_CFLAGS_XEN_TOOLS="%{rpmcflags} -I/usr/include/ncurses" | |
509 | export EXTRA_CFLAGS_QEMU_TRADITIONAL="%{rpmcflags} -I/usr/include/ncurses" | |
510 | export EXTRA_CFLAGS_QEMU_XEN="%{rpmcflags} -I/usr/include/ncurses" | |
511 | ||
512 | %{__make} dist-xen dist-tools dist-docs \ | |
513 | %ifarch %{ix86} | |
514 | XEN_COMPILE_ARCH=x86_32 \ | |
515 | %endif | |
516 | %ifarch %{x8664} | |
517 | XEN_COMPILE_ARCH=x86_64 \ | |
518 | %endif | |
519 | %{!?with_ocaml:OCAML_TOOLS=n} \ | |
520 | XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \ | |
521 | CC="%{__cc}" \ | |
522 | CXX="%{__cxx}" \ | |
523 | V=1 | |
524 | ||
525 | %if %{with stubdom} | |
526 | %{__make} dist-stubdom \ | |
527 | %ifarch %{ix86} | |
528 | XEN_COMPILE_ARCH=x86_32 \ | |
529 | %endif | |
530 | %ifarch %{x8664} | |
531 | XEN_COMPILE_ARCH=x86_64 \ | |
532 | %endif | |
533 | %{!?with_ocaml:OCAML_TOOLS=n} \ | |
534 | XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \ | |
535 | CC="%{__cc}" \ | |
536 | CXX="%{__cxx}" \ | |
537 | V=1 | |
538 | %endif | |
539 | ||
540 | %install | |
541 | rm -rf $RPM_BUILD_ROOT | |
542 | install -d $RPM_BUILD_ROOT/etc/{xen/examples,modules-load.d,logrotate.d} \ | |
543 | $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{systemdunitdir},/var/log/xen/console} | |
544 | ||
545 | %if %{with efi} | |
546 | install -d $RPM_BUILD_ROOT/etc/efi-boot/update.d | |
547 | %endif | |
548 | ||
549 | %{__make} install-xen install-tools %{?with_stubdom:install-stubdom} install-docs \ | |
550 | %ifarch %{ix86} | |
551 | XEN_COMPILE_ARCH=x86_32 \ | |
552 | %endif | |
553 | %ifarch %{x8664} | |
554 | XEN_COMPILE_ARCH=x86_64 \ | |
555 | %endif | |
556 | %{!?with_ocaml:OCAML_TOOLS=n} \ | |
557 | XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \ | |
558 | DESTDIR=$RPM_BUILD_ROOT \ | |
559 | HOTPLUGS=install-udev | |
560 | ||
561 | install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled | |
562 | install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored | |
563 | ||
564 | # sysvinit scripts | |
565 | %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/* | |
566 | %{__rm} $RPM_BUILD_ROOT/etc/sysconfig/xencommons | |
567 | install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled | |
568 | install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored | |
569 | install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog | |
570 | install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains | |
571 | install %{SOURCE46} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-qemu-dom0-disk-backend | |
572 | install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen | |
573 | install %{SOURCE56} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xen.conf | |
574 | install -d $RPM_BUILD_ROOT/var/run/xenstored | |
575 | install %{SOURCE38} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xenstored.conf | |
576 | ||
577 | install %{SOURCE60} $RPM_BUILD_ROOT%{_libexecdir}/%{name}/bin/xen-init-list | |
578 | install %{SOURCE61} $RPM_BUILD_ROOT%{_libexecdir}/%{name}/bin/xen-toolstack | |
579 | ||
580 | %{__sed} -E -i -e '1s,#!\s*/usr/bin/python(\s|$),#!%{__python}\1,' \ | |
581 | $RPM_BUILD_ROOT%{_libexecdir}/%{name}/bin/pygrub | |
582 | ||
583 | %if %{with efi} | |
584 | install %{SOURCE57} $RPM_BUILD_ROOT/etc/efi-boot/xen.cfg | |
585 | sed -e's;@libdir@;%{_libdir};g' -e's;@target_cpu@;%{_target_cpu};g' \ | |
586 | %{SOURCE58} > $RPM_BUILD_ROOT/etc/efi-boot/update.d/xen.conf | |
587 | %endif | |
588 | ||
589 | %{__mv} $RPM_BUILD_ROOT/etc/xen/{xlexample*,examples} | |
590 | ||
591 | install %{SOURCE59} $RPM_BUILD_ROOT%{_sysconfdir}/xen/scripts/vif-openvswitch | |
592 | ||
593 | # for %%doc | |
594 | install -d _doc | |
595 | cp -p tools/pygrub/README _doc/README.pygrub | |
596 | ||
597 | %if %{with python2} | |
598 | %py_comp $RPM_BUILD_ROOT%{py_sitedir} | |
599 | %py_ocomp $RPM_BUILD_ROOT%{py_sitedir} | |
600 | ||
601 | %py_postclean | |
602 | %else | |
603 | %py3_comp $RPM_BUILD_ROOT%{py3_sitedir} | |
604 | %py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir} | |
605 | %endif | |
606 | ||
607 | # remove unneeded files | |
608 | %if %{with hypervisor} | |
609 | %{__mv} xen/xen-syms $RPM_BUILD_ROOT/boot/%{name}-syms-%{version} | |
610 | %{__rm} $RPM_BUILD_ROOT/boot/xen-4.16.gz | |
611 | %{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz | |
612 | %endif | |
613 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen | |
614 | %{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING | |
615 | ||
616 | %clean | |
617 | rm -rf $RPM_BUILD_ROOT | |
618 | ||
619 | %post | |
620 | /sbin/chkconfig --add xen-watchdog | |
621 | /sbin/chkconfig --add xenconsoled | |
622 | /sbin/chkconfig --add xenstored | |
623 | /sbin/chkconfig --add xendomains | |
624 | /sbin/chkconfig --add xen-qemu-dom0-disk-backend | |
625 | NORESTART=1 | |
626 | %systemd_post xen-watchdog.service xenconsoled.service xenstored.service xendomains.service xen-qemu-dom0-disk-backend.service | |
627 | ||
628 | %preun | |
629 | if [ "$1" = "0" ]; then | |
630 | %service xendomains stop | |
631 | /sbin/chkconfig --del xendomains | |
632 | ||
633 | %service xenconsoled stop | |
634 | /sbin/chkconfig --del xenconsoled | |
635 | ||
636 | %service xenstored stop | |
637 | /sbin/chkconfig --del xenstored | |
638 | ||
639 | %service xen-watchdog stop | |
640 | /sbin/chkconfig --del xen-watchdog | |
641 | ||
642 | %service xen-qemu-dom0-disk-backend stop | |
643 | /sbin/chkconfig --del xen-qemu-dom0-disk-backend | |
644 | fi | |
645 | %systemd_preun xen-watchdog.service xenconsoled.service xenstored.service xendomains.service xen-qemu-dom0-disk-backend.service | |
646 | ||
647 | %postun | |
648 | %systemd_reload | |
649 | ||
650 | %post libs -p /sbin/ldconfig | |
651 | %postun libs -p /sbin/ldconfig | |
652 | ||
653 | %post libs-guest -p /sbin/ldconfig | |
654 | %postun libs-guest -p /sbin/ldconfig | |
655 | ||
656 | %post efi | |
657 | [ -x /sbin/efi-boot-update ] && /sbin/efi-boot-update --auto || : | |
658 | ||
659 | %files | |
660 | %defattr(644,root,root,755) | |
661 | %doc COPYING README* docs/misc/* docs/html/* _doc/* | |
662 | %if %{with hypervisor} | |
663 | /boot/%{name}-syms-%{version} | |
664 | /boot/%{name}-%{version}.config | |
665 | /boot/%{name}-%{version}.gz | |
666 | /boot/%{name}.gz | |
667 | %endif | |
668 | %if %{with xsm} | |
669 | /boot/xenpolicy-%{version} | |
670 | %endif | |
671 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenconsoled | |
672 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenstored | |
673 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xendomains | |
674 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/xen | |
675 | %attr(754,root,root) /etc/rc.d/init.d/xen-watchdog | |
676 | %attr(754,root,root) /etc/rc.d/init.d/xenconsoled | |
677 | %attr(754,root,root) /etc/rc.d/init.d/xenstored | |
678 | %attr(754,root,root) /etc/rc.d/init.d/xendomains | |
679 | %attr(754,root,root) /etc/rc.d/init.d/xen-qemu-dom0-disk-backend | |
680 | %if %{with systemd} | |
681 | %{_prefix}/lib/modules-load.d/xen.conf | |
682 | %{systemdunitdir}/proc-xen.mount | |
683 | %{systemdunitdir}/var-lib-xenstored.mount | |
684 | %{systemdunitdir}/xen-init-dom0.service | |
685 | %{systemdunitdir}/xen-watchdog.service | |
686 | %{systemdunitdir}/xenconsoled.service | |
687 | %{systemdunitdir}/xenstored.service | |
688 | %{systemdunitdir}/xendriverdomain.service | |
689 | %{systemdunitdir}/xendomains.service | |
690 | %{systemdunitdir}/xen-qemu-dom0-disk-backend.service | |
691 | %endif | |
692 | %dir %{_sysconfdir}/xen | |
693 | %dir %{_sysconfdir}/xen/auto | |
694 | %dir %{_sysconfdir}/xen/examples | |
695 | %dir %{_sysconfdir}/xen/scripts | |
696 | %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/* | |
697 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/examples/* | |
698 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README* | |
699 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool | |
700 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf | |
701 | %attr(755,root,root) %{_bindir}/pygrub | |
702 | %if %{with qemu_traditional} | |
703 | %attr(755,root,root) %{_bindir}/qemu-img-xen | |
704 | %attr(755,root,root) %{_bindir}/qemu-nbd-xen | |
705 | %endif | |
706 | %attr(755,root,root) %{_bindir}/vchan-socket-proxy | |
707 | %attr(755,root,root) %{_bindir}/xen-cpuid | |
708 | %attr(755,root,root) %{_bindir}/xenalyze | |
709 | %attr(755,root,root) %{_bindir}/xencov_split | |
710 | %attr(755,root,root) %{_bindir}/xentrace_format | |
711 | %if %{with xsm} | |
712 | %attr(755,root,root) %{_sbindir}/flask-* | |
713 | %endif | |
714 | %attr(755,root,root) %{_sbindir}/gdbsx | |
715 | %attr(755,root,root) %{_sbindir}/xen-* | |
716 | %attr(755,root,root) %{_sbindir}/xenbaked | |
717 | %attr(755,root,root) %{_sbindir}/xenconsoled | |
718 | %attr(755,root,root) %{_sbindir}/xencov | |
719 | %attr(755,root,root) %{_sbindir}/xenhypfs | |
720 | %attr(755,root,root) %{_sbindir}/xenlockprof | |
721 | %attr(755,root,root) %{_sbindir}/xenmon | |
722 | %attr(755,root,root) %{_sbindir}/xenperf | |
723 | %attr(755,root,root) %{_sbindir}/xenpm | |
724 | %attr(755,root,root) %{_sbindir}/xenpmd | |
725 | %attr(755,root,root) %{_sbindir}/xenstored | |
726 | %attr(755,root,root) %{_sbindir}/xentop | |
727 | %attr(755,root,root) %{_sbindir}/xentrace | |
728 | %attr(755,root,root) %{_sbindir}/xentrace_setmask | |
729 | %attr(755,root,root) %{_sbindir}/xentrace_setsize | |
730 | %attr(755,root,root) %{_sbindir}/xenwatchdogd | |
731 | %attr(755,root,root) %{_sbindir}/xl | |
732 | %dir %{_libexecdir}/%{name} | |
733 | %dir %{_libexecdir}/%{name}/bin | |
734 | %attr(744,root,root) %{_libexecdir}/%{name}/bin/* | |
735 | %dir %{_libexecdir}/%{name}/boot | |
736 | %if %{with stubdom} | |
737 | %if %{with qemu_traditional} | |
738 | %{_libexecdir}/%{name}/boot/ioemu-stubdom.gz | |
739 | %endif | |
740 | %if %{with pv_grub} | |
741 | %ifarch %{ix86} %{x8664} | |
742 | %{_libexecdir}/%{name}/boot/pv-grub-x86_32.gz | |
743 | %endif | |
744 | %ifarch %{x8664} | |
745 | %{_libexecdir}/%{name}/boot/pv-grub-x86_64.gz | |
746 | %endif | |
747 | %endif | |
748 | %{_libexecdir}/%{name}/boot/vtpm-stubdom.gz | |
749 | %{_libexecdir}/%{name}/boot/vtpmmgr-stubdom.gz | |
750 | %{_libexecdir}/%{name}/boot/xenstore-stubdom.gz | |
751 | %{_libexecdir}/%{name}/boot/xenstorepvh-stubdom.gz | |
752 | %endif | |
753 | %{_libexecdir}/%{name}/boot/ipxe.bin | |
754 | %ifarch %{x8664} | |
755 | %{_libexecdir}/%{name}/boot/xen-shim | |
756 | %endif | |
757 | %attr(744,root,root) %{_libexecdir}/%{name}/boot/hvmloader | |
758 | %{_mandir}/man1/xenhypfs.1* | |
759 | %{_mandir}/man1/xentop.1* | |
760 | %{_mandir}/man1/xentrace_format.1* | |
761 | %{_mandir}/man1/xl.1* | |
762 | %{_mandir}/man5/xl.cfg.5* | |
763 | %{_mandir}/man5/xl.conf.5* | |
764 | %{_mandir}/man5/xl-disk-configuration.5* | |
765 | %{_mandir}/man5/xl-network-configuration.5* | |
766 | %{_mandir}/man5/xl-pci-configuration.5* | |
767 | %{_mandir}/man5/xlcpupool.cfg.5* | |
768 | %{_mandir}/man7/xen-pci-device-reservations.7* | |
769 | %{_mandir}/man7/xen-pv-channel.7* | |
770 | %{_mandir}/man7/xen-tscmode.7* | |
771 | %{_mandir}/man7/xen-vbd-interface.7* | |
772 | %{_mandir}/man7/xen-vtpm.7* | |
773 | %{_mandir}/man7/xen-vtpmmgr.7* | |
774 | %{_mandir}/man7/xl-numa-placement.7* | |
775 | %{_mandir}/man8/xentrace.8* | |
776 | %{_sharedstatedir}/xen | |
777 | %{_sharedstatedir}/xenstored | |
778 | %dir /var/run/xenstored | |
779 | %{systemdtmpfilesdir}/xen.conf | |
780 | %{systemdtmpfilesdir}/xenstored.conf | |
781 | %dir %attr(0700,root,root) /var/log/xen | |
782 | %dir %attr(0700,root,root) /var/log/xen/console | |
783 | %if %{with qemu_traditional} | |
784 | %{_datadir}/xen | |
785 | %endif | |
786 | ||
787 | %files guest | |
788 | %defattr(644,root,root,755) | |
789 | %attr(755,root,root) %{_bindir}/xen-detect | |
790 | %attr(755,root,root) %{_bindir}/xenstore | |
791 | %attr(755,root,root) %{_bindir}/xenstore-chmod | |
792 | %attr(755,root,root) %{_bindir}/xenstore-control | |
793 | %attr(755,root,root) %{_bindir}/xenstore-exists | |
794 | %attr(755,root,root) %{_bindir}/xenstore-list | |
795 | %attr(755,root,root) %{_bindir}/xenstore-ls | |
796 | %attr(755,root,root) %{_bindir}/xenstore-read | |
797 | %attr(755,root,root) %{_bindir}/xenstore-rm | |
798 | %attr(755,root,root) %{_bindir}/xenstore-watch | |
799 | %attr(755,root,root) %{_bindir}/xenstore-write | |
800 | %{_mandir}/man1/xenstore.1* | |
801 | %{_mandir}/man1/xenstore-chmod.1* | |
802 | %{_mandir}/man1/xenstore-ls.1* | |
803 | %{_mandir}/man1/xenstore-read.1* | |
804 | %{_mandir}/man1/xenstore-write.1* | |
805 | ||
806 | %files libs | |
807 | %defattr(644,root,root,755) | |
808 | %attr(755,root,root) %{_libdir}/libxenfsimage.so.*.*.* | |
809 | %attr(755,root,root) %ghost %{_libdir}/libxenfsimage.so.4.16 | |
810 | %attr(755,root,root) %{_libdir}/libxencall.so.*.* | |
811 | %attr(755,root,root) %ghost %{_libdir}/libxencall.so.1 | |
812 | %attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.* | |
813 | %attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.16 | |
814 | %attr(755,root,root) %{_libdir}/libxendevicemodel.so.*.* | |
815 | %attr(755,root,root) %ghost %{_libdir}/libxendevicemodel.so.1 | |
816 | %attr(755,root,root) %{_libdir}/libxenevtchn.so.*.* | |
817 | %attr(755,root,root) %ghost %{_libdir}/libxenevtchn.so.1 | |
818 | %attr(755,root,root) %{_libdir}/libxenforeignmemory.so.*.* | |
819 | %attr(755,root,root) %ghost %{_libdir}/libxenforeignmemory.so.1 | |
820 | %attr(755,root,root) %{_libdir}/libxengnttab.so.*.* | |
821 | %attr(755,root,root) %ghost %{_libdir}/libxengnttab.so.1 | |
822 | %attr(755,root,root) %{_libdir}/libxenguest.so.*.*.* | |
823 | %attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.16 | |
824 | %attr(755,root,root) %{_libdir}/libxenhypfs.so.*.* | |
825 | %attr(755,root,root) %ghost %{_libdir}/libxenhypfs.so.1 | |
826 | %attr(755,root,root) %{_libdir}/libxenlight.so.*.*.* | |
827 | %attr(755,root,root) %ghost %{_libdir}/libxenlight.so.4.16 | |
828 | %attr(755,root,root) %{_libdir}/libxenstat.so.*.*.* | |
829 | %attr(755,root,root) %ghost %{_libdir}/libxenstat.so.4.16 | |
830 | %attr(755,root,root) %{_libdir}/libxentoolcore.so.*.* | |
831 | %attr(755,root,root) %ghost %{_libdir}/libxentoolcore.so.1 | |
832 | %attr(755,root,root) %{_libdir}/libxentoollog.so.*.* | |
833 | %attr(755,root,root) %ghost %{_libdir}/libxentoollog.so.1 | |
834 | %attr(755,root,root) %{_libdir}/libxenvchan.so.*.*.* | |
835 | %attr(755,root,root) %ghost %{_libdir}/libxenvchan.so.4.16 | |
836 | %attr(755,root,root) %{_libdir}/libxlutil.so.*.*.* | |
837 | %attr(755,root,root) %ghost %{_libdir}/libxlutil.so.4.16 | |
838 | %dir %{_libdir}/xenfsimage | |
839 | %dir %{_libdir}/xenfsimage/ext2fs-lib | |
840 | %dir %{_libdir}/xenfsimage/fat | |
841 | %dir %{_libdir}/xenfsimage/iso9660 | |
842 | %dir %{_libdir}/xenfsimage/reiserfs | |
843 | %dir %{_libdir}/xenfsimage/ufs | |
844 | %dir %{_libdir}/xenfsimage/xfs | |
845 | %dir %{_libdir}/xenfsimage/zfs | |
846 | %attr(755,root,root) %{_libdir}/xenfsimage/*/fsimage.so | |
847 | ||
848 | %files libs-guest | |
849 | %defattr(644,root,root,755) | |
850 | %attr(755,root,root) %{_libdir}/libxenstore.so.*.* | |
851 | %attr(755,root,root) %ghost %{_libdir}/libxenstore.so.4 | |
852 | ||
853 | %files devel | |
854 | %defattr(644,root,root,755) | |
855 | %attr(755,root,root) %{_libdir}/libxenfsimage.so | |
856 | %attr(755,root,root) %{_libdir}/libxencall.so | |
857 | %attr(755,root,root) %{_libdir}/libxenctrl.so | |
858 | %attr(755,root,root) %{_libdir}/libxendevicemodel.so | |
859 | %attr(755,root,root) %{_libdir}/libxenevtchn.so | |
860 | %attr(755,root,root) %{_libdir}/libxenforeignmemory.so | |
861 | %attr(755,root,root) %{_libdir}/libxengnttab.so | |
862 | %attr(755,root,root) %{_libdir}/libxenguest.so | |
863 | %attr(755,root,root) %{_libdir}/libxenhypfs.so | |
864 | %attr(755,root,root) %{_libdir}/libxenlight.so | |
865 | %attr(755,root,root) %{_libdir}/libxenstat.so | |
866 | %attr(755,root,root) %{_libdir}/libxenstore.so | |
867 | %attr(755,root,root) %{_libdir}/libxentoolcore.so | |
868 | %attr(755,root,root) %{_libdir}/libxentoollog.so | |
869 | %attr(755,root,root) %{_libdir}/libxenvchan.so | |
870 | %attr(755,root,root) %{_libdir}/libxlutil.so | |
871 | %{_includedir}/_libxl_list.h | |
872 | %{_includedir}/_libxl_types.h | |
873 | %{_includedir}/_libxl_types_json.h | |
874 | %{_includedir}/libxenvchan.h | |
875 | %{_includedir}/libxl*.h | |
876 | %{_includedir}/xen*.h | |
877 | %{_includedir}/xs*.h | |
878 | %{_includedir}/xen | |
879 | %{_includedir}/xenstore-compat | |
880 | %{_pkgconfigdir}/xencall.pc | |
881 | %{_pkgconfigdir}/xencontrol.pc | |
882 | %{_pkgconfigdir}/xendevicemodel.pc | |
883 | %{_pkgconfigdir}/xenevtchn.pc | |
884 | %{_pkgconfigdir}/xenforeignmemory.pc | |
885 | %{_pkgconfigdir}/xengnttab.pc | |
886 | %{_pkgconfigdir}/xenguest.pc | |
887 | %{_pkgconfigdir}/xenhypfs.pc | |
888 | %{_pkgconfigdir}/xenlight.pc | |
889 | %{_pkgconfigdir}/xenstat.pc | |
890 | %{_pkgconfigdir}/xenstore.pc | |
891 | %{_pkgconfigdir}/xentoolcore.pc | |
892 | %{_pkgconfigdir}/xentoollog.pc | |
893 | %{_pkgconfigdir}/xenvchan.pc | |
894 | %{_pkgconfigdir}/xlutil.pc | |
895 | ||
896 | %files static | |
897 | %defattr(644,root,root,755) | |
898 | %{_libdir}/libxencall.a | |
899 | %{_libdir}/libxenctrl.a | |
900 | %{_libdir}/libxendevicemodel.a | |
901 | %{_libdir}/libxenevtchn.a | |
902 | %{_libdir}/libxenforeignmemory.a | |
903 | %{_libdir}/libxengnttab.a | |
904 | %{_libdir}/libxenguest.a | |
905 | %{_libdir}/libxenhypfs.a | |
906 | %{_libdir}/libxenlight.a | |
907 | %{_libdir}/libxenvchan.a | |
908 | %{_libdir}/libxenstat.a | |
909 | %{_libdir}/libxenstore.a | |
910 | %{_libdir}/libxentoolcore.a | |
911 | %{_libdir}/libxentoollog.a | |
912 | %{_libdir}/libxlutil.a | |
913 | ||
914 | # -n golang-xen | |
915 | # XXX: location? | |
916 | #%{_datadir}/gocode/src/golang.xenproject.org/xenlight | |
917 | ||
918 | %if %{with ocaml} | |
919 | %files -n ocaml-xen | |
920 | %defattr(644,root,root,755) | |
921 | %doc tools/ocaml/LICENSE | |
922 | %attr(755,root,root) %{_sbindir}/oxenstored | |
923 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/oxenstored.conf | |
924 | %dir %{_libdir}/ocaml/xenbus | |
925 | %attr(755,root,root) %{_libdir}/ocaml/xenbus/dllxenbus_stubs.so | |
926 | %dir %{_libdir}/ocaml/xenctrl | |
927 | %attr(755,root,root) %{_libdir}/ocaml/xenctrl/dllxenctrl_stubs.so | |
928 | %dir %{_libdir}/ocaml/xeneventchn | |
929 | %attr(755,root,root) %{_libdir}/ocaml/xeneventchn/dllxeneventchn_stubs.so | |
930 | %dir %{_libdir}/ocaml/xenlight | |
931 | %attr(755,root,root) %{_libdir}/ocaml/xenlight/dllxenlight_stubs.so | |
932 | %dir %{_libdir}/ocaml/xenmmap | |
933 | %attr(755,root,root) %{_libdir}/ocaml/xenmmap/dllxenmmap_stubs.so | |
934 | %dir %{_libdir}/ocaml/xentoollog | |
935 | %attr(755,root,root) %{_libdir}/ocaml/xentoollog/dllxentoollog_stubs.so | |
936 | ||
937 | %files -n ocaml-xen-devel | |
938 | %defattr(644,root,root,755) | |
939 | %{_libdir}/ocaml/xenbus/META | |
940 | %{_libdir}/ocaml/xenbus/libxenbus_stubs.a | |
941 | %{_libdir}/ocaml/xenbus/xenbus.a | |
942 | %{_libdir}/ocaml/xenbus/*.cm[aixo]* | |
943 | %{_libdir}/ocaml/xenctrl/META | |
944 | %{_libdir}/ocaml/xenctrl/libxenctrl_stubs.a | |
945 | %{_libdir}/ocaml/xenctrl/xenctrl.a | |
946 | %{_libdir}/ocaml/xenctrl/xenctrl.cm[aix]* | |
947 | %{_libdir}/ocaml/xeneventchn/META | |
948 | %{_libdir}/ocaml/xeneventchn/libxeneventchn_stubs.a | |
949 | %{_libdir}/ocaml/xeneventchn/xeneventchn.a | |
950 | %{_libdir}/ocaml/xeneventchn/xeneventchn.cm[aix]* | |
951 | %{_libdir}/ocaml/xenmmap/META | |
952 | %{_libdir}/ocaml/xenmmap/libxenmmap_stubs.a | |
953 | %{_libdir}/ocaml/xenmmap/xenmmap.a | |
954 | %{_libdir}/ocaml/xenmmap/xenmmap.cm[aix]* | |
955 | %{_libdir}/ocaml/xenlight/META | |
956 | %{_libdir}/ocaml/xenlight/libxenlight_stubs.a | |
957 | %{_libdir}/ocaml/xenlight/xenlight.a | |
958 | %{_libdir}/ocaml/xenlight/xenlight.cm[aix]* | |
959 | %dir %{_libdir}/ocaml/xenstore | |
960 | %{_libdir}/ocaml/xenstore/META | |
961 | %{_libdir}/ocaml/xenstore/xenstore.a | |
962 | %{_libdir}/ocaml/xenstore/*.cm[aixo]* | |
963 | %{_libdir}/ocaml/xentoollog/META | |
964 | %{_libdir}/ocaml/xentoollog/libxentoollog_stubs.a | |
965 | %{_libdir}/ocaml/xentoollog/xentoollog.a | |
966 | %{_libdir}/ocaml/xentoollog/*.cm[aixo]* | |
967 | %endif | |
968 | ||
969 | %if %{with python2} | |
970 | %files -n python-xen | |
971 | %defattr(644,root,root,755) | |
972 | %attr(755,root,root) %{py_sitedir}/xenfsimage.so | |
973 | %dir %{py_sitedir}/xen | |
974 | %{py_sitedir}/xen/util.py[co] | |
975 | %dir %{py_sitedir}/xen/lowlevel | |
976 | %attr(755,root,root) %{py_sitedir}/xen/lowlevel/xc.so | |
977 | %{py_sitedir}/xen/migration | |
978 | %{py_sitedir}/grub | |
979 | %{py_sitedir}/pygrub-*-py*.egg-info | |
980 | %{py_sitedir}/xen-*-py*.egg-info | |
981 | ||
982 | %files -n python-xen-guest | |
983 | %defattr(644,root,root,755) | |
984 | %dir %{py_sitedir}/xen | |
985 | %{py_sitedir}/xen/__init__.py[co] | |
986 | %dir %{py_sitedir}/xen/lowlevel | |
987 | %{py_sitedir}/xen/lowlevel/__init__.py[co] | |
988 | %attr(755,root,root) %{py_sitedir}/xen/lowlevel/xs.so | |
989 | ||
990 | %else | |
991 | ||
992 | %files -n python3-xen | |
993 | %defattr(644,root,root,755) | |
994 | %attr(755,root,root) %{py3_sitedir}/xenfsimage.cpython-*.so | |
995 | %dir %{py3_sitedir}/xen | |
996 | %dir %{py3_sitedir}/xen/__pycache__ | |
997 | %{py3_sitedir}/xen/util.py | |
998 | %{py3_sitedir}/xen/__pycache__/util.cpython-*.py[co] | |
999 | %dir %{py3_sitedir}/xen/lowlevel | |
1000 | %attr(755,root,root) %{py3_sitedir}/xen/lowlevel/xc.cpython-*.so | |
1001 | %{py3_sitedir}/xen/migration | |
1002 | %{py3_sitedir}/grub | |
1003 | %{py3_sitedir}/pygrub-*-py*.egg-info | |
1004 | %{py3_sitedir}/xen-*-py*.egg-info | |
1005 | ||
1006 | %files -n python3-xen-guest | |
1007 | %defattr(644,root,root,755) | |
1008 | %dir %{py3_sitedir}/xen | |
1009 | %dir %{py3_sitedir}/xen/__pycache__ | |
1010 | %{py3_sitedir}/xen/__init__.py* | |
1011 | %{py3_sitedir}/xen/__pycache__/__init__.cpython-*.py[co] | |
1012 | %dir %{py3_sitedir}/xen/lowlevel | |
1013 | %{py3_sitedir}/xen/lowlevel/__init__.py | |
1014 | %{py3_sitedir}/xen/lowlevel/__pycache__ | |
1015 | %attr(755,root,root) %{py3_sitedir}/xen/lowlevel/xs.cpython-*.so | |
1016 | %endif | |
1017 | ||
1018 | %files -n bash-completion-%{name} | |
1019 | %defattr(644,root,root,755) | |
1020 | /etc/bash_completion.d/xl | |
1021 | ||
1022 | %if %{with efi} | |
1023 | %files efi | |
1024 | %defattr(644,root,root,755) | |
1025 | %dir %{_libdir}/efi | |
1026 | %{_libdir}/efi/*.efi | |
1027 | %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/xen.cfg | |
1028 | %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/update.d/xen.conf | |
1029 | %endif |