#
# NOTE:
-# - this is userspace for xen-3.2.0 (provided by kernel-xen.spec)
+# - 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
#
# Conditional build:
%bcond_with pae # build with PAE (HIGHMEM64G) support
%bcond_with hvm # build with hvm (full virtualization) support
#
-%define major 3.2
-%define minor 1
+%define major 3.4
+%define minor 3
Summary: Xen - a virtual machine monitor
Summary(pl.UTF-8): Xen - monitor maszyny wirtualnej
Name: xen
Version: %{major}.%{minor}
-Release: 0.3
+Release: 0.2
License: GPL
Group: Applications/System
Source0: http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: f8d001eb9e08525c451d38deb93908b1
Source1: %{name}-xend.init
Source2: %{name}-xendomains.init
Patch0: %{name}-python_scripts.patch
Patch1: %{name}-gcc.patch
+Patch2: %{name}-symbols.patch
+Patch3: %{name}-curses.patch
+Patch4: %{name}-python27.patch
URL: http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html
+BuildRequires: SDL-devel
%{?with_hvm:BuildRequires: bcc}
BuildRequires: curl-devel
BuildRequires: e2fsprogs-devel
BuildRequires: gcc >= 5:3.4
+BuildRequires: gettext-devel
BuildRequires: latex2html
BuildRequires: libidn-devel
BuildRequires: ncurses-devel
+BuildRequires: pciutils-devel
+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: texlive-dvips
+#BuildRequires: texlive-latex-data
+BuildRequires: texlive-latex-psnfss
BuildRequires: transfig
BuildRequires: which
BuildRequires: zlib-devel
Requires: diffutils
Requires: gawk
Requires: iptables
-Requires: kernel(xen0) = %{major}
+Requires: kernel(xen0)
Requires: losetup
Requires: net-tools
Requires: python-%{name} = %{version}-%{release}
ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# some PPC/SPARC boot image in ELF format
+%define _noautostrip .*%{_datadir}/xen/qemu/openbios-.*
+
%ifnarch i686 athlon pentium3 pentium4
%undefine with_pae
%endif
%package hotplug
Summary: xen hotplug scripts
Summary(pl.UTF-8): Skrypty hotplug dla xena
-Group: Application/System
+Group: Applications/System
%description hotplug
xen hotplug scripts.
%package udev
Summary: xen udev scripts
Summary(pl.UTF-8): Skrypty udev dla xena
-Group: Application/System
+Group: Applications/System
%description udev
xen udev scripts.
Summary: xen Python modules
Summary(pl.UTF-8): Moduły Pythona dla xena
Group: Libraries
+Conflicts: xen < 3.2.1-0.3
%description -n python-xen
xen Python modules.
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -fv
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 -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
+install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/xend-db/{domain,vnet}
install -d $RPM_BUILD_ROOT%{_sharedstatedir}/xen/save
%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
-
-# conflict with qemu
-rm -f $RPM_BUILD_ROOT%{_mandir}/man1/qemu-img.1
-rm -f $RPM_BUILD_ROOT%{_mandir}/man1/qemu.1
+%{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
+%{__rm} -r $RPM_BUILD_ROOT/''etc/init.d
+%{__rm} $RPM_BUILD_ROOT/boot/xen-3.4.gz
+%{__rm} $RPM_BUILD_ROOT/boot/xen-3.gz
%clean
rm -rf $RPM_BUILD_ROOT
%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]
+%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/xmexample[123]
%dir %{_sysconfdir}/xen/auto
%dir %{_sysconfdir}/xen/scripts
%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/*
%dir %{_libdir}/fs/iso9660
%dir %{_libdir}/fs/reiserfs
%dir %{_libdir}/fs/ufs
+%dir %{_libdir}/fs/zfs
%attr(755,root,root) %{_libdir}/fs/*/*.so
%files devel
%defattr(644,root,root,755)
%{_libdir}/lib*.a
-%if %{without hvm}
%files hotplug
%defattr(644,root,root,755)
%attr(755,root,root) /etc/hotplug/*
-%endif
%files udev
%defattr(644,root,root,755)