]> git.pld-linux.org Git - packages/xen.git/blobdiff - xen.spec
- updated gmp URL
[packages/xen.git] / xen.spec
index 20003e71c5e692f0a5b26019b671efe7f9778be6..9379b08bf35c69c777f72e03b43f8f88f8b429b9 100644 (file)
--- a/xen.spec
+++ b/xen.spec
 #
-# NOTE:
-# - this xen-3.3.0 kernel and userspace
-#   if you are looking for xen-3.0.2 (kernel.spec:LINUX_2_6_16), checkout
-#   this spec from XEN_3_0_2 branch
-# - you will also need dom0 enabled kernel
-#
 # TODO:
-# - pldized init scripts
-# - script for rc-boot
-# - %%build fails on i686
+#  - system ovmf, ipxe? (like system seabios)
+#  - check if other tools/libs are not usable in domU, move them to -guest
+#    packages if so
+#  - pass bconds to qemu configure script (tricky, as the script is called from
+#    Xen Makefiles)
+#  - fix %doc - some files are installed in docdir both by make install and %d,
+#    other are installed once
+#  - mini-os objects are relinked on install (because of .PHONY rules used to make them)
 #
 # Conditional build:
-%bcond_with    pae             # build with PAE (HIGHMEM64G) support
-%bcond_with    hvm             # build with hvm (full virtualization) support
-#
-%define                major   3.4
-%define                minor   2
+%bcond_without qemu_traditional        # without qemu-xen-traditional
+%bcond_without opengl                  # OpenGL support in Xen qemu
+%bcond_without sdl                     # SDL support in Xen qemu
+%bcond_without bluetooth               # bluetooth support in Xen qemu
+%bcond_without brlapi                  # brlapi support in Xen qemu
+%bcond_without ocaml                   # Ocaml libraries for Xen tools
+%bcond_without efi                     # EFI hypervisor
+%bcond_without hypervisor              # Xen hypervisor build
+%bcond_without stubdom                 # stubdom build
+%bcond_without xsm                     # XSM security module (by default, Flask)
+
+%ifnarch %{x8664} %{arm}
+%undefine      with_hypervisor
+%endif
+%ifnarch %{x8664}
+%undefine      with_efi
+%endif
+%ifnarch %{ix86} %{x8664}
+%undefine      with_stubdom
+%endif
+
+# from ./stubdom/configure.ac
+%define        polarssl_version        1.1.4
+%define tpm_emulator_version   0.7.4
+%define gmp_version            4.3.2
+
+%define        xen_extfiles_url        https://xenbits.xensource.com/xen-extfiles
 Summary:       Xen - a virtual machine monitor
 Summary(pl.UTF-8):     Xen - monitor maszyny wirtualnej
 Name:          xen
-Version:       %{major}.%{minor}
-Release:       0.1
-License:       GPL
+Version:       4.13.4
+Release:       1
+License:       GPL v2, interface parts on BSD-like
 Group:         Applications/System
-Source0:       http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: f009a7abf51017aeee697c9130b6f8a6
-Source1:       %{name}-xend.init
-Source2:       %{name}-xendomains.init
+# for available versions see https://www.xenproject.org/developers/teams/hypervisor.html
+Source0:       https://downloads.xenproject.org/release/xen/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 2ea8d0237b48b05af915131d7280b890
+# used by stubdoms
+Source10:      %{xen_extfiles_url}/lwip-1.3.0.tar.gz
+# Source10-md5:        36cc57650cffda9a0269493be2a169bb
+Source11:      %{xen_extfiles_url}/newlib-1.16.0.tar.gz
+# Source11-md5:        bf8f1f9e3ca83d732c00a79a6ef29bc4
+Source12:      %{xen_extfiles_url}/zlib-1.2.3.tar.gz
+# Source12-md5:        debc62758716a169df9f62e6ab2bc634
+Source13:      %{xen_extfiles_url}/pciutils-2.2.9.tar.bz2
+# Source13-md5:        cec05e7785497c5e19da2f114b934ffd
+Source14:      %{xen_extfiles_url}/grub-0.97.tar.gz
+# Source14-md5:        cd3f3eb54446be6003156158d51f4884
+Source15:      %{xen_extfiles_url}/ipxe-git-1dd56dbd11082fb622c2ed21cfaced4f47d798a6.tar.gz
+# Source15-md5:        b3ab0488a989a089207302111d12e1a0
+Source17:      %{xen_extfiles_url}/polarssl-%{polarssl_version}-gpl.tgz
+# Source17-md5:        7b72caf22b01464ee7d6165f2fd85f44
+Source18:      %{xen_extfiles_url}/tpm_emulator-%{tpm_emulator_version}.tar.gz
+# Source18-md5:        e26becb8a6a2b6695f6b3e8097593db8
+Source19:      https://ftp.gnu.org/gnu/gmp/gmp-%{gmp_version}.tar.bz2
+# Source19-md5:        dd60683d7057917e34630b4a787932e8
+Source35:      xenconsoled.sysconfig
+Source37:      xenstored.sysconfig
+Source38:      xenstored.tmpfiles
+# sysvinit scripts
+Source46:      xen-qemu-dom0-disk-backend.init
+Source51:      xenconsoled.init
+Source52:      xenstored.init
+Source53:      xen-watchdog.init
+Source54:      xendomains.init
+Source55:      xen.logrotate
+Source56:      xen.tmpfiles
+Source57:      xen.cfg
+Source58:      xen.efi-boot-update
+Source59:      vif-openvswitch
+Source60:      xen-init-list
+Source61:      xen-toolstack
 Patch0:                %{name}-python_scripts.patch
-Patch1:                %{name}-gcc.patch
-URL:           http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html
-%{?with_hvm:BuildRequires:     bcc}
-BuildRequires: curl-devel
+Patch1:                %{name}-symbols.patch
+Patch2:                %{name}-link.patch
+Patch3:                pygrubfix.patch
+# Warning: this disables ingress filtering implemented in xen scripts!
+Patch4:                %{name}-net-disable-iptables-on-bridge.patch
+Patch5:                %{name}-qemu.patch
+Patch6:                %{name}-doc.patch
+Patch7:                %{name}-paths.patch
+Patch8:                %{name}-no_fetcher.patch
+Patch9:                %{name}-no_Werror.patch
+Patch10:       %{name}-stubdom-build.patch
+Patch11:       link.patch
+Patch12:       %{name}-systemd.patch
+Patch13:       sysmacros.patch
+Patch14:       gcc9.patch
+Patch15:       gcc10.patch
+Patch16:       ocaml-4.12.patch
+URL:           http://www.xen.org/products/xenhyp.html
+BuildRequires: autoconf >= 2.67
+%ifarch %{ix86} %{x8664}
+BuildRequires: acpica
+BuildRequires: bcc
+BuildRequires: bin86
+%endif
+%{?with_efi:BuildRequires:     binutils >= 3:2.23.51.0.3-2}
+BuildRequires: bzip2-devel
+%if %{with xsm}
+BuildRequires: checkpolicy
+%endif
+# tpm_emulator uses cmake
+BuildRequires: cmake >= 2.4
 BuildRequires: e2fsprogs-devel
-BuildRequires: gcc >= 5:3.4
-BuildRequires: latex2html
-BuildRequires: libidn-devel
+BuildRequires: fig2dev
+BuildRequires: gcc >= 6:4.1
+%ifarch %{x8664}
+BuildRequires: gcc-multilib-32 >= 6:4.1
+%endif
+BuildRequires: gettext-tools
+BuildRequires: libaio-devel
+%ifarch %{arm} aarch64
+BuildRequires: libfdt-devel >= 1.4.0
+%endif
+BuildRequires: libnl-devel >= 3.2.8
+BuildRequires: libuuid-devel
+BuildRequires: lzo-devel >= 2
 BuildRequires: ncurses-devel
-BuildRequires: python-devel
+%if %{with ocaml}
+BuildRequires: ocaml >= 4.02.0
+BuildRequires: ocaml-findlib
+%endif
+BuildRequires: pandoc
+BuildRequires: perl-base
+BuildRequires: perl-tools-pod
+BuildRequires: pkgconfig
+BuildRequires: python-devel >= 1:2.6
+BuildRequires: python-markdown
 BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: rpmbuild(macros) >= 1.647
+BuildRequires: seabios
 BuildRequires: texlive-dvips
-BuildRequires: texlive-latex-data
 BuildRequires: texlive-latex-psnfss
-BuildRequires: transfig
+BuildRequires: texlive-xetex
 BuildRequires: which
+BuildRequires: xz-devel
+BuildRequires: yajl-devel
 BuildRequires: zlib-devel
+%if %{with qemu_traditional}
+%{?with_opengl:BuildRequires:  OpenGL-devel}
+%{?with_sdl:BuildRequires:     SDL-devel >= 1.2.1}
+%{?with_bluetooth:BuildRequires:       bluez-libs-devel}
+%{?with_brlapi:BuildRequires:  brlapi-devel}
+BuildRequires: gnutls-devel
+BuildRequires: pciutils-devel
+BuildRequires: pixman-devel >= 0.21.8
+BuildRequires: vde2-devel
+# for xfsctl (<xfs/xfs.h>)
+BuildRequires: xfsprogs-devel
+BuildRequires: xorg-lib-libX11-devel
+BuildRequires: xorg-lib-libXext-devel
+%endif
+%if %{with qemu_traditional}
+# FIXME: see qemu configure comments on top of spec
+%{!?with_opengl:BuildConflicts:        OpenGL-devel}
+%{!?with_sdl:BuildConflicts:   SDL-devel}
+%{!?with_sdl:BuildConflicts:   SDL-devel}
+%{!?with_bluetooth:BuildConflicts:     bluez-libs-devel}
+%{!?with_brlapi:BuildConflicts:        brlapi-devel}
+%endif
 Requires(post,preun):  /sbin/chkconfig
+Requires(post,preun,postun):   systemd-units >= 38
 Requires:      %{name}-libs = %{version}-%{release}
 Requires:      ZopeInterface
 Requires:      bridge-utils
@@ -54,24 +180,27 @@ Requires:  coreutils
 Requires:      diffutils
 Requires:      gawk
 Requires:      iptables
-Requires:      kernel(xen0) = %{major}
 Requires:      losetup
 Requires:      net-tools
 Requires:      python-%{name} = %{version}-%{release}
 Requires:      rc-scripts
 Requires:      sed
+Requires:      systemd-units >= 38
 Requires:      util-linux
 Requires:      which
+Requires:      %{name}-guest = %{version}-%{release}
+%ifarch %{ix86} %{x8664}
+# for HVM
+Suggests:      qemu-system-x86
+%endif
 Obsoletes:     xen-doc
-ExclusiveArch: %{ix86} %{x8664}
+Obsoletes:     xen-udev
+Obsoletes:     xen-xend
+ExclusiveArch: %{ix86} %{x8664} %{arm} aarch64
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-# some PPC/SPARC boot image in ELF format
-%define         _noautostrip    .*%{_datadir}/%{name}/qemu/openbios-.*
-
-%ifnarch i686 athlon pentium3 pentium4
-%undefine      with_pae
-%endif
+# some PPC/SPARC boot images in ELF format
+%define                _noautostrip    .*%{_datadir}/\\(xen\\|qemu-xen\\)/qemu/\\(openbios-.*\\|palcode-clipper\\|s390-ccw.img\\)
 
 %description
 This package contains the Xen hypervisor and Xen tools, needed to run
@@ -99,230 +228,684 @@ Xen jest ciągle rozwijana, a ten RPM był słabo testowany. Nie należy
 być zdziwionym, jeśli ten pakiet zje dane, wypije całą kawę czy będzie
 się wyśmiewał w obecności przyjaciół.
 
+%package guest
+Summary:       Xen tools for virtual machines
+Summary(pl.UTF-8):     Narzędzia Xen dla maszyn virtualnych
+Group:         Applications/System
+Requires:      %{name}-libs-guest = %{version}-%{release}
+
+%description guest
+Xen utilities for both dom0 and domU virtual domains.
+
+%description guest -l pl.UTF-8
+Narzędzia Xena dla maszyn wirtualnych dom0 i domU.
+
 %package libs
-Summary:       xen libraries
-Summary(pl.UTF-8):     Biblioteki xena
+Summary:       Xen libraries
+Summary(pl.UTF-8):     Biblioteki Xena
 Group:         Libraries
+Requires:      %{name}-libs-guest = %{version}-%{release}
+Requires:      libnl >= 3.2.8
 
 %description libs
-xen libraries.
+Xen libraries.
 
 %description libs -l pl.UTF-8
-Biblioteki xena.
+Biblioteki Xena.
+
+%package libs-guest
+Summary:       Xen libraries for virtual machines
+Summary(pl.UTF-8):     Biblioteki Xena dla maszyn wirtualnych
+Group:         Libraries
+
+%description libs-guest
+Xen libraries for both dom0 and domU virtual machines.
+
+%description libs-guest -l pl.UTF-8
+Biblioteki Xena dla maszyn wirtualnych dom0 i domU.
 
 %package devel
-Summary:       Header files for xen
-Summary(pl.UTF-8):     Pliki nagłówkowe xena
+Summary:       Header files for Xen
+Summary(pl.UTF-8):     Pliki nagłówkowe Xena
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
 
 %description devel
-Header files for xen.
+Header files for Xen.
 
 %description devel -l pl.UTF-8
-Pliki nagłówkowe xena.
+Pliki nagłówkowe Xena.
 
 %package static
-Summary:       Static xen libraries
-Summary(pl.UTF-8):     Statyczne biblioteki xena
+Summary:       Static Xen libraries
+Summary(pl.UTF-8):     Statyczne biblioteki Xena
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
 
 %description static
-Static xen libraries.
+Static Xen libraries.
 
 %description static -l pl.UTF-8
-Statyczne biblioteki xena.
+Statyczne biblioteki Xena.
 
-%package hotplug
-Summary:       xen hotplug scripts
-Summary(pl.UTF-8):     Skrypty hotplug dla xena
-Group:         Application/System
+%package -n ocaml-xen
+Summary:       OCaml bindings for Xen
+Summary(pl.UTF-8):     Wiązania OCamla dla Xena
+License:       LGPL v2.1 with linking exception
+Group:         Libraries
+Requires:      %{name}-libs = %{version}-%{release}
+%if %{with ocaml}
+%requires_eq   ocaml-runtime
+%endif
 
-%description hotplug
-xen hotplug scripts.
+%description -n ocaml-xen
+OCaml bindings for Xen.
 
-%description hotplug -l pl.UTF-8
-Skrypty hotplug dla xena.
+%description -n ocaml-xen -l pl.UTF-8
+Wiązania OCamla dla Xena.
 
-%package udev
-Summary:       xen udev scripts
-Summary(pl.UTF-8):     Skrypty udev dla xena
-Group:         Application/System
+%package -n ocaml-xen-devel
+Summary:       OCaml bindings for Xen - development files
+Summary(pl.UTF-8):     Wiązania OCamla dla Xena - pliki programistyczne
+License:       LGPL v2.1 with linking exception
+Group:         Development/Libraries
+Requires:      ocaml-xen = %{version}-%{release}
+%if %{with ocaml}
+%requires_eq   ocaml
+%endif
 
-%description udev
-xen udev scripts.
+%description -n ocaml-xen-devel
+OCaml bindings for Xen - development files.
 
-%description udev -l pl.UTF-8
-Skrypty udev dla xena.
+%description -n ocaml-xen-devel -l pl.UTF-8
+Wiązania OCamla dla Xena - pliki programistyczne.
 
 %package -n python-xen
-Summary:       xen Python modules
-Summary(pl.UTF-8):     Moduły Pythona dla xena
+Summary:       Xen Python modules
+Summary(pl.UTF-8):     Moduły Pythona dla Xena
 Group:         Libraries
+Requires:      %{name}-libs = %{version}-%{release}
 Conflicts:     xen < 3.2.1-0.3
 
 %description -n python-xen
-xen Python modules.
+Xen Python modules.
 
 %description -n python-xen -l pl.UTF-8
-Moduły Pythona dla xena.
+Moduły Pythona dla Xena.
+
+%package -n python-xen-guest
+Summary:       Xen Python modules for virtual machines
+Summary(pl.UTF-8):     Moduły Pythona dla maszyn wirtualnych Xena
+Group:         Libraries
+Requires:      %{name}-libs-guest = %{version}-%{release}
+Conflicts:     xen < 3.2.1-0.3
+
+%description -n python-xen-guest
+Xen Python modules for both dom0 and domU virtual machines.
+
+%description -n python-xen-guest -l pl.UTF-8
+Moduły Pythona dla maszyn wirtualnych dom0 i domU.
+
+%package -n bash-completion-%{name}
+Summary:       bash-completion for Xen (xl)
+Summary(pl.UTF-8):     Bashowe dopełnianie poleceń dla Xena (xl)
+Group:         Applications/Shells
+Requires:      %{name} = %{version}-%{release}
+Requires:      bash-completion
+
+%description -n bash-completion-%{name}
+This package provides bash-completion for Xen (xl).
+
+%description -n bash-completion-%{name} -l pl.UTF-8
+Ten pakiet zapewnia bashowe dopełnianie poleceń dla Xena (xl).
+
+%package efi
+Summary:       Xen hypervisor binary for EFI
+Summary(pl.UTF-8):     Hipernadzorca Xen dla EFI
+Group:         Applications/System
+Requires:      %{name}-libs-guest = %{version}-%{release}
+
+%description efi
+Xen hypervisor EFI binary, which can be booted directly from (U)EFI
+firmware without help from any additional bootloader.
+
+%description efi -l pl.UTF-8
+Nadzorca Xen w postaci, która może być uruchomiona wprost z firmware
+(U)EFI, bez potrzeby oddzielnego bootloadera.
 
 %prep
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%if %(echo %{cc_version} | cut -d. -f1) >= 10
+# -Wno-error=enum-conversion requires gcc 10
+%patch15 -p1
+%endif
+%patch16 -p1
+
+# stubdom sources
+ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom
+ln -s %{SOURCE17} %{SOURCE18} %{SOURCE19} stubdom
+ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
 
-find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -fv
+# do not allow fetching anything via git
+echo GIT=/bin/false >> Config.mk
 
 %build
-CFLAGS="%{rpmcflags} -I/usr/include/ncurses" \
-CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses" \
-%{__make} -j1 xen tools \
-       %{?with_pae:XEN_TARGET_X86_PAE=y} \
+# based on the 'autoconf.sh' from the sources
+%{__autoconf}
+cd tools
+%{__autoconf}
+%{__autoheader}
+cd ../stubdom
+%{__autoconf}
+cd ../docs
+%{__autoconf}
+cd ..
+
+# if gold is used then bioses and grub doesn't build
+install -d our-ld
+ln -f -s /usr/bin/ld.bfd our-ld/ld
+export PATH=$(pwd)/our-ld:$PATH
+
+# NOTE on ac_cv_*:
+# - use openssl (libcrypto) instead of libgcrypt as openssl is obligatory anyway
+# - prevent libiconv from being detected (not needed with glibc)
+
+%configure \
+       CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses" \
+       ac_cv_lib_gcrypt_gcry_md_hash_buffer=no \
+       ac_cv_lib_iconv_libiconv_open=no \
+       --disable-debug \
+       %{__enable_disable qemu_traditional qemu-traditional} \
+       --with-system-seabios=/usr/share/seabios/bios.bin \
+%ifarch %{x8664}
+       --with-system-qemu=/usr/bin/qemu-system-x86_64 \
+%else
+       --with-system-qemu=/usr/bin/qemu-system-i386 \
+%endif
+       --with-systemd=%{systemdunitdir}
+
+export EXTRA_CFLAGS_XEN_TOOLS="%{rpmcflags} -I/usr/include/ncurses"
+export EXTRA_CFLAGS_QEMU_TRADITIONAL="%{rpmcflags} -I/usr/include/ncurses"
+export EXTRA_CFLAGS_QEMU_XEN="%{rpmcflags} -I/usr/include/ncurses"
+
+%{__make} dist-xen dist-tools dist-docs \
+%ifarch %{ix86}
+       XEN_COMPILE_ARCH=x86_32 \
+%endif
+%ifarch %{x8664}
+       XEN_COMPILE_ARCH=x86_64 \
+%endif
+       %{!?with_ocaml:OCAML_TOOLS=n} \
+       XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
        CC="%{__cc}" \
-       CXX="%{__cxx}"
+       CXX="%{__cxx}" \
+       V=1
+
+%if %{with stubdom}
+%{__make} dist-stubdom \
+%ifarch %{ix86}
+       XEN_COMPILE_ARCH=x86_32 \
+%endif
+%ifarch %{x8664}
+       XEN_COMPILE_ARCH=x86_64 \
+%endif
+       %{!?with_ocaml:OCAML_TOOLS=n} \
+       XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
+       CC="%{__cc}" \
+       CXX="%{__cxx}" \
+       V=1
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/var/run/{xen-hotplug,xend,xenstored}
+install -d $RPM_BUILD_ROOT/etc/{xen/examples,modules-load.d,logrotate.d} \
+       $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{systemdunitdir},/var/log/xen/console}
 
-%{__make} install-xen install-tools install-docs \
-       CC="%{__cc}" \
-       CXX="%{__cxx}" \
-       %{?with_pae:XEN_TARGET_X86_PAE=y} \
+%if %{with efi}
+install -d $RPM_BUILD_ROOT/etc/efi-boot/update.d
+%endif
+
+%{__make} install-xen install-tools %{?with_stubdom:install-stubdom} install-docs \
+%ifarch %{ix86}
+       XEN_COMPILE_ARCH=x86_32 \
+%endif
+%ifarch %{x8664}
+       XEN_COMPILE_ARCH=x86_64 \
+%endif
+       %{!?with_ocaml:OCAML_TOOLS=n} \
+       XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
        DESTDIR=$RPM_BUILD_ROOT \
-       XEN_PYTHON_NATIVE_INSTALL=1
+       HOTPLUGS=install-udev
+
+install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled
+install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored
+
+# sysvinit scripts
+%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
+%{__rm} $RPM_BUILD_ROOT/etc/sysconfig/xencommons
+install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled
+install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored
+install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog
+install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
+install %{SOURCE46} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-qemu-dom0-disk-backend
+install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
+install %{SOURCE56} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xen.conf
+install -d $RPM_BUILD_ROOT/var/run/xenstored
+install %{SOURCE38} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xenstored.conf
+
+install %{SOURCE60} $RPM_BUILD_ROOT%{_libexecdir}/%{name}/bin/xen-init-list
+install %{SOURCE61} $RPM_BUILD_ROOT%{_libexecdir}/%{name}/bin/xen-toolstack
+
+%{__sed} -E -i -e '1s,#!\s*/usr/bin/python(\s|$),#!%{__python}\1,' \
+       $RPM_BUILD_ROOT%{_libexecdir}/%{name}/bin/pygrub
+
+%if %{with efi}
+install %{SOURCE57} $RPM_BUILD_ROOT/etc/efi-boot/xen.cfg
+sed -e's;@libdir@;%{_libdir};g' -e's;@target_cpu@;%{_target_cpu};g' \
+                       %{SOURCE58} > $RPM_BUILD_ROOT/etc/efi-boot/update.d/xen.conf
+%endif
 
-install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
+%{__mv} $RPM_BUILD_ROOT/etc/xen/{xlexample*,examples}
 
-install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/xend-db/{domain,vnet}
-install -d $RPM_BUILD_ROOT%{_sharedstatedir}/xen/save
+install %{SOURCE59} $RPM_BUILD_ROOT%{_sysconfdir}/xen/scripts/vif-openvswitch
 
-cp -a dist/install/etc/udev $RPM_BUILD_ROOT%{_sysconfdir}
-cp -a dist/install/etc/hotplug $RPM_BUILD_ROOT%{_sysconfdir}
+# for %%doc
+install -d _doc
+cp -p tools/pygrub/README _doc/README.pygrub
 
 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
 
 %py_postclean
-# remove unneeded files
-rm -f $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
-rm -rf $RPM_BUILD_ROOT%{_docdir}/xen
-rm -rf $RPM_BUILD_ROOT%{_docdir}/qemu/qemu-doc.html
-rm -rf $RPM_BUILD_ROOT/''etc/init.d
-rm -f $RPM_BUILD_ROOT/boot/xen-3.2.gz
-rm -f $RPM_BUILD_ROOT/boot/xen-3.gz
-# strip - Unable to recognise the format of the input file 
-rm -f $RPM_BUILD_ROOT%{_datadir}/xen/qemu/openbios-sparc32
-rm -f $RPM_BUILD_ROOT%{_datadir}/xen/qemu/openbios-sparc64
 
-
-# conflict with qemu
-rm -f $RPM_BUILD_ROOT%{_mandir}/man1/qemu-img.1
-rm -f $RPM_BUILD_ROOT%{_mandir}/man1/qemu.1
+# remove unneeded files
+%if %{with hypervisor}
+%{__mv} xen/xen-syms $RPM_BUILD_ROOT/boot/%{name}-syms-%{version}
+%{__rm} $RPM_BUILD_ROOT/boot/xen-4.13.gz
+%{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz
+%endif
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
+%{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
-/sbin/chkconfig --add xend
+/sbin/chkconfig --add xen-watchdog
+/sbin/chkconfig --add xenconsoled
+/sbin/chkconfig --add xenstored
 /sbin/chkconfig --add xendomains
+/sbin/chkconfig --add xen-qemu-dom0-disk-backend
+NORESTART=1
+%systemd_post xen-watchdog.service xenconsoled.service xenstored.service xendomains.service xen-qemu-dom0-disk-backend.service
 
 %preun
 if [ "$1" = "0" ]; then
-       %service xend stop
-       /sbin/chkconfig --del xend
-
        %service xendomains stop
        /sbin/chkconfig --del xendomains
+
+       %service xenconsoled stop
+       /sbin/chkconfig --del xenconsoled
+
+       %service xenstored stop
+       /sbin/chkconfig --del xenstored
+
+       %service xen-watchdog stop
+       /sbin/chkconfig --del xen-watchdog
+
+       %service xen-qemu-dom0-disk-backend stop
+       /sbin/chkconfig --del xen-qemu-dom0-disk-backend
 fi
+%systemd_preun xen-watchdog.service xenconsoled.service xenstored.service xendomains.service xen-qemu-dom0-disk-backend.service
+
+%postun
+%systemd_reload
 
 %post  libs -p /sbin/ldconfig
 %postun        libs -p /sbin/ldconfig
 
+%post  libs-guest -p /sbin/ldconfig
+%postun        libs-guest -p /sbin/ldconfig
+
+%post efi
+[ -x /sbin/efi-boot-update ] && /sbin/efi-boot-update --auto || :
+
 %files
 %defattr(644,root,root,755)
-%doc COPYING README docs/misc/*
-%doc docs/html/*
+%doc COPYING README* docs/misc/* docs/html/* _doc/*
+%if %{with hypervisor}
 /boot/%{name}-syms-%{version}
+/boot/%{name}-%{version}.config
 /boot/%{name}-%{version}.gz
 /boot/%{name}.gz
-%attr(754,root,root) /etc/rc.d/init.d/*
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
+%endif
+%if %{with xsm}
+/boot/xenpolicy-%{version}
+%endif
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenconsoled
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenstored
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xendomains
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/xen
+%attr(754,root,root) /etc/rc.d/init.d/xen-watchdog
+%attr(754,root,root) /etc/rc.d/init.d/xenconsoled
+%attr(754,root,root) /etc/rc.d/init.d/xenstored
+%attr(754,root,root) /etc/rc.d/init.d/xendomains
+%attr(754,root,root) /etc/rc.d/init.d/xen-qemu-dom0-disk-backend
+%{_prefix}/lib/modules-load.d/xen.conf
+%{systemdunitdir}/proc-xen.mount
+%{systemdunitdir}/var-lib-xenstored.mount
+%{systemdunitdir}/xen-init-dom0.service
+%{systemdunitdir}/xen-watchdog.service
+%{systemdunitdir}/xenconsoled.service
+%{systemdunitdir}/xenstored.service
+%{systemdunitdir}/xendriverdomain.service
+%{systemdunitdir}/xendomains.service
+%{systemdunitdir}/xen-qemu-dom0-disk-backend.service
 %dir %{_sysconfdir}/xen
-%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/qemu-ifup
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/*.*
-#%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/b*
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xmexample[12]
 %dir %{_sysconfdir}/xen/auto
+%dir %{_sysconfdir}/xen/examples
 %dir %{_sysconfdir}/xen/scripts
 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/*
-%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_sbindir}/*
-%dir %{_libdir}/%{name}
-%dir %{_libdir}/%{name}/bin
-%attr(744,root,root) %{_libdir}/%{name}/bin/*
-%if "%{_lib}" != "lib"
-%dir %{_prefix}/lib/%{name}
-%endif
-%dir %{_prefix}/lib/%{name}/boot
-%{?with_hvm:%attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader}
-%{_datadir}/xen
-%{_mandir}/man?/*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/examples/*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf
+%attr(755,root,root) %{_bindir}/pygrub
+%if %{with qemu_traditional}
+%attr(755,root,root) %{_bindir}/qemu-img-xen
+%attr(755,root,root) %{_bindir}/qemu-nbd-xen
+%endif
+%attr(755,root,root) %{_bindir}/xen-cpuid
+%attr(755,root,root) %{_bindir}/xenalyze
+%attr(755,root,root) %{_bindir}/xencons
+%attr(755,root,root) %{_bindir}/xencov_split
+%attr(755,root,root) %{_bindir}/xentrace_format
+%if %{with xsm}
+%attr(755,root,root) %{_sbindir}/flask-*
+%endif
+%attr(755,root,root) %{_sbindir}/gdbsx
+%attr(755,root,root) %{_sbindir}/xen-*
+%attr(755,root,root) %{_sbindir}/xenbaked
+%attr(755,root,root) %{_sbindir}/xenconsoled
+%attr(755,root,root) %{_sbindir}/xencov
+%attr(755,root,root) %{_sbindir}/xenlockprof
+%attr(755,root,root) %{_sbindir}/xenmon
+%attr(755,root,root) %{_sbindir}/xenperf
+%attr(755,root,root) %{_sbindir}/xenpm
+%attr(755,root,root) %{_sbindir}/xenpmd
+%attr(755,root,root) %{_sbindir}/xenstored
+%attr(755,root,root) %{_sbindir}/xentop
+%attr(755,root,root) %{_sbindir}/xentrace
+%attr(755,root,root) %{_sbindir}/xentrace_setmask
+%attr(755,root,root) %{_sbindir}/xentrace_setsize
+%attr(755,root,root) %{_sbindir}/xenwatchdogd
+%attr(755,root,root) %{_sbindir}/xl
+%dir %{_libexecdir}/%{name}
+%dir %{_libexecdir}/%{name}/bin
+%attr(744,root,root) %{_libexecdir}/%{name}/bin/*
+%dir %{_libexecdir}/%{name}/boot
+%if %{with stubdom}
+%if %{with qemu_traditional}
+%{_libexecdir}/%{name}/boot/ioemu-stubdom.gz
+%endif
+%ifarch %{ix86} %{x8664}
+%{_libexecdir}/%{name}/boot/pv-grub-x86_32.gz
+%endif
+%ifarch %{x8664}
+%{_libexecdir}/%{name}/boot/pv-grub-x86_64.gz
+%endif
+%{_libexecdir}/%{name}/boot/vtpm-stubdom.gz
+%{_libexecdir}/%{name}/boot/vtpmmgr-stubdom.gz
+%{_libexecdir}/%{name}/boot/xenstore-stubdom.gz
+%endif
+%{_libexecdir}/%{name}/boot/ipxe.bin
+%ifarch %{x8664}
+%{_libexecdir}/%{name}/boot/xen-shim
+%endif
+%attr(744,root,root) %{_libexecdir}/%{name}/boot/hvmloader
+%{_mandir}/man1/xentop.1*
+%{_mandir}/man1/xentrace_format.1*
+%{_mandir}/man1/xl.1*
+%{_mandir}/man5/xl.cfg.5*
+%{_mandir}/man5/xl.conf.5*
+%{_mandir}/man5/xl-disk-configuration.5*
+%{_mandir}/man5/xl-network-configuration.5*
+%{_mandir}/man5/xlcpupool.cfg.5*
+%{_mandir}/man7/xen-pci-device-reservations.7*
+%{_mandir}/man7/xen-pv-channel.7*
+%{_mandir}/man7/xen-tscmode.7*
+%{_mandir}/man7/xen-vbd-interface.7*
+%{_mandir}/man7/xen-vtpm.7*
+%{_mandir}/man7/xen-vtpmmgr.7*
+%{_mandir}/man7/xl-numa-placement.7*
+%{_mandir}/man8/xentrace.8*
 %{_sharedstatedir}/xen
 %{_sharedstatedir}/xenstored
-%dir /var/run/xen-hotplug
-%dir %attr(700,root,root) /var/run/xend
 %dir /var/run/xenstored
+%{systemdtmpfilesdir}/xen.conf
+%{systemdtmpfilesdir}/xenstored.conf
+%dir %attr(0700,root,root) /var/log/xen
+%dir %attr(0700,root,root) /var/log/xen/console
+%if %{with qemu_traditional}
+%{_datadir}/xen
+%endif
+
+%files guest
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/xen-detect
+%attr(755,root,root) %{_bindir}/xenstore
+%attr(755,root,root) %{_bindir}/xenstore-chmod
+%attr(755,root,root) %{_bindir}/xenstore-control
+%attr(755,root,root) %{_bindir}/xenstore-exists
+%attr(755,root,root) %{_bindir}/xenstore-list
+%attr(755,root,root) %{_bindir}/xenstore-ls
+%attr(755,root,root) %{_bindir}/xenstore-read
+%attr(755,root,root) %{_bindir}/xenstore-rm
+%attr(755,root,root) %{_bindir}/xenstore-watch
+%attr(755,root,root) %{_bindir}/xenstore-write
+%{_mandir}/man1/xenstore.1*
+%{_mandir}/man1/xenstore-chmod.1*
+%{_mandir}/man1/xenstore-ls.1*
+%{_mandir}/man1/xenstore-read.1*
+%{_mandir}/man1/xenstore-write.1*
 
 %files libs
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so.*
-%dir %{_libdir}/fs
-%dir %{_libdir}/fs/ext2fs-lib
-%dir %{_libdir}/fs/fat
-%dir %{_libdir}/fs/iso9660
-%dir %{_libdir}/fs/reiserfs
-%dir %{_libdir}/fs/ufs
-%attr(755,root,root) %{_libdir}/fs/*/*.so
+%attr(755,root,root) %{_libdir}/libxenfsimage.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenfsimage.so.4.13
+%attr(755,root,root) %{_libdir}/libxencall.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxencall.so.1
+%attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.13
+%attr(755,root,root) %{_libdir}/libxendevicemodel.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxendevicemodel.so.1
+%attr(755,root,root) %{_libdir}/libxenevtchn.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenevtchn.so.1
+%attr(755,root,root) %{_libdir}/libxenforeignmemory.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenforeignmemory.so.1
+%attr(755,root,root) %{_libdir}/libxengnttab.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxengnttab.so.1
+%attr(755,root,root) %{_libdir}/libxenguest.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.13
+%attr(755,root,root) %{_libdir}/libxenlight.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenlight.so.4.13
+%attr(755,root,root) %{_libdir}/libxenstat.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenstat.so.4.13
+%attr(755,root,root) %{_libdir}/libxentoolcore.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxentoolcore.so.1
+%attr(755,root,root) %{_libdir}/libxentoollog.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxentoollog.so.1
+%attr(755,root,root) %{_libdir}/libxenvchan.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenvchan.so.4.13
+%attr(755,root,root) %{_libdir}/libxlutil.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxlutil.so.4.13
+%dir %{_libdir}/xenfsimage
+%dir %{_libdir}/xenfsimage/ext2fs-lib
+%dir %{_libdir}/xenfsimage/fat
+%dir %{_libdir}/xenfsimage/iso9660
+%dir %{_libdir}/xenfsimage/reiserfs
+%dir %{_libdir}/xenfsimage/ufs
+%dir %{_libdir}/xenfsimage/xfs
+%dir %{_libdir}/xenfsimage/zfs
+%attr(755,root,root) %{_libdir}/xenfsimage/*/fsimage.so
+
+%files libs-guest
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libxenstore.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenstore.so.3.0
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so
-%{_includedir}/*
+%attr(755,root,root) %{_libdir}/libxenfsimage.so
+%attr(755,root,root) %{_libdir}/libxencall.so
+%attr(755,root,root) %{_libdir}/libxenctrl.so
+%attr(755,root,root) %{_libdir}/libxendevicemodel.so
+%attr(755,root,root) %{_libdir}/libxenevtchn.so
+%attr(755,root,root) %{_libdir}/libxenforeignmemory.so
+%attr(755,root,root) %{_libdir}/libxengnttab.so
+%attr(755,root,root) %{_libdir}/libxenguest.so
+%attr(755,root,root) %{_libdir}/libxenlight.so
+%attr(755,root,root) %{_libdir}/libxenstat.so
+%attr(755,root,root) %{_libdir}/libxenstore.so
+%attr(755,root,root) %{_libdir}/libxentoolcore.so
+%attr(755,root,root) %{_libdir}/libxentoollog.so
+%attr(755,root,root) %{_libdir}/libxenvchan.so
+%attr(755,root,root) %{_libdir}/libxlutil.so
+%{_includedir}/_libxl_list.h
+%{_includedir}/_libxl_types.h
+%{_includedir}/_libxl_types_json.h
+%{_includedir}/libxenvchan.h
+%{_includedir}/libxl*.h
+%{_includedir}/xen*.h
+%{_includedir}/xs*.h
+%{_includedir}/xen
+%{_includedir}/xenstore-compat
+%{_pkgconfigdir}/xencall.pc
+%{_pkgconfigdir}/xencontrol.pc
+%{_pkgconfigdir}/xendevicemodel.pc
+%{_pkgconfigdir}/xenevtchn.pc
+%{_pkgconfigdir}/xenforeignmemory.pc
+%{_pkgconfigdir}/xengnttab.pc
+%{_pkgconfigdir}/xenguest.pc
+%{_pkgconfigdir}/xenlight.pc
+%{_pkgconfigdir}/xenstat.pc
+%{_pkgconfigdir}/xenstore.pc
+%{_pkgconfigdir}/xentoolcore.pc
+%{_pkgconfigdir}/xentoollog.pc
+%{_pkgconfigdir}/xenvchan.pc
+%{_pkgconfigdir}/xlutil.pc
 
 %files static
 %defattr(644,root,root,755)
-%{_libdir}/lib*.a
-
-%if %{without hvm}
-%files hotplug
+%{_libdir}/libxencall.a
+%{_libdir}/libxenctrl.a
+%{_libdir}/libxendevicemodel.a
+%{_libdir}/libxenevtchn.a
+%{_libdir}/libxenforeignmemory.a
+%{_libdir}/libxengnttab.a
+%{_libdir}/libxenguest.a
+%{_libdir}/libxenlight.a
+%{_libdir}/libxenvchan.a
+%{_libdir}/libxenstat.a
+%{_libdir}/libxenstore.a
+%{_libdir}/libxentoolcore.a
+%{_libdir}/libxentoollog.a
+%{_libdir}/libxlutil.a
+
+%if %{with ocaml}
+%files -n ocaml-xen
 %defattr(644,root,root,755)
-%attr(755,root,root) /etc/hotplug/*
-%endif
-
-%files udev
+%doc tools/ocaml/LICENSE
+%attr(755,root,root) %{_sbindir}/oxenstored
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/oxenstored.conf
+%dir %{_libdir}/ocaml/xenbus
+%attr(755,root,root) %{_libdir}/ocaml/xenbus/dllxenbus_stubs.so
+%dir %{_libdir}/ocaml/xenctrl
+%attr(755,root,root) %{_libdir}/ocaml/xenctrl/dllxenctrl_stubs.so
+%dir %{_libdir}/ocaml/xeneventchn
+%attr(755,root,root) %{_libdir}/ocaml/xeneventchn/dllxeneventchn_stubs.so
+%dir %{_libdir}/ocaml/xenlight
+%attr(755,root,root) %{_libdir}/ocaml/xenlight/dllxenlight_stubs.so
+%dir %{_libdir}/ocaml/xenmmap
+%attr(755,root,root) %{_libdir}/ocaml/xenmmap/dllxenmmap_stubs.so
+%dir %{_libdir}/ocaml/xentoollog
+%attr(755,root,root) %{_libdir}/ocaml/xentoollog/dllxentoollog_stubs.so
+
+%files -n ocaml-xen-devel
 %defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) /etc/udev/*
+%{_libdir}/ocaml/xenbus/META
+%{_libdir}/ocaml/xenbus/libxenbus_stubs.a
+%{_libdir}/ocaml/xenbus/xenbus.a
+%{_libdir}/ocaml/xenbus/*.cm[aixo]*
+%{_libdir}/ocaml/xenctrl/META
+%{_libdir}/ocaml/xenctrl/libxenctrl_stubs.a
+%{_libdir}/ocaml/xenctrl/xenctrl.a
+%{_libdir}/ocaml/xenctrl/xenctrl.cm[aix]*
+%{_libdir}/ocaml/xeneventchn/META
+%{_libdir}/ocaml/xeneventchn/libxeneventchn_stubs.a
+%{_libdir}/ocaml/xeneventchn/xeneventchn.a
+%{_libdir}/ocaml/xeneventchn/xeneventchn.cm[aix]*
+%{_libdir}/ocaml/xenmmap/META
+%{_libdir}/ocaml/xenmmap/libxenmmap_stubs.a
+%{_libdir}/ocaml/xenmmap/xenmmap.a
+%{_libdir}/ocaml/xenmmap/xenmmap.cm[aix]*
+%{_libdir}/ocaml/xenlight/META
+%{_libdir}/ocaml/xenlight/libxenlight_stubs.a
+%{_libdir}/ocaml/xenlight/xenlight.a
+%{_libdir}/ocaml/xenlight/xenlight.cm[aix]*
+%dir %{_libdir}/ocaml/xenstore
+%{_libdir}/ocaml/xenstore/META
+%{_libdir}/ocaml/xenstore/xenstore.a
+%{_libdir}/ocaml/xenstore/*.cm[aixo]*
+%{_libdir}/ocaml/xentoollog/META
+%{_libdir}/ocaml/xentoollog/libxentoollog_stubs.a
+%{_libdir}/ocaml/xentoollog/xentoollog.a
+%{_libdir}/ocaml/xentoollog/*.cm[aixo]*
+%endif
 
 %files -n python-xen
 %defattr(644,root,root,755)
-%attr(755,root,root) %{py_sitedir}/fsimage.so
+%attr(755,root,root) %{py_sitedir}/xenfsimage.so
+%dir %{py_sitedir}/xen
+%dir %{py_sitedir}/xen/lowlevel
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/xc.so
+%{py_sitedir}/xen/migration
 %{py_sitedir}/grub
+%{py_sitedir}/pygrub-*.egg-info
+%{py_sitedir}/xen-*.egg-info
+
+%files -n python-xen-guest
+%defattr(644,root,root,755)
 %dir %{py_sitedir}/xen
+%{py_sitedir}/xen/__init__.py*
 %dir %{py_sitedir}/xen/lowlevel
-%{py_sitedir}/xen/lowlevel/*.py*
-%attr(755,root,root) %{py_sitedir}/xen/lowlevel/*.so
-%{py_sitedir}/xen/sv
-%{py_sitedir}/xen/util
-%{py_sitedir}/xen/web
-%{py_sitedir}/xen/xend
-%{py_sitedir}/xen/xm
-%{py_sitedir}/xen/xsview
-%{py_sitedir}/xen/*.py*
-%if "%{py_ver}" > "2.4"
-%{py_sitedir}/*.egg-info
+%{py_sitedir}/xen/lowlevel/__init__.py*
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/xs.so
+
+%files -n bash-completion-%{name}
+%defattr(644,root,root,755)
+/etc/bash_completion.d/xl.sh
+
+%if %{with efi}
+%files efi
+%defattr(644,root,root,755)
+%dir %{_libdir}/efi
+%{_libdir}/efi/*.efi
+%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/xen.cfg
+%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/update.d/xen.conf
 %endif
This page took 0.065636 seconds and 4 git commands to generate.