%bcond_with pae # build with PAE (HIGHMEM64G) support
%bcond_with hvm # build with hvm (full virtualization) support
#
+%define major 3.2
+%define minor 1
Summary: Xen - a virtual machine monitor
Summary(pl.UTF-8): Xen - monitor maszyny wirtualnej
Name: xen
-Version: 3.2.0
-Release: 0.1
+Version: %{major}.%{minor}
+Release: 0.2
License: GPL
Group: Applications/System
Source0: http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 4aa57328d0802a063fa67dfc063da30e
Source1: %{name}-xend.init
Source2: %{name}-xendomains.init
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
BuildRequires: e2fsprogs-devel
+BuildRequires: gcc >= 5:3.4
BuildRequires: latex2html
BuildRequires: libidn-devel
BuildRequires: ncurses-devel
BuildRequires: transfig
BuildRequires: which
BuildRequires: zlib-devel
-%{?with_hvm:BuildRequires: bcc}
Requires(post,preun): /sbin/chkconfig
+Requires: %{name}-libs = %{version}-%{release}
Requires: ZopeInterface
Requires: bridge-utils
+Requires: coreutils
+Requires: diffutils
Requires: gawk
-Requires: kernel(xen0) = %{_major}
+Requires: iptables
+Requires: kernel(xen0) = %{major}
Requires: losetup
+Requires: net-tools
Requires: rc-scripts
+Requires: sed
+Requires: util-linux-ng
+Requires: which
Obsoletes: xen-doc
ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Summary: Header files for xen
Summary(pl.UTF-8): Pliki nagłówkowe xena
Group: Development/Libraries
-Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+Requires: %{name}-libs = %{version}-%{release}
%description devel
Header files for xen.
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.
%patch0 -p1
%patch1 -p1
-find . -iregex .*.orig -exec rm {} \;
-
-chmod -R u+w .
+find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -fv
%build
CFLAGS="%{rpmcflags} -I/usr/include/ncurses" \
install -d $RPM_BUILD_ROOT/var/run/{xen-hotplug,xend,xenstored}
%{__make} install-xen install-tools install-docs \
+ CC="%{__cc}" \
+ CXX="%{__cxx}" \
%{?with_pae:XEN_TARGET_X86_PAE=y} \
DESTDIR=$RPM_BUILD_ROOT \
XEN_PYTHON_NATIVE_INSTALL=1
install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/xend-db/{domain,vnet}
install -d $RPM_BUILD_ROOT%{_sharedstatedir}/xen/save
-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}
-
cp -a dist/install/etc/udev $RPM_BUILD_ROOT%{_sysconfdir}
+cp -a dist/install/etc/hotplug $RPM_BUILD_ROOT%{_sysconfdir}
+
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
+%py_postclean
# remove unneeded files
-#find $RPM_BUILD_ROOT%{py_sitedir} -name '*.py' -exec rm "{}" ";"
-#find $RPM_BUILD_ROOT%{py_sitescriptdir} -name '*.py' -exec rm "{}" ";"
+rm -f $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
rm -rf $RPM_BUILD_ROOT%{_docdir}/xen
-rm -rf $RPM_BUILD_ROOT/etc/init.d
+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
+
%clean
rm -rf $RPM_BUILD_ROOT
%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
%attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader
%{_datadir}/xen
%{py_sitedir}/fsimage.so
%{py_sitedir}/grub
-%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}/xsview
-%{py_sitedir}/%{name}/*.py*
+%dir %{py_sitedir}/xen
+%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_sitescriptdir}/*
+%endif
%{_mandir}/man?/*
%{_sharedstatedir}/xen
%{_sharedstatedir}/xenstored
%dir %{_libdir}/fs/ufs
%attr(755,root,root) %{_libdir}/fs/*/*.so
-%if ! %{with hvm}
+%if %{without hvm}
%files hotplug
%defattr(644,root,root,755)
%attr(755,root,root) /etc/hotplug/*