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