]> git.pld-linux.org Git - packages/xen.git/blobdiff - xen.spec
- completed BRs to get feature-stable builds; most of them are related to qemu-xen
[packages/xen.git] / xen.spec
index c749d34f30e6e35ae201b847785e82343c310beb..9f99e7b1e48caeff0548f77d2bc40dc8bf66ef11 100644 (file)
--- a/xen.spec
+++ b/xen.spec
+#
 # TODO:
-# - pldized init scripts
-# - script for rc-boot
+#  - most of the qemu config options aren't detected (NPTL, vde, fdt)
+#  - 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)
+#
 #
 # Conditional build:
-%bcond_without pae             # build without PAE (HIGHMEM64G) support (PLD Xen* kernels require PAE)
+%bcond_without opengl          # disable OpenGL support in Xen qemu
+%bcond_without sdl             # disable SDL support in Xen qemu
+%bcond_without bluetooth       # disable bluetooth support in Xen qemu
+%bcond_without brlapi          # disable brlapi support in Xen qemu
+%bcond_without ocaml           # build Ocaml libraries for Xen tools
+#
+# from Config.mk:
+%define        seabios_version         1.6.3.2
 #
+%define        xen_extfiles_url        http://xenbits.xensource.com/xen-extfiles
 Summary:       Xen - a virtual machine monitor
-Summary(pl):   Xen - monitor maszyny wirtualnej
+Summary(pl.UTF-8):     Xen - monitor maszyny wirtualnej
 Name:          xen
-Version:       3.0.2
-Release:       0.2
-Epoch:         0
-License:       GPL
+Version:       4.2.0
+Release:       0.1
+License:       GPL v2, interface parts on BSD-like
 Group:         Applications/System
-Source0:       http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/%{name}-%{version}-src.tgz
-# Source0-md5: 544eab940a0734a55459d648e5c3b224
-Source1:       %{name}-xend.init
-Source2:       %{name}-xendomains.init
+Source0:       http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: f4f217969afc38f09251039966d91a87
+# 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:      http://xenbits.xen.org/xen-extfiles/ipxe-git-9a93db3f0947484e30e753bbd61a10b17336e20e.tar.gz
+# Source15-md5:        7496268cebf47d5c9ccb0696e3b26065
+# http://xenbits.xen.org/git-http/seabios.git/
+# git archive --prefix=tools/firmware/seabios/ --format=tar rel-%{seabios_version} | xz > seabios-%{seabios_version}.tar.xz
+Source16:      seabios-%{seabios_version}.tar.xz
+# Source16-md5:        145e07ff5618a3999f94f2e830d06b05
+Source30:      proc-xen.mount
+Source31:      var-lib-xenstored.mount
+Source32:      blktapctrl.service
+Source33:      blktapctrl.sysconfig
+Source34:      xenconsoled.service
+Source35:      xenconsoled.sysconfig
+Source36:      xenstored.service
+Source37:      xenstored.sysconfig
+Source38:      xenstored.tmpfiles
+Source39:      xend.service
+Source40:      xend.tmpfiles
+Source41:      xen-watchdog.service
+Source42:      xen-dom0-modules-load.conf
+# sysvinit scripts
+Source50:      xend.init
+Source51:      xenconsoled.init
+Source52:      xenstored.init
+Source53:      xen-watchdog.init
+Source54:      xendomains.init
+Source55:      xen.logrotate
 Patch0:                %{name}-python_scripts.patch
-Patch1:                %{name}-bash_scripts.patch
-URL:           http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html
-BuildRequires: XFree86-devel
+Patch1:                %{name}-symbols.patch
+Patch2:                %{name}-curses.patch
+Patch3:                pygrubfix.patch
+Patch4:                xend.catchbt.patch
+Patch5:                xend-pci-loop.patch
+Patch6:                xen-dumpdir.patch
+# Warning: this disables ingress filtering implemented in xen scripts!
+Patch7:                xen-net-disable-iptables-on-bridge.patch
+Patch8:                xen-configure-xend.patch
+Patch9:                xen-initscript.patch
+Patch10:       xen-quemu-softloat-c99.patch
+URL:           http://www.xen.org/products/xenhyp.html
+%{?with_opengl:BuildRequires:  OpenGL-devel}
+%{?with_sdl:BuildRequires:     SDL-devel >= 1.2.1}
+%ifarch %{ix86} %{x8664}
+BuildRequires: acpica
+BuildRequires: bcc
+%endif
+%{?with_bluetooth:BuildRequires:       bluez-libs-devel}
+%{?with_brlapi:BuildRequires:  brlapi-devel}
+BuildRequires: bzip2-devel
+BuildRequires: ceph-devel
 BuildRequires: curl-devel
-BuildRequires: latex2html
-BuildRequires: libidn-devel
+BuildRequires: cyrus-sasl-devel >= 2
+BuildRequires: e2fsprogs-devel
+BuildRequires: gcc >= 5:3.4
+BuildRequires: gettext-devel
+BuildRequires: glib2-devel >= 1:2.12
+BuildRequires: gnutls-devel
+BuildRequires: latex2html >= 2008
+BuildRequires: libaio-devel
+BuildRequires: libiscsi-devel
+BuildRequires: libjpeg-devel
+BuildRequires: libpng-devel
+BuildRequires: libuuid-devel
+BuildRequires: lzo-devel >= 2
 BuildRequires: ncurses-devel
-BuildRequires: python-Twisted
+%if %{with ocaml}
+BuildRequires: ocaml >= 3.04-7
+BuildRequires: ocaml-findlib
+%endif
+BuildRequires: nss-devel >= 3.12.8
+BuildRequires: openssl-devel
+BuildRequires: pciutils-devel
+BuildRequires: perl-base
+BuildRequires: pkgconfig
 BuildRequires: python-devel
 BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.268
-BuildRequires: tetex-dvips
-BuildRequires: tetex-format-latex
-BuildRequires: tetex-latex-psnfss
-BuildRequires: transfig
+BuildRequires: rpmbuild(macros) >= 1.647
+BuildRequires: spice-protocol >= 0.6.0
+BuildRequires: spice-server-devel >= 0.6.0
+BuildRequires: texi2html
+BuildRequires: texlive-dvips
+BuildRequires: texlive-latex-psnfss
+BuildRequires: texlive-xetex
+# not adjusted for usbredir 0.5.x (libusbredirparser-0.5)
+#BuildRequires:        usbredir-devel
+BuildRequires: vde2-devel
 BuildRequires: which
+# for xfsctl (<xfs/xfs.h>)
+BuildRequires: xfsprogs-devel
+BuildRequires: xorg-lib-libX11-devel
+BuildRequires: xorg-lib-libXext-devel
+BuildRequires: xz-devel
+BuildRequires: yajl-devel
 BuildRequires: zlib-devel
+# 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}
 Requires(post,preun):  /sbin/chkconfig
+Requires(post,preun,postun):   systemd-units >= 38
+Requires:      %{name}-libs = %{version}-%{release}
 Requires:      ZopeInterface
 Requires:      bridge-utils
+Requires:      coreutils
+Requires:      diffutils
+Requires:      gawk
+Requires:      iptables
 Requires:      losetup
-Requires:      python-TwistedWeb
+Requires:      net-tools
+Requires:      python-%{name} = %{version}-%{release}
 Requires:      rc-scripts
-Requires:      kernel(xen) = %{version}
+Requires:      sed
+Requires:      systemd-units >= 38
+Requires:      util-linux
+Requires:      which
+Requires:      %{name}-guest = %{version}-%{release}
 Obsoletes:     xen-doc
-ExclusiveArch: %{ix86}
+Obsoletes:     xen-udev
+ExclusiveArch: %{ix86} %{x8664}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%ifnarch i686 athlon pentium3 pentium4
-%define                with_pae        0 
-%endif
-
-
+# some PPC/SPARC boot images in ELF format
+%define         _noautostrip    .*%{_datadir}/\\(xen/qemu\\|qemu-xen\\)/\\(openbios-.*\\|palcode-clipper\\)
 
 %description
 This package contains the Xen hypervisor and Xen tools, needed to run
@@ -65,153 +176,601 @@ development, and this RPM has received extremely little testing. Don't
 be surprised if this RPM eats your data, drinks your coffee or makes
 fun of you in front of your friends.
 
-%description -l pl
-Ten pakiet zawiera nadzorcê oraz narzêdzia Xen, potrzebne do
+%description -l pl.UTF-8
+Ten pakiet zawiera nadzorcę oraz narzędzia Xen, potrzebne do
 uruchamiania wirtualnych maszyn w systemach x86, wraz z pakietami
-kernel-xen*. Informacje jak u¿ywaæ Xena mo¿na znale¼æ na stronach
+kernel-xen*. Informacje jak używać Xena można znaleźć na stronach
 projektu.
 
-Wirtualizacja mo¿e byæ u¿ywana do uruchamiania wielu wersji lub wielu
+Wirtualizacja może być używana do uruchamiania wielu wersji lub wielu
 dystrybucji Linuksa na jednym systemie lub do testowania nie zaufanych
-aplikacji w odizolowanym ¶rodowisku. Nale¿y zauwa¿yæ, ¿e technologia
-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ó³.
+aplikacji w odizolowanym środowisku. Należy zauważyć, że technologia
+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
+Group:         Libraries
+Requires:      %{name}-libs-guest = %{version}-%{release}
+
+%description libs
+Xen libraries.
+
+%description libs -l pl.UTF-8
+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):   Pliki nag³ówkowe xena
+Summary:       Header files for Xen
+Summary(pl.UTF-8):     Pliki nagłówkowe Xena
 Group:         Development/Libraries
-Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      %{name}-libs = %{version}-%{release}
 
 %description devel
-Header files for xen.
+Header files for Xen.
 
-%description devel -l pl
-Pliki nag³ówkowe xena.
+%description devel -l pl.UTF-8
+Pliki nagłówkowe Xena.
 
 %package static
-Summary:       Static xen libraries
-Summary(pl):   Statyczne biblioteki xena
+Summary:       Static Xen libraries
+Summary(pl.UTF-8):     Statyczne biblioteki Xena
 Group:         Development/Libraries
-Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
+Requires:      %{name}-devel = %{version}-%{release}
 
 %description static
-Static xen libraries.
+Static Xen libraries.
+
+%description static -l pl.UTF-8
+Statyczne biblioteki Xena.
+
+%package xend
+Summary:       xend daemon
+Summary(pl.UTF-8):     Demon xend
+Group:         Daemons
+Requires(post,preun,postun):   systemd-units >= 38
+Requires:      systemd-units >= 38
+
+%description xend
+xend daemon.
+
+%description xend -l pl.UTF-8
+Demon xend.
+
+%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 -n ocaml-xen
+OCaml bindings for Xen.
 
-%description static -l pl
-Statyczne biblioteki xena.
+%description -n ocaml-xen -l pl.UTF-8
+Wiązania OCamla dla Xena.
+
+%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 -n ocaml-xen-devel
+OCaml bindings for Xen - development files.
+
+%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
+Group:         Libraries
+Requires:      %{name}-libs = %{version}-%{release}
+Conflicts:     xen < 3.2.1-0.3
+
+%description -n python-xen
+Xen Python modules.
+
+%description -n python-xen -l pl.UTF-8
+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).
 
 %prep
-%setup -q
+%setup -q -a 16
 %patch0 -p1
 %patch1 -p1
-
-chmod -R u+w .
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+
+# stubdom sources
+ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom
+ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
+
+# 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} xen tools docs \
-       %{?with_pae:XEN_TARGET_X86_PAE=y} \
+export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
+export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
+
+# NOTE:
+# - there is a quoting bug (in tools/driver/Makefile) that causes
+#   openssl is used instead of gcrypt; that's OK, openssl is obligatory
+#   anyway (see configure), gcrypt is optional
+# - prevent libiconv from being detected (not needed with glibc)
+cd tools
+%configure \
+       CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses" \
+       ac_cv_lib_iconv_libiconv_open=no \
+       --disable-debug
+cd ..
+
+%{__make} dist-xen dist-tools dist-docs \
+       %{!?with_ocaml:OCAML_TOOLS=n} \
+       prefix=%{_prefix} \
+       CC="%{__cc}" \
+       CXX="%{__cxx}" \
+       V=1
+
+unset CFLAGS
+unset CXXFLAGS
+
+%{__make} -j1 dist-stubdom \
+       %{!?with_ocaml:OCAML_TOOLS=n} \
        CC="%{__cc}" \
        CXX="%{__cxx}"
 
 %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{/usr/lib/tmpfiles.d,%{systemdunitdir},/var/log/xen/console}
 
-%{__make} install-xen install-tools install-docs \
-       %{?with_pae:XEN_TARGET_X86_PAE=y} \
+%{__make} -j1 install-xen install-tools install-stubdom install-docs \
+       %{!?with_ocaml:OCAML_TOOLS=n} \
+       prefix=%{_prefix} \
        DESTDIR=$RPM_BUILD_ROOT \
-       XEN_PYTHON_NATIVE_INSTALL=1
-
-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
-
-install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/xend-db/{domain,vnet}
-
-rm -f $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
-
-%{py_comp} $RPM_BUILD_ROOT%{py_sitedir}
-%{py_ocomp} $RPM_BUILD_ROOT%{py_sitedir}
-%{py_comp} $RPM_BUILD_ROOT%{py_sitescriptdir}
-%{py_ocomp} $RPM_BUILD_ROOT%{py_sitescriptdir}
+       HOTPLUGS=install-udev
 
+%if "%{_lib}" == "lib64"
+ln -s %{_prefix}/lib/%{name}/bin/qemu-dm $RPM_BUILD_ROOT%{_libdir}/%{name}/bin/qemu-dm
+%endif
 
-find $RPM_BUILD_ROOT%{py_sitedir} -name '*.py' -exec rm "{}" ";"
-find $RPM_BUILD_ROOT%{py_sitescriptdir} -name '*.py' -exec rm "{}" ";"
-rm -rf $RPM_BUILD_ROOT/usr/share/doc/xen
-rm -rf $RPM_BUILD_ROOT/etc/init.d
+install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
+install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
+install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service
+install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl
+install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
+install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled
+install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
+install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored
+install %{SOURCE38} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xenstored.conf
+install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service
+install %{SOURCE40} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xend.conf
+install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
+install %{SOURCE42} $RPM_BUILD_ROOT/etc/modules-load.d/xen-dom0.conf
+# sysvinit scripts
+%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
+install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
+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 %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
+
+mv $RPM_BUILD_ROOT/etc/xen/{x{m,l}example*,examples}
+
+# for %%doc
+install -d _doc
+for tool in blktap blktap2 pygrub xenmon ; do
+       cp -p tools/$tool/README _doc/README.$tool
+done
+cp -al tools/qemu-xen/docs _doc/qemu-xen
+
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
+
+%py_postclean
+
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/qemu.1
+mv $RPM_BUILD_ROOT%{_mandir}/man1/qemu-img{,-xen}.1
+mv $RPM_BUILD_ROOT%{_mandir}/man8/qemu-nbd{,-xen}.8
+# seems not needed, the path is wrong anyway
+%{__rm} $RPM_BUILD_ROOT%{_prefix}/etc/qemu/target-x86_64.conf
+
+# remove unneeded files
+%{__rm} $RPM_BUILD_ROOT/boot/xen-4.2.gz
+%{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/qemu
+%{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
-/sbin/ldconfig
-/sbin/chkconfig --add xend
+/sbin/chkconfig --add xen-watchdog
+/sbin/chkconfig --add xenconsoled
+/sbin/chkconfig --add xenstored
 /sbin/chkconfig --add xendomains
-
-%postun -p /sbin/ldconfig
+%systemd_post xen-watchdog.service xenconsoled.service xenstored.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
 fi
+%systemd_preun xen-watchdog.service xenconsoled.service xenstored.service
+
+%postun
+%systemd_reload
+
+%post xend
+/sbin/chkconfig --add xend
+%systemd_post xend.service
+
+%preun xend
+if [ "$1" = "0" ]; then
+       %service xend stop
+       /sbin/chkconfig --del xend
+fi
+%systemd_preun xend.service
+
+%postun xend
+%systemd_reload
+
+%post  libs -p /sbin/ldconfig
+%postun        libs -p /sbin/ldconfig
+
+%post  libs-guest -p /sbin/ldconfig
+%postun        libs-guest -p /sbin/ldconfig
 
 %files
 %defattr(644,root,root,755)
-%doc COPYING ChangeLog README docs/misc/*
+%doc COPYING README* docs/misc/* 
 %doc docs/html/*
+%doc tools/qemu-xen-dir/*.html
+%doc _doc/*
 /boot/%{name}-syms-%{version}
 /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/*
-%config(noreplace) %verify(not md5 mtime size) /etc/udev/*
+%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/sysconfig/xencommons
+%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
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/xen-dom0.conf
+%{systemdunitdir}/proc-xen.mount
+%{systemdunitdir}/var-lib-xenstored.mount
+%{systemdunitdir}/xen-watchdog.service
+%{systemdunitdir}/xenconsoled.service
+%{systemdunitdir}/xenstored.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}/*
-%attr(755,root,root) %{_libdir}/lib*.so.*
+%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
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xen-backend.rules
+%attr(755,root,root) %{_bindir}/pygrub
+%attr(755,root,root) %{_bindir}/qemu-img-xen
+%attr(755,root,root) %{_bindir}/qemu-nbd-xen
+%attr(755,root,root) %{_bindir}/remus
+%attr(755,root,root) %{_bindir}/xencons
+%attr(755,root,root) %{_bindir}/xentrace*
+%attr(755,root,root) %{_sbindir}/blktapctrl
+%attr(755,root,root) %{_sbindir}/flask-*
+%attr(755,root,root) %{_sbindir}/gdbsx
+%attr(755,root,root) %{_sbindir}/gtrace*
+%attr(755,root,root) %{_sbindir}/img2qcow
+%attr(755,root,root) %{_sbindir}/kdd
+%attr(755,root,root) %{_sbindir}/lock-util
+%attr(755,root,root) %{_sbindir}/qcow-create
+%attr(755,root,root) %{_sbindir}/qcow2raw
+%attr(755,root,root) %{_sbindir}/tap-ctl
+%attr(755,root,root) %{_sbindir}/tapdisk*
+%attr(755,root,root) %{_sbindir}/td-util
+%attr(755,root,root) %{_sbindir}/vhd-*
+%attr(755,root,root) %{_sbindir}/xen-*
+%attr(755,root,root) %{_sbindir}/xenbaked
+%attr(755,root,root) %{_sbindir}/xenconsoled
+%attr(755,root,root) %{_sbindir}/xenlockprof
+%attr(755,root,root) %{_sbindir}/xenmon.py
+%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_setmask
+%attr(755,root,root) %{_sbindir}/xenwatchdogd
+%attr(755,root,root) %{_sbindir}/xl
+%attr(755,root,root) %{_sbindir}/xsview
 %dir %{_libdir}/%{name}
 %dir %{_libdir}/%{name}/bin
 %attr(744,root,root) %{_libdir}/%{name}/bin/*
+%if "%{_lib}" != "lib"
+%dir %{_prefix}/lib/%{name}
+%dir %{_prefix}/lib/%{name}/bin
+%attr(755,root,root) %{_prefix}/lib/%{name}/bin/qemu-dm
+%attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdom-dm
+%attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdompath.sh
+%endif
+%dir %{_prefix}/lib/%{name}/boot
+%{_prefix}/lib/%{name}/boot/ioemu-stubdom.gz
+%{_prefix}/lib/%{name}/boot/pv-grub-x86_32.gz
+%ifarch %{x8664}
+%{_prefix}/lib/%{name}/boot/pv-grub-x86_64.gz
+%endif
+%{_prefix}/lib/%{name}/boot/xenstore-stubdom.gz
+%attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader
 %{_datadir}/xen
-%dir %{py_sitedir}/%{name}
-%dir %{py_sitedir}/%{name}/lowlevel
-%{py_sitedir}/%{name}/lowlevel/*.py*
-%attr(755,root,root) %{py_sitedir}/%{name}/lowlevel/*.so
-%{py_sitedir}/%{name}/sv
-%{py_sitedir}/%{name}/util
-%{py_sitedir}/%{name}/web
-%{py_sitedir}/%{name}/xend
-%{py_sitedir}/%{name}/xm
-%{py_sitedir}/%{name}/*.py*
-%{py_sitescriptdir}/*
-%{_mandir}/man?/*
+%{_mandir}/man1/qemu-img-xen.1*
+%{_mandir}/man1/xentop.1*
+%{_mandir}/man1/xentrace_format.1*
+%{_mandir}/man1/xl.1*
+%{_mandir}/man1/xm.1*
+%{_mandir}/man5/xend-config.sxp.5*
+%{_mandir}/man5/xl.cfg.5*
+%{_mandir}/man5/xl.conf.5*
+%{_mandir}/man5/xlcpupool.cfg.5*
+%{_mandir}/man5/xmdomain.cfg.5*
+%{_mandir}/man8/qemu-nbd-xen.8*
+%{_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}/xenstored.conf
+%dir %attr(0700,root,root) /var/log/xen
+%dir %attr(0700,root,root) /var/log/xen/console
+%{_datadir}/qemu-xen
+
+%files guest
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/xen-detect
+%attr(755,root,root) %{_bindir}/xenstore*
+
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libblktap.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libblktap.so.3.0
+%attr(755,root,root) %{_libdir}/libblktapctl.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libblktapctl.so.1.0
+%attr(755,root,root) %{_libdir}/libfsimage.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfsimage.so.1.0
+%attr(755,root,root) %{_libdir}/libvhd.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libvhd.so.1.0
+%attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.2
+%attr(755,root,root) %{_libdir}/libxenguest.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.2
+%attr(755,root,root) %{_libdir}/libxenlight.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenlight.so.2.0
+%attr(755,root,root) %{_libdir}/libxenstat.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenstat.so.0
+%attr(755,root,root) %{_libdir}/libxenvchan.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenvchan.so.1.0
+%attr(755,root,root) %{_libdir}/libxlutil.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxlutil.so.1.0
+%dir %{_libdir}/fs
+%dir %{_libdir}/fs/ext2fs-lib
+%dir %{_libdir}/fs/fat
+%dir %{_libdir}/fs/iso9660
+%dir %{_libdir}/fs/reiserfs
+%dir %{_libdir}/fs/ufs
+%dir %{_libdir}/fs/xfs
+%dir %{_libdir}/fs/zfs
+%attr(755,root,root) %{_libdir}/fs/*/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}/libblktap.so
+%attr(755,root,root) %{_libdir}/libblktapctl.so
+%attr(755,root,root) %{_libdir}/libfsimage.so
+%attr(755,root,root) %{_libdir}/libvhd.so
+%attr(755,root,root) %{_libdir}/libxenctrl.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}/libxenvchan.so
+%attr(755,root,root) %{_libdir}/libxlutil.so
+%{_includedir}/_libxl_list.h
+%{_includedir}/_libxl_types.h
+%{_includedir}/_libxl_types_json.h
+%{_includedir}/blktaplib.h
+%{_includedir}/fsimage*.h
+%{_includedir}/libxenvchan.h
+%{_includedir}/libxl*.h
+%{_includedir}/xen*.h
+%{_includedir}/xs*.h
+%{_includedir}/xen
+%{_includedir}/xenstore-compat
 
 %files static
 %defattr(644,root,root,755)
-%{_libdir}/lib*.a
+%{_libdir}/libblktap.a
+%{_libdir}/libblktapctl.a
+%{_libdir}/libvhd.a
+%{_libdir}/libxenctrl.a
+%{_libdir}/libxenguest.a
+%{_libdir}/libxenlight.a
+%{_libdir}/libxenvchan.a
+%{_libdir}/libxenstat.a
+%{_libdir}/libxenstore.a
+%{_libdir}/libxlutil.a
+
+%files xend
+%defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/blktapctrl
+%{systemdunitdir}/blktapctrl.service
+%{systemdunitdir}/xend.service
+%attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xend.rules
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend*
+%attr(755,root,root) %{_sbindir}/xend
+%attr(755,root,root) %{_sbindir}/xm
+%dir %attr(700,root,root) /var/run/xend
+%{systemdtmpfilesdir}/xend.conf
+
+%if %{with ocaml}
+%files -n ocaml-xen
+%defattr(644,root,root,755)
+%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/site-lib/xenbus
+%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenbus/dllxenbus_stubs.so
+%dir %{_libdir}/ocaml/site-lib/xenctrl
+%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenctrl/dllxenctrl_stubs.so
+%dir %{_libdir}/ocaml/site-lib/xeneventchn
+%attr(755,root,root) %{_libdir}/ocaml/site-lib/xeneventchn/dllxeneventchn_stubs.so
+%dir %{_libdir}/ocaml/site-lib/xenlight
+%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenlight/dllxenlight_stubs.so
+%dir %{_libdir}/ocaml/site-lib/xenmmap
+%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenmmap/dllxenmmap_stubs.so
+
+%files -n ocaml-xen-devel
+%defattr(644,root,root,755)
+%{_libdir}/ocaml/site-lib/xenbus/META
+%{_libdir}/ocaml/site-lib/xenbus/libxenbus_stubs.a
+%{_libdir}/ocaml/site-lib/xenbus/xenbus.a
+%{_libdir}/ocaml/site-lib/xenbus/*.cm[aixo]*
+%{_libdir}/ocaml/site-lib/xenctrl/META
+%{_libdir}/ocaml/site-lib/xenctrl/libxenctrl_stubs.a
+%{_libdir}/ocaml/site-lib/xenctrl/xenctrl.a
+%{_libdir}/ocaml/site-lib/xenctrl/xenctrl.cm[aix]*
+%{_libdir}/ocaml/site-lib/xeneventchn/META
+%{_libdir}/ocaml/site-lib/xeneventchn/libxeneventchn_stubs.a
+%{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.a
+%{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.cm[aix]*
+%{_libdir}/ocaml/site-lib/xenmmap/META
+%{_libdir}/ocaml/site-lib/xenmmap/libxenmmap_stubs.a
+%{_libdir}/ocaml/site-lib/xenmmap/xenmmap.a
+%{_libdir}/ocaml/site-lib/xenmmap/xenmmap.cm[aix]*
+%{_libdir}/ocaml/site-lib/xenlight/META
+%{_libdir}/ocaml/site-lib/xenlight/libxenlight_stubs.a
+%{_libdir}/ocaml/site-lib/xenlight/xenlight.a
+%{_libdir}/ocaml/site-lib/xenlight/xenlight.cm[aix]*
+%dir %{_libdir}/ocaml/site-lib/xenstore
+%{_libdir}/ocaml/site-lib/xenstore/META
+%{_libdir}/ocaml/site-lib/xenstore/xenstore.a
+%{_libdir}/ocaml/site-lib/xenstore/*.cm[aixo]*
+%endif
+
+%files -n python-xen
+%defattr(644,root,root,755)
+%attr(755,root,root) %{py_sitedir}/fsimage.so
+%{py_sitedir}/grub
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/checkpoint.so
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/flask.so
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/netlink.so
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/ptsname.so
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/xc.so
+%{py_sitedir}/xen/remus
+%{py_sitedir}/xen/sv
+%{py_sitedir}/xen/util
+%{py_sitedir}/xen/web
+%{py_sitedir}/xen/xend
+%{py_sitedir}/xen/xm
+%{py_sitedir}/xen/xsview
+%if "%{py_ver}" > "2.4"
+%{py_sitedir}/pygrub-0.3-py*.egg-info
+%{py_sitedir}/xen-3.0-py*.egg-info
+%endif
+
+%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/__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
This page took 0.058431 seconds and 4 git commands to generate.