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