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