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