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