]> git.pld-linux.org Git - packages/xen.git/blob - xen.spec
- updated gettext BR
[packages/xen.git] / xen.spec
1 #
2 # TODO:
3 #  - check if other tools/libs are not usable in domU, move them to -guest
4 #    packages if so
5 #  - pass bconds to qemu configure script (tricky, as the script is called from
6 #    Xen Makefiles)
7 #  - fix %doc - some files are installed in docdir both by make install and %d,
8 #    other are installed once
9 #  - mini-os objects are relinked on install (because of .PHONY rules used to make them)
10 #
11 # Conditional build:
12 %bcond_without  qemu_traditional # without qemu-xen-traditional
13 %bcond_without  opengl          # OpenGL support in Xen qemu
14 %bcond_without  sdl             # SDL support in Xen qemu
15 %bcond_without  bluetooth       # bluetooth support in Xen qemu
16 %bcond_without  brlapi          # brlapi support in Xen qemu
17 %bcond_without  ocaml           # Ocaml libraries for Xen tools
18 %bcond_without  efi             # EFI hypervisor
19 %bcond_without  hypervisor      # Xen hypervisor build
20 %bcond_without  stubdom         # stubdom build
21 %bcond_without  xsm             # XSM security module (by default, Flask)
22 %bcond_without  blktap1         # blktap1 support
23 %bcond_without  xend            # include the obsolete xend & xm
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.4.1
45 Release:        4
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:  1868433f393503000877d15cd4e93d15
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 Source32:       blktapctrl.service
72 Source33:       blktapctrl.sysconfig
73 Source34:       xenconsoled.service
74 Source35:       xenconsoled.sysconfig
75 Source36:       xenstored.service
76 Source37:       xenstored.sysconfig
77 Source38:       xenstored.tmpfiles
78 Source39:       xend.service
79 Source40:       xend.tmpfiles
80 Source41:       xen-watchdog.service
81 Source42:       xen-dom0-modules-load.conf
82 Source43:       xendomains.sh
83 Source44:       xendomains.service
84 # sysvinit scripts
85 Source50:       xend.init
86 Source51:       xenconsoled.init
87 Source52:       xenstored.init
88 Source53:       xen-watchdog.init
89 Source54:       xendomains.init
90 Source55:       xen.logrotate
91 Source56:       xen.tmpfiles
92 Source57:       xen.cfg
93 Source58:       xen.efi-boot-update
94 Source59:       vif-openvswitch
95 Source60:       xen-init-list
96 Source61:       xen-toolstack
97 Patch0:         %{name}-python_scripts.patch
98 Patch1:         %{name}-symbols.patch
99 Patch2:         %{name}-curses.patch
100 Patch3:         pygrubfix.patch
101 Patch4:         xend.catchbt.patch
102 Patch5:         xend-pci-loop.patch
103 Patch6:         %{name}-dumpdir.patch
104 # Warning: this disables ingress filtering implemented in xen scripts!
105 Patch7:         %{name}-net-disable-iptables-on-bridge.patch
106 Patch8:         %{name}-configure-xend.patch
107 Patch9:         %{name}-gawk.patch
108 Patch10:        %{name}-qemu.patch
109 Patch11:        %{name}-ulong.patch
110 Patch12:        %{name}-doc.patch
111 Patch13:        %{name}-paths.patch
112 Patch14:        %{name}-no_fetcher.patch
113 Patch15:        odd-glib2-fix.patch
114 Patch16:        %{name}-gmp-abi.patch
115 # based on: http://xenbits.xen.org/xsa/xsa99.patch
116 Patch17:        xsa99.patch
117 Patch18:        %{name}-make.patch
118 Patch19:        %{name}-no_Werror.patch
119 URL:            http://www.xen.org/products/xenhyp.html
120 %if %{with qemu_traditional}
121 %{?with_opengl:BuildRequires:   OpenGL-devel}
122 %{?with_sdl:BuildRequires:      SDL-devel >= 1.2.1}
123 %endif
124 %ifarch %{ix86} %{x8664}
125 BuildRequires:  acpica
126 BuildRequires:  autoconf
127 BuildRequires:  bcc
128 BuildRequires:  bin86
129 %endif
130 %if %{with qemu_traditional}
131 %{?with_bluetooth:BuildRequires:        bluez-libs-devel}
132 %{?with_brlapi:BuildRequires:   brlapi-devel}
133 %endif
134 %{?with_efi:BuildRequires:      binutils >= 3:2.23.51.0.3-2}
135 BuildRequires:  bzip2-devel
136 BuildRequires:  curl-devel
137 BuildRequires:  cyrus-sasl-devel >= 2
138 %if %{with xsm}
139 BuildRequires:  checkpolicy
140 %endif
141 BuildRequires:  e2fsprogs-devel
142 BuildRequires:  gcc >= 6:4.1
143 BuildRequires:  gettext-tools
144 BuildRequires:  glib2-devel >= 1:2.12
145 BuildRequires:  gnutls-devel
146 BuildRequires:  keyutils-devel
147 BuildRequires:  latex2html >= 2008
148 BuildRequires:  libaio-devel
149 BuildRequires:  libcap-devel
150 BuildRequires:  libjpeg-devel
151 BuildRequires:  libpng-devel
152 BuildRequires:  libuuid-devel
153 BuildRequires:  lzo-devel >= 2
154 BuildRequires:  ncurses-devel
155 %if %{with ocaml}
156 BuildRequires:  ocaml >= 3.04-7
157 BuildRequires:  ocaml-findlib
158 %endif
159 BuildRequires:  nss-devel >= 3.12.8
160 BuildRequires:  openssl-devel
161 BuildRequires:  pciutils-devel
162 BuildRequires:  perl-base
163 BuildRequires:  perl-tools-pod
164 BuildRequires:  pkgconfig
165 BuildRequires:  python-devel
166 BuildRequires:  rpm-pythonprov
167 BuildRequires:  rpmbuild(macros) >= 1.647
168 BuildRequires:  seabios
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
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 %patch9 -p1
418 %patch10 -p1
419 %patch11 -p1
420 %patch12 -p1
421 %patch13 -p1
422 %patch14 -p1
423 %patch15 -p1
424 %patch16 -p1
425 %patch17 -p1
426 %patch18 -p1
427 %patch19 -p1
428
429 # stubdom sources
430 ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom
431 ln -s %{SOURCE17} %{SOURCE18} %{SOURCE19} stubdom
432 ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
433
434 # do not allow fetching anything via git
435 echo GIT=/bin/false >> Config.mk
436
437 %build
438 # based on the 'autoconf.sh' from the sources
439 %{__autoconf}
440 cd tools
441 %{__autoconf}
442 %{__autoheader}
443 cd ../stubdom
444 %{__autoconf}
445 cd ../docs
446 %{__autoconf}
447 cd ..
448
449 # if gold is used then bioses and grub doesn't build
450 install -d our-ld
451 ln -f -s /usr/bin/ld.bfd our-ld/ld
452 export PATH=$(pwd)/our-ld:$PATH
453
454 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
455 export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
456
457 # NOTE:
458 # - there is a quoting bug (in tools/driver/Makefile) that causes
459 #   openssl is used instead of gcrypt; that's OK, openssl is obligatory
460 #   anyway (see configure), gcrypt is optional
461 # - prevent libiconv from being detected (not needed with glibc)
462 %configure \
463         CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses" \
464         ac_cv_lib_iconv_libiconv_open=no \
465         %{__enable_disable qemu_traditional qemu-traditional} \
466         %{__enable_disable blktap1 blktap1} \
467         %{__enable_disable xend xend} \
468         --with-system-seabios=/usr/share/seabios/bios.bin \
469 %ifarch %{x8664}
470         --with-system-qemu=/usr/bin/qemu-system-x86_64 \
471 %else
472         --with-system-qemu=/usr/bin/qemu-system-i386 \
473 %endif
474         --disable-debug
475
476 %{__make} -j1 dist-xen dist-tools dist-docs \
477         %{!?with_ocaml:OCAML_TOOLS=n} \
478         XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
479         CC="%{__cc}" \
480         CXX="%{__cxx}" \
481         V=1
482
483 unset CFLAGS
484 unset CXXFLAGS
485
486 %if %{with stubdom}
487 %{__make} -j1 dist-stubdom \
488         %{!?with_ocaml:OCAML_TOOLS=n} \
489         XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
490         CC="%{__cc}" \
491         CXX="%{__cxx}" \
492         V=1
493 %endif
494
495 %install
496 rm -rf $RPM_BUILD_ROOT
497 install -d $RPM_BUILD_ROOT/etc/{xen/examples,modules-load.d,logrotate.d} \
498         $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{systemdunitdir},/var/log/xen/console}
499
500 %if %{with efi}
501 install -d $RPM_BUILD_ROOT/etc/efi-boot/update.d
502 %endif
503
504 %{__make} -j1 install-xen install-tools %{?with_stubdom:install-stubdom} install-docs \
505         %{!?with_ocaml:OCAML_TOOLS=n} \
506         XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
507         DESTDIR=$RPM_BUILD_ROOT \
508         HOTPLUGS=install-udev
509
510 %if %{with qemu_traditional}
511 %if "%{_lib}" == "lib64"
512 ln -s %{_prefix}/lib/%{name}/bin/qemu-dm $RPM_BUILD_ROOT%{_libdir}/%{name}/bin/qemu-dm
513 %endif
514 %endif
515
516 install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
517 install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
518 %if %{with blktap1}
519 install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service
520 install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl
521 %endif
522 install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
523 install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled
524 install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
525 install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored
526 install %{SOURCE38} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xenstored.conf
527 %if %{with xend}
528 install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service
529 install %{SOURCE40} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xend.conf
530 %endif
531 install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
532 install %{SOURCE42} $RPM_BUILD_ROOT/etc/modules-load.d/xen-dom0.conf
533 install %{SOURCE43} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xendomains.sh
534 install %{SOURCE44} $RPM_BUILD_ROOT%{systemdunitdir}/xendomains.service
535 # sysvinit scripts
536 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
537 %{__rm} $RPM_BUILD_ROOT/etc/sysconfig/xencommons
538 %if %{with xend}
539 install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
540 %endif
541 install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled
542 install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored
543 install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog
544 install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
545 install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
546 install %{SOURCE56} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xen.conf
547
548 install %{SOURCE60} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-init-list
549 install %{SOURCE61} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-toolstack
550
551 %if %{with efi}
552 install %{SOURCE57} $RPM_BUILD_ROOT/etc/efi-boot/xen.cfg
553 sed -e's;@libdir@;%{_libdir};g' -e's;@target_cpu@;%{_target_cpu};g' \
554                         %{SOURCE58} > $RPM_BUILD_ROOT/etc/efi-boot/update.d/xen.conf
555 %endif
556
557 mv $RPM_BUILD_ROOT/etc/xen/{xlexample*,examples}
558
559 install %{SOURCE59} $RPM_BUILD_ROOT%{_sysconfdir}/xen/scripts/vif-openvswitch
560
561 # for %%doc
562 install -d _doc
563 for tool in blktap blktap2 pygrub xenmon ; do
564         cp -p tools/$tool/README _doc/README.$tool
565 done
566
567 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
568 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
569
570 %py_postclean
571
572 # remove unneeded files
573 %if %{with hypervisor}
574 %{__rm} $RPM_BUILD_ROOT/boot/xen-4.4.gz
575 %{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz
576 %endif
577 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
578 %{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
579
580 %if %{without xend}
581 %{__rm} -r $RPM_BUILD_ROOT/var/run/xend
582 %endif
583
584 %clean
585 rm -rf $RPM_BUILD_ROOT
586
587 %post
588 /sbin/chkconfig --add xen-watchdog
589 /sbin/chkconfig --add xenconsoled
590 /sbin/chkconfig --add xenstored
591 /sbin/chkconfig --add xendomains
592 NORESTART=1
593 %systemd_post xen-watchdog.service xenconsoled.service xenstored.service xendomains.service
594
595 %preun
596 if [ "$1" = "0" ]; then
597         %service xendomains stop
598         /sbin/chkconfig --del xendomains
599
600         %service xenconsoled stop
601         /sbin/chkconfig --del xenconsoled
602
603         %service xenstored stop
604         /sbin/chkconfig --del xenstored
605
606         %service xen-watchdog stop
607         /sbin/chkconfig --del xen-watchdog
608 fi
609 %systemd_preun xen-watchdog.service xenconsoled.service xenstored.service xendomains.service
610
611 %postun
612 %systemd_reload
613
614 %post xend
615 /sbin/chkconfig --add xend
616 %systemd_post xend.service
617
618 %preun xend
619 if [ "$1" = "0" ]; then
620         %service xend stop
621         /sbin/chkconfig --del xend
622 fi
623 %systemd_preun xend.service
624
625 %postun xend
626 %systemd_reload
627
628 %post   libs -p /sbin/ldconfig
629 %postun libs -p /sbin/ldconfig
630
631 %post   libs-guest -p /sbin/ldconfig
632 %postun libs-guest -p /sbin/ldconfig
633
634 %post efi
635 [ -x /sbin/efi-boot-update ] && /sbin/efi-boot-update --auto || :
636
637 %files
638 %defattr(644,root,root,755)
639 %doc COPYING README* docs/misc/* docs/html/* _doc/*
640 %if %{with hypervisor}
641 /boot/%{name}-syms-%{version}
642 /boot/%{name}-%{version}.gz
643 /boot/%{name}.gz
644 %endif
645 %if %{with xsm}
646 /boot/xenpolicy.24
647 %endif
648 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenconsoled
649 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenstored
650 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xendomains
651 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/xen
652 %attr(754,root,root) /etc/rc.d/init.d/xen-watchdog
653 %attr(754,root,root) /etc/rc.d/init.d/xenconsoled
654 %attr(754,root,root) /etc/rc.d/init.d/xenstored
655 %attr(754,root,root) /etc/rc.d/init.d/xendomains
656 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/xen-dom0.conf
657 %{systemdunitdir}/proc-xen.mount
658 %{systemdunitdir}/var-lib-xenstored.mount
659 %{systemdunitdir}/xen-watchdog.service
660 %{systemdunitdir}/xenconsoled.service
661 %{systemdunitdir}/xenstored.service
662 %{systemdunitdir}/xendomains.service
663 %dir %{_sysconfdir}/xen
664 %dir %{_sysconfdir}/xen/auto
665 %dir %{_sysconfdir}/xen/examples
666 %dir %{_sysconfdir}/xen/scripts
667 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/*
668 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/examples/*
669 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README*
670 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool
671 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf
672 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xen-backend.rules
673 %attr(755,root,root) %{_bindir}/pygrub
674 %if %{with qemu_traditional}
675 %attr(755,root,root) %{_bindir}/qemu-img-xen
676 %attr(755,root,root) %{_bindir}/qemu-nbd-xen
677 %endif
678 %attr(755,root,root) %{_bindir}/remus
679 %attr(755,root,root) %{_bindir}/xencons
680 %attr(755,root,root) %{_bindir}/xencov_split
681 %attr(755,root,root) %{_bindir}/xentrace*
682 %if %{with blktap1}
683 %attr(755,root,root) %{_sbindir}/blktapctrl
684 %endif
685 %if %{with xsm}
686 %attr(755,root,root) %{_sbindir}/flask-*
687 %endif
688 %attr(755,root,root) %{_sbindir}/gdbsx
689 %attr(755,root,root) %{_sbindir}/gtrace*
690 %attr(755,root,root) %{_sbindir}/img2qcow
691 %attr(755,root,root) %{_sbindir}/kdd
692 %attr(755,root,root) %{_sbindir}/lock-util
693 %attr(755,root,root) %{_sbindir}/qcow-create
694 %attr(755,root,root) %{_sbindir}/qcow2raw
695 %attr(755,root,root) %{_sbindir}/tap-ctl
696 %attr(755,root,root) %{_sbindir}/tapdisk*
697 %attr(755,root,root) %{_sbindir}/td-util
698 %attr(755,root,root) %{_sbindir}/vhd-*
699 %attr(755,root,root) %{_sbindir}/xen-*
700 %attr(755,root,root) %{_sbindir}/xenbaked
701 %attr(755,root,root) %{_sbindir}/xenconsoled
702 %attr(755,root,root) %{_sbindir}/xencov
703 %attr(755,root,root) %{_sbindir}/xenlockprof
704 %attr(755,root,root) %{_sbindir}/xenmon.py
705 %attr(755,root,root) %{_sbindir}/xenperf
706 %attr(755,root,root) %{_sbindir}/xenpm
707 %attr(755,root,root) %{_sbindir}/xenpmd
708 %attr(755,root,root) %{_sbindir}/xenstored
709 %attr(755,root,root) %{_sbindir}/xentop
710 %attr(755,root,root) %{_sbindir}/xentrace_setmask
711 %attr(755,root,root) %{_sbindir}/xenwatchdogd
712 %attr(755,root,root) %{_sbindir}/xl
713 %dir %{_libdir}/%{name}
714 %dir %{_libdir}/%{name}/bin
715 %attr(744,root,root) %{_libdir}/%{name}/bin/*
716 %if "%{_lib}" != "lib"
717 %dir %{_prefix}/lib/%{name}
718 %dir %{_prefix}/lib/%{name}/bin
719 %attr(755,root,root) %{_prefix}/lib/%{name}/bin/*
720 %endif
721 %dir %{_prefix}/lib/%{name}/boot
722 %if %{with stubdom}
723 %if %{with qemu_traditional}
724 %{_prefix}/lib/%{name}/boot/ioemu-stubdom.gz
725 %endif
726 %ifarch %{ix86} %{x8664}
727 %{_prefix}/lib/%{name}/boot/pv-grub-x86_32.gz
728 %endif
729 %ifarch %{x8664}
730 %{_prefix}/lib/%{name}/boot/pv-grub-x86_64.gz
731 %endif
732 %{_prefix}/lib/%{name}/boot/vtpm-stubdom.gz
733 %{_prefix}/lib/%{name}/boot/vtpmmgr-stubdom.gz
734 %{_prefix}/lib/%{name}/boot/xenstore-stubdom.gz
735 %endif
736 %attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader
737 %{_mandir}/man1/xenstore-chmod.1*
738 %{_mandir}/man1/xenstore-ls.1*
739 %{_mandir}/man1/xenstore.1*
740 %{_mandir}/man1/xentop.1*
741 %{_mandir}/man1/xentrace_format.1*
742 %{_mandir}/man1/xl.1*
743 %if %{with xend}
744 %{_mandir}/man1/xm.1*
745 %{_mandir}/man5/xend-config.sxp.5*
746 %endif
747 %{_mandir}/man5/xl.cfg.5*
748 %{_mandir}/man5/xl.conf.5*
749 %{_mandir}/man5/xlcpupool.cfg.5*
750 %{_mandir}/man5/xmdomain.cfg.5*
751 %{_mandir}/man8/xentrace.8*
752 %{_sharedstatedir}/xen
753 %{_sharedstatedir}/xenstored
754 %dir /var/run/xenstored
755 %{systemdtmpfilesdir}/xenstored.conf
756 %{systemdtmpfilesdir}/xen.conf
757 %dir %attr(0700,root,root) /var/log/xen
758 %dir %attr(0700,root,root) /var/log/xen/console
759 %if %{with qemu_traditional}
760 %{_datadir}/xen
761 %endif
762
763 %files guest
764 %defattr(644,root,root,755)
765 %attr(755,root,root) %{_bindir}/xen-detect
766 %attr(755,root,root) %{_bindir}/xenstore*
767
768 %files libs
769 %defattr(644,root,root,755)
770 %if %{with blktap1}
771 %attr(755,root,root) %{_libdir}/libblktap.so.*.*.*
772 %attr(755,root,root) %ghost %{_libdir}/libblktap.so.3.0
773 %endif
774 %attr(755,root,root) %{_libdir}/libblktapctl.so.*.*.*
775 %attr(755,root,root) %ghost %{_libdir}/libblktapctl.so.1.0
776 %attr(755,root,root) %{_libdir}/libfsimage.so.*.*.*
777 %attr(755,root,root) %ghost %{_libdir}/libfsimage.so.1.0
778 %attr(755,root,root) %{_libdir}/libvhd.so.*.*.*
779 %attr(755,root,root) %ghost %{_libdir}/libvhd.so.1.0
780 %attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.*
781 %attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.4
782 %attr(755,root,root) %{_libdir}/libxenguest.so.*.*.*
783 %attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.4
784 %attr(755,root,root) %{_libdir}/libxenlight.so.*.*.*
785 %attr(755,root,root) %ghost %{_libdir}/libxenlight.so.4.4
786 %attr(755,root,root) %{_libdir}/libxenstat.so.*.*
787 %attr(755,root,root) %ghost %{_libdir}/libxenstat.so.0
788 %attr(755,root,root) %{_libdir}/libxenvchan.so.*.*.*
789 %attr(755,root,root) %ghost %{_libdir}/libxenvchan.so.1.0
790 %attr(755,root,root) %{_libdir}/libxlutil.so.*.*.*
791 %attr(755,root,root) %ghost %{_libdir}/libxlutil.so.4.3
792 %dir %{_libdir}/fs
793 %dir %{_libdir}/fs/ext2fs-lib
794 %dir %{_libdir}/fs/fat
795 %dir %{_libdir}/fs/iso9660
796 %dir %{_libdir}/fs/reiserfs
797 %dir %{_libdir}/fs/ufs
798 %dir %{_libdir}/fs/xfs
799 %dir %{_libdir}/fs/zfs
800 %attr(755,root,root) %{_libdir}/fs/*/fsimage.so
801
802 %files libs-guest
803 %defattr(644,root,root,755)
804 %attr(755,root,root) %{_libdir}/libxenstore.so.*.*.*
805 %attr(755,root,root) %ghost %{_libdir}/libxenstore.so.3.0
806
807 %files devel
808 %defattr(644,root,root,755)
809 %if %{with blktap1}
810 %attr(755,root,root) %{_libdir}/libblktap.so
811 %endif
812 %attr(755,root,root) %{_libdir}/libblktapctl.so
813 %attr(755,root,root) %{_libdir}/libfsimage.so
814 %attr(755,root,root) %{_libdir}/libvhd.so
815 %attr(755,root,root) %{_libdir}/libxenctrl.so
816 %attr(755,root,root) %{_libdir}/libxenguest.so
817 %attr(755,root,root) %{_libdir}/libxenlight.so
818 %attr(755,root,root) %{_libdir}/libxenstat.so
819 %attr(755,root,root) %{_libdir}/libxenstore.so
820 %attr(755,root,root) %{_libdir}/libxenvchan.so
821 %attr(755,root,root) %{_libdir}/libxlutil.so
822 %{_includedir}/_libxl_list.h
823 %{_includedir}/_libxl_types.h
824 %{_includedir}/_libxl_types_json.h
825 %if %{with blktap1}
826 %{_includedir}/blktaplib.h
827 %endif
828 %{_includedir}/fsimage*.h
829 %{_includedir}/libxenvchan.h
830 %{_includedir}/libxl*.h
831 %{_includedir}/xen*.h
832 %{_includedir}/xs*.h
833 %{_includedir}/xen
834 %{_includedir}/xenstore-compat
835
836 %files static
837 %defattr(644,root,root,755)
838 %if %{with blktap1}
839 %{_libdir}/libblktap.a
840 %endif
841 %{_libdir}/libblktapctl.a
842 %{_libdir}/libvhd.a
843 %{_libdir}/libxenctrl.a
844 %{_libdir}/libxenguest.a
845 %{_libdir}/libxenlight.a
846 %{_libdir}/libxenvchan.a
847 %{_libdir}/libxenstat.a
848 %{_libdir}/libxenstore.a
849 %{_libdir}/libxlutil.a
850
851 %if %{with xend}
852 %files xend
853 %defattr(644,root,root,755)
854 %if %{with blktap1}
855 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/blktapctrl
856 %{systemdunitdir}/blktapctrl.service
857 %endif
858 %{systemdunitdir}/xend.service
859 %attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend
860 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xend.rules
861 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm*
862 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend*
863 %attr(755,root,root) %{_sbindir}/xend
864 %attr(755,root,root) %{_sbindir}/xm
865 %dir %attr(700,root,root) /var/run/xend
866 %{systemdtmpfilesdir}/xend.conf
867 %endif
868
869 %if %{with ocaml}
870 %files -n ocaml-xen
871 %defattr(644,root,root,755)
872 %doc tools/ocaml/LICENSE
873 %attr(755,root,root) %{_sbindir}/oxenstored
874 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/oxenstored.conf
875 %dir %{_libdir}/ocaml/site-lib/xenbus
876 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenbus/dllxenbus_stubs.so
877 %dir %{_libdir}/ocaml/site-lib/xenctrl
878 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenctrl/dllxenctrl_stubs.so
879 %dir %{_libdir}/ocaml/site-lib/xeneventchn
880 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xeneventchn/dllxeneventchn_stubs.so
881 %dir %{_libdir}/ocaml/site-lib/xenlight
882 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenlight/dllxenlight_stubs.so
883 %dir %{_libdir}/ocaml/site-lib/xenmmap
884 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xenmmap/dllxenmmap_stubs.so
885 %dir %{_libdir}/ocaml/site-lib/xentoollog
886 %attr(755,root,root) %{_libdir}/ocaml/site-lib/xentoollog/dllxentoollog_stubs.so
887
888 %files -n ocaml-xen-devel
889 %defattr(644,root,root,755)
890 %{_libdir}/ocaml/site-lib/xenbus/META
891 %{_libdir}/ocaml/site-lib/xenbus/libxenbus_stubs.a
892 %{_libdir}/ocaml/site-lib/xenbus/xenbus.a
893 %{_libdir}/ocaml/site-lib/xenbus/*.cm[aixo]*
894 %{_libdir}/ocaml/site-lib/xenctrl/META
895 %{_libdir}/ocaml/site-lib/xenctrl/libxenctrl_stubs.a
896 %{_libdir}/ocaml/site-lib/xenctrl/xenctrl.a
897 %{_libdir}/ocaml/site-lib/xenctrl/xenctrl.cm[aix]*
898 %{_libdir}/ocaml/site-lib/xeneventchn/META
899 %{_libdir}/ocaml/site-lib/xeneventchn/libxeneventchn_stubs.a
900 %{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.a
901 %{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.cm[aix]*
902 %{_libdir}/ocaml/site-lib/xenmmap/META
903 %{_libdir}/ocaml/site-lib/xenmmap/libxenmmap_stubs.a
904 %{_libdir}/ocaml/site-lib/xenmmap/xenmmap.a
905 %{_libdir}/ocaml/site-lib/xenmmap/xenmmap.cm[aix]*
906 %{_libdir}/ocaml/site-lib/xenlight/META
907 %{_libdir}/ocaml/site-lib/xenlight/libxenlight_stubs.a
908 %{_libdir}/ocaml/site-lib/xenlight/xenlight.a
909 %{_libdir}/ocaml/site-lib/xenlight/xenlight.cm[aix]*
910 %dir %{_libdir}/ocaml/site-lib/xenstore
911 %{_libdir}/ocaml/site-lib/xenstore/META
912 %{_libdir}/ocaml/site-lib/xenstore/xenstore.a
913 %{_libdir}/ocaml/site-lib/xenstore/*.cm[aixo]*
914 %{_libdir}/ocaml/site-lib/xentoollog/META
915 %{_libdir}/ocaml/site-lib/xentoollog/libxentoollog_stubs.a
916 %{_libdir}/ocaml/site-lib/xentoollog/xentoollog.a
917 %{_libdir}/ocaml/site-lib/xentoollog/*.cm[aixo]*
918 %endif
919
920 %files -n python-xen
921 %defattr(644,root,root,755)
922 %attr(755,root,root) %{py_sitedir}/fsimage.so
923 %{py_sitedir}/grub
924 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/checkpoint.so
925 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/flask.so
926 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/netlink.so
927 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/ptsname.so
928 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/xc.so
929 %if %{with xend}
930 %{py_sitedir}/xen/remus
931 %{py_sitedir}/xen/util
932 %{py_sitedir}/xen/web
933 %{py_sitedir}/xen/xend
934 %{py_sitedir}/xen/xm
935 %endif
936 %if "%{py_ver}" > "2.4"
937 %{py_sitedir}/pygrub-0.3-py*.egg-info
938 %{py_sitedir}/xen-3.0-py*.egg-info
939 %endif
940
941 %files -n python-xen-guest
942 %defattr(644,root,root,755)
943 %dir %{py_sitedir}/xen
944 %{py_sitedir}/xen/__init__.py*
945 %dir %{py_sitedir}/xen/lowlevel
946 %{py_sitedir}/xen/lowlevel/__init__.py*
947 %attr(755,root,root) %{py_sitedir}/xen/lowlevel/xs.so
948
949 %files -n bash-completion-%{name}
950 %defattr(644,root,root,755)
951 /etc/bash_completion.d/xl.sh
952
953 %if %{with efi}
954 %files efi
955 %defattr(644,root,root,755)
956 %dir %{_libdir}/efi
957 %{_libdir}/efi/*.efi
958 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/xen.cfg
959 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/update.d/xen.conf
960 %endif
This page took 0.224457 seconds and 4 git commands to generate.