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