]> git.pld-linux.org Git - packages/xen.git/blob - xen.spec
Fix CVE-2014-2599
[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 #
10 # Conditional build:
11 %bcond_without  qemu_traditional # without qemu-xen-traditional
12 %bcond_without  opengl          # OpenGL support in Xen qemu
13 %bcond_without  sdl             # SDL support in Xen qemu
14 %bcond_without  bluetooth       # bluetooth support in Xen qemu
15 %bcond_without  brlapi          # brlapi support in Xen qemu
16 %bcond_without  ocaml           # Ocaml libraries for Xen tools
17 %bcond_without  efi             # EFI hypervisor
18 %bcond_without  hypervisor      # Xen hypervisor build
19 %bcond_without  stubdom         # stubdom build
20 %bcond_without  xsm             # XSM security module (by default, Flask)
21 %bcond_without  blktap1         # blktap1 support
22 %bcond_without  xend            # include the obsolete xend & xm
23
24 %ifnarch %{x8664} arm
25 %undefine       with_hypervisor
26 %endif
27 %ifnarch %{x8664}
28 %undefine       with_efi
29 %endif
30 %ifnarch %{ix86} %{x8664}
31 %undefine       with_stubdom
32 %endif
33
34 # from Config.mk:
35 %define seabios_version         1.6.3.2
36
37 # from ./stubdom/configure.ac
38 %define polarssl_version        1.1.4
39 %define tpm_emulator_version    0.7.4
40 %define gmp_version             4.3.2
41
42 %define xen_extfiles_url        http://xenbits.xensource.com/xen-extfiles
43 Summary:        Xen - a virtual machine monitor
44 Summary(pl.UTF-8):      Xen - monitor maszyny wirtualnej
45 Name:           xen
46 Version:        4.4.0
47 Release:        0.1
48 License:        GPL v2, interface parts on BSD-like
49 Group:          Applications/System
50 Source0:        http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
51 # Source0-md5:  fd9031d499af38c5d04108681734027e
52 # used by stubdoms
53 Source10:       %{xen_extfiles_url}/lwip-1.3.0.tar.gz
54 # Source10-md5: 36cc57650cffda9a0269493be2a169bb
55 Source11:       %{xen_extfiles_url}/newlib-1.16.0.tar.gz
56 # Source11-md5: bf8f1f9e3ca83d732c00a79a6ef29bc4
57 Source12:       %{xen_extfiles_url}/zlib-1.2.3.tar.gz
58 # Source12-md5: debc62758716a169df9f62e6ab2bc634
59 Source13:       %{xen_extfiles_url}/pciutils-2.2.9.tar.bz2
60 # Source13-md5: cec05e7785497c5e19da2f114b934ffd
61 Source14:       %{xen_extfiles_url}/grub-0.97.tar.gz
62 # Source14-md5: cd3f3eb54446be6003156158d51f4884
63 Source15:       http://xenbits.xen.org/xen-extfiles/ipxe-git-9a93db3f0947484e30e753bbd61a10b17336e20e.tar.gz
64 # Source15-md5: 7496268cebf47d5c9ccb0696e3b26065
65 # http://xenbits.xen.org/git-http/seabios.git/
66 # git archive --prefix=tools/firmware/seabios/ --format=tar rel-%{seabios_version} | xz > seabios-%{seabios_version}.tar.xz
67 Source16:       seabios-%{seabios_version}.tar.xz
68 # Source16-md5: 145e07ff5618a3999f94f2e830d06b05
69 Source17:       %{xen_extfiles_url}/polarssl-%{polarssl_version}-gpl.tgz
70 # Source17-md5: 7b72caf22b01464ee7d6165f2fd85f44
71 Source18:       http://xenbits.xen.org/xen-extfiles/tpm_emulator-%{tpm_emulator_version}.tar.gz
72 # Source18-md5: e26becb8a6a2b6695f6b3e8097593db8
73 Source19:       ftp://ftp.gmplib.org/pub/gmp-%{gmp_version}/gmp-%{gmp_version}.tar.bz2
74 # Source19-md5: dd60683d7057917e34630b4a787932e8
75 Source30:       proc-xen.mount
76 Source31:       var-lib-xenstored.mount
77 Source32:       blktapctrl.service
78 Source33:       blktapctrl.sysconfig
79 Source34:       xenconsoled.service
80 Source35:       xenconsoled.sysconfig
81 Source36:       xenstored.service
82 Source37:       xenstored.sysconfig
83 Source38:       xenstored.tmpfiles
84 Source39:       xend.service
85 Source40:       xend.tmpfiles
86 Source41:       xen-watchdog.service
87 Source42:       xen-dom0-modules-load.conf
88 Source43:       xendomains.sh
89 Source44:       xendomains.service
90 # sysvinit scripts
91 Source50:       xend.init
92 Source51:       xenconsoled.init
93 Source52:       xenstored.init
94 Source53:       xen-watchdog.init
95 Source54:       xendomains.init
96 Source55:       xen.logrotate
97 Source56:       xen.tmpfiles
98 Source57:       xen.cfg
99 Source58:       xen.efi-boot-update
100 Source59:       vif-openvswitch
101 Source60:       xen-init-list
102 Source61:       xen-toolstack
103 Patch0:         %{name}-python_scripts.patch
104 Patch1:         %{name}-symbols.patch
105 Patch2:         %{name}-curses.patch
106 Patch3:         pygrubfix.patch
107 Patch4:         xend.catchbt.patch
108 Patch5:         xend-pci-loop.patch
109 Patch6:         %{name}-dumpdir.patch
110 # Warning: this disables ingress filtering implemented in xen scripts!
111 Patch7:         %{name}-net-disable-iptables-on-bridge.patch
112 Patch8:         %{name}-configure-xend.patch
113 Patch10:        %{name}-qemu.patch
114 Patch11:        %{name}-ulong.patch
115 Patch12:        %{name}-doc.patch
116 Patch13:        %{name}-paths.patch
117 Patch14:        %{name}-no_fetcher.patch
118 Patch15:        odd-glib2-fix.patch
119 Patch16:        CVE-2014-2599.patch
120 URL:            http://www.xen.org/products/xenhyp.html
121 %if %{with qemu_traditional}
122 %{?with_opengl:BuildRequires:   OpenGL-devel}
123 %{?with_sdl:BuildRequires:      SDL-devel >= 1.2.1}
124 %endif
125 %ifarch %{ix86} %{x8664}
126 BuildRequires:  acpica
127 BuildRequires:  autoconf
128 BuildRequires:  bcc
129 BuildRequires:  bin86
130 %endif
131 %if %{with qemu_traditional}
132 %{?with_bluetooth:BuildRequires:        bluez-libs-devel}
133 %{?with_brlapi:BuildRequires:   brlapi-devel}
134 %endif
135 %{?with_efi:BuildRequires:      binutils >= 3:2.23.51.0.3-2}
136 BuildRequires:  bzip2-devel
137 BuildRequires:  curl-devel
138 BuildRequires:  cyrus-sasl-devel >= 2
139 %if %{with xsm}
140 BuildRequires:  checkpolicy
141 %endif
142 BuildRequires:  e2fsprogs-devel
143 BuildRequires:  gcc >= 6:4.1
144 BuildRequires:  gettext-devel
145 BuildRequires:  glib2-devel >= 1:2.12
146 BuildRequires:  gnutls-devel
147 BuildRequires:  keyutils-devel
148 BuildRequires:  latex2html >= 2008
149 BuildRequires:  libaio-devel
150 BuildRequires:  libcap-devel
151 BuildRequires:  libjpeg-devel
152 BuildRequires:  libpng-devel
153 BuildRequires:  libuuid-devel
154 BuildRequires:  lzo-devel >= 2
155 BuildRequires:  ncurses-devel
156 %if %{with ocaml}
157 BuildRequires:  ocaml >= 3.04-7
158 BuildRequires:  ocaml-findlib
159 %endif
160 BuildRequires:  nss-devel >= 3.12.8
161 BuildRequires:  openssl-devel
162 BuildRequires:  pciutils-devel
163 BuildRequires:  perl-base
164 BuildRequires:  perl-tools-pod
165 BuildRequires:  pkgconfig
166 BuildRequires:  python-devel
167 BuildRequires:  rpm-pythonprov
168 BuildRequires:  rpmbuild(macros) >= 1.647
169 BuildRequires:  texi2html
170 BuildRequires:  texlive-dvips
171 BuildRequires:  texlive-latex-psnfss
172 BuildRequires:  texlive-xetex
173 BuildRequires:  transfig
174 %{?with_qemu_traditional:BuildRequires: vde2-devel}
175 BuildRequires:  which
176 # for xfsctl (<xfs/xfs.h>)
177 BuildRequires:  xfsprogs-devel
178 %if %{with qemu_traditional}
179 BuildRequires:  xorg-lib-libX11-devel
180 BuildRequires:  xorg-lib-libXext-devel
181 %endif
182 BuildRequires:  xz-devel
183 BuildRequires:  yajl-devel
184 BuildRequires:  zlib-devel
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 ExclusiveArch:  %{ix86} %{x8664} arm
214 %ifarch %{ix86} %{x8664}
215 # for HVM
216 Suggests:       qemu-system-x86
217 %endif
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
267 %description libs
268 Xen libraries.
269
270 %description libs -l pl.UTF-8
271 Biblioteki Xena.
272
273 %package libs-guest
274 Summary:        Xen libraries for virtual machines
275 Summary(pl.UTF-8):      Biblioteki Xena dla maszyn wirtualnych
276 Group:          Libraries
277
278 %description libs-guest
279 Xen libraries for both dom0 and domU virtual machines.
280
281 %description libs-guest -l pl.UTF-8
282 Biblioteki Xena dla maszyn wirtualnych dom0 i domU.
283
284 %package devel
285 Summary:        Header files for Xen
286 Summary(pl.UTF-8):      Pliki nagłówkowe Xena
287 Group:          Development/Libraries
288 Requires:       %{name}-libs = %{version}-%{release}
289
290 %description devel
291 Header files for Xen.
292
293 %description devel -l pl.UTF-8
294 Pliki nagłówkowe Xena.
295
296 %package static
297 Summary:        Static Xen libraries
298 Summary(pl.UTF-8):      Statyczne biblioteki Xena
299 Group:          Development/Libraries
300 Requires:       %{name}-devel = %{version}-%{release}
301
302 %description static
303 Static Xen libraries.
304
305 %description static -l pl.UTF-8
306 Statyczne biblioteki Xena.
307
308 %package xend
309 Summary:        xend daemon
310 Summary(pl.UTF-8):      Demon xend
311 Group:          Daemons
312 Requires(post,preun,postun):    systemd-units >= 38
313 Requires:       systemd-units >= 38
314
315 %description xend
316 xend daemon.
317
318 %description xend -l pl.UTF-8
319 Demon xend.
320
321 %package -n ocaml-xen
322 Summary:        OCaml bindings for Xen
323 Summary(pl.UTF-8):      Wiązania OCamla dla Xena
324 License:        LGPL v2.1 with linking exception
325 Group:          Libraries
326 Requires:       %{name}-libs = %{version}-%{release}
327 %if %{with ocaml}
328 %requires_eq    ocaml-runtime
329 %endif
330
331 %description -n ocaml-xen
332 OCaml bindings for Xen.
333
334 %description -n ocaml-xen -l pl.UTF-8
335 Wiązania OCamla dla Xena.
336
337 %package -n ocaml-xen-devel
338 Summary:        OCaml bindings for Xen - development files
339 Summary(pl.UTF-8):      Wiązania OCamla dla Xena - pliki programistyczne
340 License:        LGPL v2.1 with linking exception
341 Group:          Development/Libraries
342 Requires:       ocaml-xen = %{version}-%{release}
343 %if %{with ocaml}
344 %requires_eq    ocaml
345 %endif
346
347 %description -n ocaml-xen-devel
348 OCaml bindings for Xen - development files.
349
350 %description -n ocaml-xen-devel -l pl.UTF-8
351 Wiązania OCamla dla Xena - pliki programistyczne.
352
353 %package -n python-xen
354 Summary:        Xen Python modules
355 Summary(pl.UTF-8):      Moduły Pythona dla Xena
356 Group:          Libraries
357 Requires:       %{name}-libs = %{version}-%{release}
358 Conflicts:      xen < 3.2.1-0.3
359
360 %description -n python-xen
361 Xen Python modules.
362
363 %description -n python-xen -l pl.UTF-8
364 Moduły Pythona dla Xena.
365
366 %package -n python-xen-guest
367 Summary:        Xen Python modules for virtual machines
368 Summary(pl.UTF-8):      Moduły Pythona dla maszyn wirtualnych Xena
369 Group:          Libraries
370 Requires:       %{name}-libs-guest = %{version}-%{release}
371 Conflicts:      xen < 3.2.1-0.3
372
373 %description -n python-xen-guest
374 Xen Python modules for both dom0 and domU virtual machines.
375
376 %description -n python-xen-guest -l pl.UTF-8
377 Moduły Pythona dla maszyn wirtualnych dom0 i domU.
378
379 %package -n bash-completion-%{name}
380 Summary:    bash-completion for Xen (xl)
381 Summary(pl.UTF-8):      Bashowe dopełnianie poleceń dla Xena (xl)
382 Group:      Applications/Shells
383 Requires:   %{name} = %{version}-%{release}
384 Requires:   bash-completion
385
386 %description -n bash-completion-%{name}
387 This package provides bash-completion for Xen (xl).
388
389 %description -n bash-completion-%{name} -l pl.UTF-8
390 Ten pakiet zapewnia bashowe dopełnianie poleceń dla Xena (xl).
391
392 %package efi
393 Summary:        Xen hypervisor binary for EFI
394 Summary(pl.UTF-8):      Hipernadzorca Xen dla EFI
395 Group:          Applications/System
396 Requires:       %{name}-libs-guest = %{version}-%{release}
397
398 %description efi
399 Xen hypervisor EFI binary, which can be booted directly from (U)EFI
400 firmware without help from any additional bootloader.
401
402 %description efi -l pl.UTF-8
403 Nadzorca Xen w postaci, która może być uruchomiona wprost z firmware
404 (U)EFI, bez potrzeby oddzielnego bootloadera.
405
406 %prep
407 %setup -q -a 16
408 %patch0 -p1
409 %patch1 -p1
410 %patch2 -p1
411 %patch3 -p1
412 %patch4 -p1
413 %patch5 -p1
414 %patch6 -p1
415 %patch7 -p1
416 %patch8 -p1
417 %patch10 -p1
418 %patch11 -p1
419 %patch12 -p1
420 %patch13 -p1
421 %patch14 -p1
422 %patch15 -p1
423 %patch16 -p1
424
425 # stubdom sources
426 ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom
427 ln -s %{SOURCE17} %{SOURCE18} %{SOURCE19} stubdom
428 ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
429
430 # do not allow fetching anything via git
431 echo GIT=/bin/false >> Config.mk
432
433 %build
434 # based on the 'autoconf.sh' from the sources
435 %{__autoconf}
436 cd tools
437 %{__autoconf}
438 %{__autoheader}
439 cd ../stubdom
440 %{__autoconf}
441 cd ../docs
442 %{__autoconf}
443 cd ..
444
445 # if gold is used then bioses and grub doesn't build
446 install -d our-ld
447 ln -f -s /usr/bin/ld.bfd our-ld/ld
448 export PATH=$(pwd)/our-ld:$PATH
449
450 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
451 export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
452
453 # NOTE:
454 # - there is a quoting bug (in tools/driver/Makefile) that causes
455 #   openssl is used instead of gcrypt; that's OK, openssl is obligatory
456 #   anyway (see configure), gcrypt is optional
457 # - prevent libiconv from being detected (not needed with glibc)
458 %configure \
459         CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses" \
460         ac_cv_lib_iconv_libiconv_open=no \
461         %{__enable_disable qemu_traditional qemu-traditional} \
462         %{__enable_disable blktap1 blktap1} \
463         %{__enable_disable xend xend} \
464 %ifarch %{x8664}
465         --with-system-qemu=/usr/bin/qemu-system-x86_64 \
466 %else
467         --with-system-qemu=/usr/bin/qemu-system-i386 \
468 %endif
469         --disable-debug
470
471 %{__make} -j1 dist-xen dist-tools dist-docs \
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
478 unset CFLAGS
479 unset CXXFLAGS
480
481 %if %{with stubdom}
482 %{__make} -j1 dist-stubdom \
483         %{!?with_ocaml:OCAML_TOOLS=n} \
484         XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
485         CC="%{__cc}" \
486         CXX="%{__cxx}" \
487         V=1
488 %endif
489
490 %install
491 rm -rf $RPM_BUILD_ROOT
492 install -d $RPM_BUILD_ROOT/etc/{xen/examples,modules-load.d,logrotate.d} \
493         $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{systemdunitdir},/var/log/xen/console}
494
495 %if %{with efi}
496 install -d $RPM_BUILD_ROOT/etc/efi-boot/update.d
497 %endif
498
499 %{__make} -j1 install-xen install-tools %{?with_stubdom:install-stubdom} install-docs \
500         %{!?with_ocaml:OCAML_TOOLS=n} \
501         XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
502         DESTDIR=$RPM_BUILD_ROOT \
503         HOTPLUGS=install-udev
504
505 %if %{with qemu_traditional}
506 %if "%{_lib}" == "lib64"
507 ln -s %{_prefix}/lib/%{name}/bin/qemu-dm $RPM_BUILD_ROOT%{_libdir}/%{name}/bin/qemu-dm
508 %endif
509 %endif
510
511 install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
512 install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
513 %if %{with blktap1}
514 install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service
515 install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl
516 %endif
517 install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
518 install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled
519 install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
520 install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored
521 install %{SOURCE38} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xenstored.conf
522 %if %{with xend}
523 install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service
524 install %{SOURCE40} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xend.conf
525 %endif
526 install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
527 install %{SOURCE42} $RPM_BUILD_ROOT/etc/modules-load.d/xen-dom0.conf
528 install %{SOURCE43} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xendomains.sh
529 install %{SOURCE44} $RPM_BUILD_ROOT%{systemdunitdir}/xendomains.service
530 # sysvinit scripts
531 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
532 %{__rm} $RPM_BUILD_ROOT/etc/sysconfig/xencommons
533 %if %{with xend}
534 install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
535 %endif
536 install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled
537 install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored
538 install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog
539 install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
540 install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
541 install %{SOURCE56} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xen.conf
542
543 install %{SOURCE60} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-init-list
544 install %{SOURCE61} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-toolstack
545
546 %if %{with efi}
547 install %{SOURCE57} $RPM_BUILD_ROOT/etc/efi-boot/xen.cfg
548 sed -e's;@libdir@;%{_libdir};g' -e's;@target_cpu@;%{_target_cpu};g' \
549                         %{SOURCE58} > $RPM_BUILD_ROOT/etc/efi-boot/update.d/xen.conf
550 %endif
551
552 mv $RPM_BUILD_ROOT/etc/xen/{xlexample*,examples}
553
554 install %{SOURCE59} $RPM_BUILD_ROOT%{_sysconfdir}/xen/scripts/vif-openvswitch
555
556 # for %%doc
557 install -d _doc
558 for tool in blktap blktap2 pygrub xenmon ; do
559         cp -p tools/$tool/README _doc/README.$tool
560 done
561
562 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
563 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
564
565 %py_postclean
566
567 # remove unneeded files
568 %if %{with hypervisor}
569 %{__rm} $RPM_BUILD_ROOT/boot/xen-4.4.gz
570 %{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz
571 %endif
572 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
573 %{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
574
575 %if %{without xend}
576 %{__rm} -r $RPM_BUILD_ROOT/var/run/xend
577 %endif
578
579 %clean
580 rm -rf $RPM_BUILD_ROOT
581
582 %post
583 /sbin/chkconfig --add xen-watchdog
584 /sbin/chkconfig --add xenconsoled
585 /sbin/chkconfig --add xenstored
586 /sbin/chkconfig --add xendomains
587 NORESTART=1
588 %systemd_post xen-watchdog.service xenconsoled.service xenstored.service xendomains.service
589
590 %preun
591 if [ "$1" = "0" ]; then
592         %service xendomains stop
593         /sbin/chkconfig --del xendomains
594
595         %service xenconsoled stop
596         /sbin/chkconfig --del xenconsoled
597
598         %service xenstored stop
599         /sbin/chkconfig --del xenstored
600
601         %service xen-watchdog stop
602         /sbin/chkconfig --del xen-watchdog
603 fi
604 %systemd_preun xen-watchdog.service xenconsoled.service xenstored.service xendomains.service
605
606 %postun
607 %systemd_reload
608
609 %post xend
610 /sbin/chkconfig --add xend
611 %systemd_post xend.service
612
613 %preun xend
614 if [ "$1" = "0" ]; then
615         %service xend stop
616         /sbin/chkconfig --del xend
617 fi
618 %systemd_preun xend.service
619
620 %postun xend
621 %systemd_reload
622
623 %post   libs -p /sbin/ldconfig
624 %postun libs -p /sbin/ldconfig
625
626 %post   libs-guest -p /sbin/ldconfig
627 %postun libs-guest -p /sbin/ldconfig
628
629 %post efi
630 [ -x /sbin/efi-boot-update ] && /sbin/efi-boot-update --auto || :
631
632 %files
633 %defattr(644,root,root,755)
634 %doc COPYING README* docs/misc/* docs/html/* _doc/*
635 %if %{with hypervisor}
636 /boot/%{name}-syms-%{version}
637 /boot/%{name}-%{version}.gz
638 /boot/%{name}.gz
639 %endif
640 %if %{with xsm}
641 /boot/xenpolicy.24
642 %endif
643 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenconsoled
644 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenstored
645 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xendomains
646 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/xen
647 %attr(754,root,root) /etc/rc.d/init.d/xen-watchdog
648 %attr(754,root,root) /etc/rc.d/init.d/xenconsoled
649 %attr(754,root,root) /etc/rc.d/init.d/xenstored
650 %attr(754,root,root) /etc/rc.d/init.d/xendomains
651 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/xen-dom0.conf
652 %{systemdunitdir}/proc-xen.mount
653 %{systemdunitdir}/var-lib-xenstored.mount
654 %{systemdunitdir}/xen-watchdog.service
655 %{systemdunitdir}/xenconsoled.service
656 %{systemdunitdir}/xenstored.service
657 %{systemdunitdir}/xendomains.service
658 %dir %{_sysconfdir}/xen
659 %dir %{_sysconfdir}/xen/auto
660 %dir %{_sysconfdir}/xen/examples
661 %dir %{_sysconfdir}/xen/scripts
662 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/*
663 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/examples/*
664 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README*
665 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool
666 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf
667 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xen-backend.rules
668 %attr(755,root,root) %{_bindir}/pygrub
669 %if %{with qemu_traditional}
670 %attr(755,root,root) %{_bindir}/qemu-img-xen
671 %attr(755,root,root) %{_bindir}/qemu-nbd-xen
672 %endif
673 %attr(755,root,root) %{_bindir}/remus
674 %attr(755,root,root) %{_bindir}/xencons
675 %attr(755,root,root) %{_bindir}/xencov_split
676 %attr(755,root,root) %{_bindir}/xentrace*
677 %if %{with blktap1}
678 %attr(755,root,root) %{_sbindir}/blktapctrl
679 %endif
680 %if %{with xsm}
681 %attr(755,root,root) %{_sbindir}/flask-*
682 %endif
683 %attr(755,root,root) %{_sbindir}/gdbsx
684 %attr(755,root,root) %{_sbindir}/gtrace*
685 %attr(755,root,root) %{_sbindir}/img2qcow
686 %attr(755,root,root) %{_sbindir}/kdd
687 %attr(755,root,root) %{_sbindir}/lock-util
688 %attr(755,root,root) %{_sbindir}/qcow-create
689 %attr(755,root,root) %{_sbindir}/qcow2raw
690 %attr(755,root,root) %{_sbindir}/tap-ctl
691 %attr(755,root,root) %{_sbindir}/tapdisk*
692 %attr(755,root,root) %{_sbindir}/td-util
693 %attr(755,root,root) %{_sbindir}/vhd-*
694 %attr(755,root,root) %{_sbindir}/xen-*
695 %attr(755,root,root) %{_sbindir}/xenbaked
696 %attr(755,root,root) %{_sbindir}/xenconsoled
697 %attr(755,root,root) %{_sbindir}/xencov
698 %attr(755,root,root) %{_sbindir}/xenlockprof
699 %attr(755,root,root) %{_sbindir}/xenmon.py
700 %attr(755,root,root) %{_sbindir}/xenperf
701 %attr(755,root,root) %{_sbindir}/xenpm
702 %attr(755,root,root) %{_sbindir}/xenpmd
703 %attr(755,root,root) %{_sbindir}/xenstored
704 %attr(755,root,root) %{_sbindir}/xentop
705 %attr(755,root,root) %{_sbindir}/xentrace_setmask
706 %attr(755,root,root) %{_sbindir}/xenwatchdogd
707 %attr(755,root,root) %{_sbindir}/xl
708 %dir %{_libdir}/%{name}
709 %dir %{_libdir}/%{name}/bin
710 %attr(744,root,root) %{_libdir}/%{name}/bin/*
711 %if "%{_lib}" != "lib"
712 %dir %{_prefix}/lib/%{name}
713 %dir %{_prefix}/lib/%{name}/bin
714 %attr(755,root,root) %{_prefix}/lib/%{name}/bin/*
715 %endif
716 %dir %{_prefix}/lib/%{name}/boot
717 %if %{with stubdom}
718 %if %{with qemu_traditional}
719 %{_prefix}/lib/%{name}/boot/ioemu-stubdom.gz
720 %endif
721 %ifarch %{ix86} %{x8664}
722 %{_prefix}/lib/%{name}/boot/pv-grub-x86_32.gz
723 %endif
724 %ifarch %{x8664}
725 %{_prefix}/lib/%{name}/boot/pv-grub-x86_64.gz
726 %endif
727 %{_prefix}/lib/%{name}/boot/vtpm-stubdom.gz
728 %{_prefix}/lib/%{name}/boot/vtpmmgr-stubdom.gz
729 %{_prefix}/lib/%{name}/boot/xenstore-stubdom.gz
730 %endif
731 %attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader
732 %{_mandir}/man1/xenstore-chmod.1*
733 %{_mandir}/man1/xenstore-ls.1*
734 %{_mandir}/man1/xenstore.1*
735 %{_mandir}/man1/xentop.1*
736 %{_mandir}/man1/xentrace_format.1*
737 %{_mandir}/man1/xl.1*
738 %if %{with xend}
739 %{_mandir}/man1/xm.1*
740 %{_mandir}/man5/xend-config.sxp.5*
741 %endif
742 %{_mandir}/man5/xl.cfg.5*
743 %{_mandir}/man5/xl.conf.5*
744 %{_mandir}/man5/xlcpupool.cfg.5*
745 %{_mandir}/man5/xmdomain.cfg.5*
746 %{_mandir}/man8/xentrace.8*
747 %{_sharedstatedir}/xen
748 %{_sharedstatedir}/xenstored
749 %dir /var/run/xenstored
750 %{systemdtmpfilesdir}/xenstored.conf
751 %{systemdtmpfilesdir}/xen.conf
752 %dir %attr(0700,root,root) /var/log/xen
753 %dir %attr(0700,root,root) /var/log/xen/console
754 %if %{with qemu_traditional}
755 %{_datadir}/xen
756 %endif
757
758 %files guest
759 %defattr(644,root,root,755)
760 %attr(755,root,root) %{_bindir}/xen-detect
761 %attr(755,root,root) %{_bindir}/xenstore*
762
763 %files libs
764 %defattr(644,root,root,755)
765 %if %{with blktap1}
766 %attr(755,root,root) %{_libdir}/libblktap.so.*.*.*
767 %attr(755,root,root) %ghost %{_libdir}/libblktap.so.3.0
768 %endif
769 %attr(755,root,root) %{_libdir}/libblktapctl.so.*.*.*
770 %attr(755,root,root) %ghost %{_libdir}/libblktapctl.so.1.0
771 %attr(755,root,root) %{_libdir}/libfsimage.so.*.*.*
772 %attr(755,root,root) %ghost %{_libdir}/libfsimage.so.1.0
773 %attr(755,root,root) %{_libdir}/libvhd.so.*.*.*
774 %attr(755,root,root) %ghost %{_libdir}/libvhd.so.1.0
775 %attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.*
776 %attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.4
777 %attr(755,root,root) %{_libdir}/libxenguest.so.*.*.*
778 %attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.4
779 %attr(755,root,root) %{_libdir}/libxenlight.so.*.*.*
780 %attr(755,root,root) %ghost %{_libdir}/libxenlight.so.4.4
781 %attr(755,root,root) %{_libdir}/libxenstat.so.*.*
782 %attr(755,root,root) %ghost %{_libdir}/libxenstat.so.0
783 %attr(755,root,root) %{_libdir}/libxenvchan.so.*.*.*
784 %attr(755,root,root) %ghost %{_libdir}/libxenvchan.so.1.0
785 %attr(755,root,root) %{_libdir}/libxlutil.so.*.*.*
786 %attr(755,root,root) %ghost %{_libdir}/libxlutil.so.4.3
787 %dir %{_libdir}/fs
788 %dir %{_libdir}/fs/ext2fs-lib
789 %dir %{_libdir}/fs/fat
790 %dir %{_libdir}/fs/iso9660
791 %dir %{_libdir}/fs/reiserfs
792 %dir %{_libdir}/fs/ufs
793 %dir %{_libdir}/fs/xfs
794 %dir %{_libdir}/fs/zfs
795 %attr(755,root,root) %{_libdir}/fs/*/fsimage.so
796
797 %files libs-guest
798 %defattr(644,root,root,755)
799 %attr(755,root,root) %{_libdir}/libxenstore.so.*.*.*
800 %attr(755,root,root) %ghost %{_libdir}/libxenstore.so.3.0
801
802 %files devel
803 %defattr(644,root,root,755)
804 %if %{with blktap1}
805 %attr(755,root,root) %{_libdir}/libblktap.so
806 %endif
807 %attr(755,root,root) %{_libdir}/libblktapctl.so
808 %attr(755,root,root) %{_libdir}/libfsimage.so
809 %attr(755,root,root) %{_libdir}/libvhd.so
810 %attr(755,root,root) %{_libdir}/libxenctrl.so
811 %attr(755,root,root) %{_libdir}/libxenguest.so
812 %attr(755,root,root) %{_libdir}/libxenlight.so
813 %attr(755,root,root) %{_libdir}/libxenstat.so
814 %attr(755,root,root) %{_libdir}/libxenstore.so
815 %attr(755,root,root) %{_libdir}/libxenvchan.so
816 %attr(755,root,root) %{_libdir}/libxlutil.so
817 %{_includedir}/_libxl_list.h
818 %{_includedir}/_libxl_types.h
819 %{_includedir}/_libxl_types_json.h
820 %if %{with blktap1}
821 %{_includedir}/blktaplib.h
822 %endif
823 %{_includedir}/fsimage*.h
824 %{_includedir}/libxenvchan.h
825 %{_includedir}/libxl*.h
826 %{_includedir}/xen*.h
827 %{_includedir}/xs*.h
828 %{_includedir}/xen
829 %{_includedir}/xenstore-compat
830
831 %files static
832 %defattr(644,root,root,755)
833 %if %{with blktap1}
834 %{_libdir}/libblktap.a
835 %endif
836 %{_libdir}/libblktapctl.a
837 %{_libdir}/libvhd.a
838 %{_libdir}/libxenctrl.a
839 %{_libdir}/libxenguest.a
840 %{_libdir}/libxenlight.a
841 %{_libdir}/libxenvchan.a
842 %{_libdir}/libxenstat.a
843 %{_libdir}/libxenstore.a
844 %{_libdir}/libxlutil.a
845
846 %if %{with xend}
847 %files xend
848 %defattr(644,root,root,755)
849 %if %{with blktap1}
850 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/blktapctrl
851 %{systemdunitdir}/blktapctrl.service
852 %endif
853 %{systemdunitdir}/xend.service
854 %attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend
855 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xend.rules
856 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm*
857 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend*
858 %attr(755,root,root) %{_sbindir}/xend
859 %attr(755,root,root) %{_sbindir}/xm
860 %dir %attr(700,root,root) /var/run/xend
861 %{systemdtmpfilesdir}/xend.conf
862 %endif
863
864 %if %{with ocaml}
865 %files -n ocaml-xen
866 %defattr(644,root,root,755)
867 %doc tools/ocaml/LICENSE
868 %attr(755,root,root) %{_sbindir}/oxenstored
869 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/oxenstored.conf
870 %dir %{_libdir}/ocaml/site-lib/xenbus
871 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenbus/dllxenbus_stubs.so
872 %dir %{_libdir}/ocaml/site-lib/xenctrl
873 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenctrl/dllxenctrl_stubs.so
874 %dir %{_libdir}/ocaml/site-lib/xeneventchn
875 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xeneventchn/dllxeneventchn_stubs.so
876 %dir %{_libdir}/ocaml/site-lib/xenlight
877 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenlight/dllxenlight_stubs.so
878 %dir %{_libdir}/ocaml/site-lib/xenmmap
879 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenmmap/dllxenmmap_stubs.so
880 %dir %{_libdir}/ocaml/site-lib/xentoollog
881 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xentoollog/dllxentoollog_stubs.so
882
883 %files -n ocaml-xen-devel
884 %defattr(644,root,root,755)
885 %{_libdir}/ocaml/site-lib/xenbus/META
886 %{_libdir}/ocaml/site-lib/xenbus/libxenbus_stubs.a
887 %{_libdir}/ocaml/site-lib/xenbus/xenbus.a
888 %{_libdir}/ocaml/site-lib/xenbus/*.cm[aixo]*
889 %{_libdir}/ocaml/site-lib/xenctrl/META
890 %{_libdir}/ocaml/site-lib/xenctrl/libxenctrl_stubs.a
891 %{_libdir}/ocaml/site-lib/xenctrl/xenctrl.a
892 %{_libdir}/ocaml/site-lib/xenctrl/xenctrl.cm[aix]*
893 %{_libdir}/ocaml/site-lib/xeneventchn/META
894 %{_libdir}/ocaml/site-lib/xeneventchn/libxeneventchn_stubs.a
895 %{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.a
896 %{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.cm[aix]*
897 %{_libdir}/ocaml/site-lib/xenmmap/META
898 %{_libdir}/ocaml/site-lib/xenmmap/libxenmmap_stubs.a
899 %{_libdir}/ocaml/site-lib/xenmmap/xenmmap.a
900 %{_libdir}/ocaml/site-lib/xenmmap/xenmmap.cm[aix]*
901 %{_libdir}/ocaml/site-lib/xenlight/META
902 %{_libdir}/ocaml/site-lib/xenlight/libxenlight_stubs.a
903 %{_libdir}/ocaml/site-lib/xenlight/xenlight.a
904 %{_libdir}/ocaml/site-lib/xenlight/xenlight.cm[aix]*
905 %dir %{_libdir}/ocaml/site-lib/xenstore
906 %{_libdir}/ocaml/site-lib/xenstore/META
907 %{_libdir}/ocaml/site-lib/xenstore/xenstore.a
908 %{_libdir}/ocaml/site-lib/xenstore/*.cm[aixo]*
909 %{_libdir}/ocaml/site-lib/xentoollog/META
910 %{_libdir}/ocaml/site-lib/xentoollog/libxentoollog_stubs.a
911 %{_libdir}/ocaml/site-lib/xentoollog/xentoollog.a
912 %{_libdir}/ocaml/site-lib/xentoollog/*.cm[aixo]*
913 %endif
914
915 %files -n python-xen
916 %defattr(644,root,root,755)
917 %attr(755,root,root) %{py_sitedir}/fsimage.so
918 %{py_sitedir}/grub
919 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/checkpoint.so
920 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/flask.so
921 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/netlink.so
922 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/ptsname.so
923 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/xc.so
924 %if %{with xend}
925 %{py_sitedir}/xen/remus
926 %{py_sitedir}/xen/util
927 %{py_sitedir}/xen/web
928 %{py_sitedir}/xen/xend
929 %{py_sitedir}/xen/xm
930 %endif
931 %if "%{py_ver}" > "2.4"
932 %{py_sitedir}/pygrub-0.3-py*.egg-info
933 %{py_sitedir}/xen-3.0-py*.egg-info
934 %endif
935
936 %files -n python-xen-guest
937 %defattr(644,root,root,755)
938 %dir %{py_sitedir}/xen
939 %{py_sitedir}/xen/__init__.py*
940 %dir %{py_sitedir}/xen/lowlevel
941 %{py_sitedir}/xen/lowlevel/__init__.py*
942 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/xs.so
943
944 %files -n bash-completion-%{name}
945 %defattr(644,root,root,755)
946 /etc/bash_completion.d/xl.sh
947
948 %if %{with efi}
949 %files efi
950 %defattr(644,root,root,755)
951 %dir %{_libdir}/efi
952 %{_libdir}/efi/*.efi
953 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/xen.cfg
954 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/update.d/xen.conf
955 %endif
This page took 0.23284 seconds and 4 git commands to generate.