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