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