]> git.pld-linux.org Git - packages/xen.git/blobdiff - xen.spec
- subpackage for hypervisor
[packages/xen.git] / xen.spec
index c749d34f30e6e35ae201b847785e82343c310beb..81cbd8dc3eeb3962a6219640056bba6d57c53d8d 100644 (file)
--- a/xen.spec
+++ b/xen.spec
@@ -4,28 +4,47 @@
 #
 # Conditional build:
 %bcond_without pae             # build without PAE (HIGHMEM64G) support (PLD Xen* kernels require PAE)
-#
+%bcond_without hvm             # build with hvm (full virtualization) support
+
+%ifnarch %{ix86}
+%undefine      with_pae
+%endif
+%ifarch i386 i486 i586
+%undefine      with_pae
+%endif
+
+%define                hv_abi           3.0
+%define                subver          _1
+%define                extraver        -1
 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
+Version:       %{hv_abi}.4
+Release:       0.1
 License:       GPL
 Group:         Applications/System
-Source0:       http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/%{name}-%{version}-src.tgz
-# Source0-md5: 544eab940a0734a55459d648e5c3b224
+Source0:       http://bits.xensource.com/oss-xen/release/%{version}%{subver}/src.tgz/%{name}-%{version}%{subver}-src.tgz
+# Source0-md5: e85e16ad3dc354338e3ac4a8951f9649
 Source1:       %{name}-xend.init
 Source2:       %{name}-xendomains.init
 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
+Patch2:                %{name}-bridge_setup.patch
+Patch3:                %{name}-python-devel.patch
+Patch4:                %{name}-gcc4.patch
+URL:           http://www.cl.cam.ac.uk/research/srg/netos/xen/index.html
+BuildRequires: SDL-devel
+#BuildRequires:        XFree86-devel
+%{?with_hvm:BuildRequires:  bcc}
+BuildRequires: cpp
 BuildRequires: curl-devel
+BuildRequires: e2fsprogs-devel
 BuildRequires: latex2html
 BuildRequires: libidn-devel
+BuildRequires: libvncserver-devel
 BuildRequires: ncurses-devel
-BuildRequires: python-Twisted
+BuildRequires: progsreiserfs-devel
+BuildRequires: python-TwistedWeb
 BuildRequires: python-devel
 BuildRequires: rpm-pythonprov
 BuildRequires: rpmbuild(macros) >= 1.268
@@ -36,22 +55,25 @@ BuildRequires:      transfig
 BuildRequires: which
 BuildRequires: zlib-devel
 Requires(post,preun):  /sbin/chkconfig
+Requires:      %{name}-libs = %{version}-%{release}
 Requires:      ZopeInterface
 Requires:      bridge-utils
+Requires:      coreutils
+Requires:      diffutils
+Requires:      iptables
+Requires:      kernel(xen0) = %{version}
 Requires:      losetup
+Requires:      net-tools
+Requires:      python-%{name} = %{version}-%{release}
 Requires:      python-TwistedWeb
 Requires:      rc-scripts
-Requires:      kernel(xen) = %{version}
+Requires:      sed
+Requires:      util-linux
+Requires:      which
 Obsoletes:     xen-doc
-ExclusiveArch: %{ix86}
+ExclusiveArch: %{ix86} %{x8664}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%ifnarch i686 athlon pentium3 pentium4
-%define                with_pae        0 
-%endif
-
-
-
 %description
 This package contains the Xen hypervisor and Xen tools, needed to run
 virtual machines on x86 systems, together with the kernel-xen*
@@ -65,55 +87,110 @@ 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 libs
+Summary:       xen libraries
+Summary(pl.UTF-8):     Biblioteki xena
+Group:         Libraries
+
+%description libs
+xen libraries.
+
+%description libs -l pl.UTF-8
+Biblioteki xena.
 
 %package devel
 Summary:       Header files for xen
-Summary(pl):   Pliki nag³ówkowe xena
+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.
 
-%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(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.
 
-%description static -l pl
+%description static -l pl.UTF-8
 Statyczne biblioteki xena.
 
+%package hypervisor
+Summary:       Libraries for Xen tools
+Group:         Base/Kernel
+Provides:      xen-hypervisor-abi = %{hv_abi}
+
+%description hypervisor
+This package contains the Xen hypervisor
+
+%package hotplug
+Summary:       xen hotplug scripts
+Summary(pl.UTF-8):     Skrypty hotplug dla xena
+Group:         Applications/System
+
+%description hotplug
+xen hotplug scripts.
+
+%description hotplug -l pl.UTF-8
+Skrypty hotplug dla xena.
+
+%package udev
+Summary:       xen udev scripts
+Summary(pl.UTF-8):     Skrypty udev dla xena
+Group:         Applications/System
+
+%description udev
+xen udev scripts.
+
+%description udev -l pl.UTF-8
+Skrypty udev dla xena.
+
+%package -n python-xen
+Summary:       xen Python modules
+Summary(pl.UTF-8):     Moduły Pythona dla xena
+Group:         Libraries
+Conflicts:     xen < 3.0.2-2.1
+
+%description -n python-xen
+xen Python modules.
+
+%description -n python-xen -l pl.UTF-8
+Moduły Pythona dla xena.
+
 %prep
-%setup -q
+%setup -q -n %{name}-%{version}%{?subver}-src
 %patch0 -p1
 %patch1 -p1
-
-chmod -R u+w .
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
 
 %build
 CFLAGS="%{rpmcflags} -I/usr/include/ncurses" \
 CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses" \
 %{__make} xen tools docs \
        %{?with_pae:XEN_TARGET_X86_PAE=y} \
+       XENFB_TOOLS=y \
        CC="%{__cc}" \
        CXX="%{__cxx}"
 
@@ -131,30 +208,30 @@ 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}
+install -d $RPM_BUILD_ROOT%{_sharedstatedir}/xen/save
 
-rm -f $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
+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_comp} $RPM_BUILD_ROOT%{py_sitescriptdir}
-%{py_ocomp} $RPM_BUILD_ROOT%{py_sitescriptdir}
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
 
+%py_postclean
 
-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
+rm -f $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
+rm -rf $RPM_BUILD_ROOT%{_docdir}/xen
+rm -rf $RPM_BUILD_ROOT/''etc/init.d
+rm -f $RPM_BUILD_ROOT/boot/xen-3.0.gz
+rm -f $RPM_BUILD_ROOT/boot/xen-3.gz
+rm -rf $RPM_BUILD_ROOT%{_docdir}/qemu
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
-/sbin/ldconfig
 /sbin/chkconfig --add xend
 /sbin/chkconfig --add xendomains
 
-%postun -p /sbin/ldconfig
-
 %preun
 if [ "$1" = "0" ]; then
        %service xend stop
@@ -164,16 +241,15 @@ if [ "$1" = "0" ]; then
        /sbin/chkconfig --del xendomains
 fi
 
+%post  libs -p /sbin/ldconfig
+%postun        libs -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
-%doc COPYING ChangeLog README docs/misc/*
+%doc COPYING README docs/misc/*
 %doc docs/html/*
-/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/*
 %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/*.*
@@ -184,22 +260,15 @@ fi
 %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.*
 %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
-%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?/*
 %{_sharedstatedir}/xen
 %{_sharedstatedir}/xenstored
@@ -207,6 +276,27 @@ fi
 %dir %attr(700,root,root) /var/run/xend
 %dir /var/run/xenstored
 
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %ghost %{_libdir}/libblktap.so.3.0
+%attr(755,root,root) %{_libdir}/libblktap.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfsimage.so.1.0
+%attr(755,root,root) %{_libdir}/libfsimage.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.3.0
+%attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenguest.so.3.0
+%attr(755,root,root) %{_libdir}/libxenguest.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxenstore.so.3.0
+%attr(755,root,root) %{_libdir}/libxenstore.so.*.*.*
+
+# subpackages? python part apparently uses these
+%dir %{_libdir}/fs/ext2fs-lib
+%dir %{_libdir}/fs/reiserfs
+%dir %{_libdir}/fs/ufs
+%attr(755,root,root) %{_libdir}/fs/ext2fs-lib/fsimage.so
+%attr(755,root,root) %{_libdir}/fs/reiserfs/fsimage.so
+%attr(755,root,root) %{_libdir}/fs/ufs/fsimage.so
+
 %files devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/lib*.so
@@ -215,3 +305,34 @@ fi
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/lib*.a
+
+%files hypervisor
+%defattr(644,root,root,755)
+/boot/%{name}-syms-%{version}%{extraver}
+/boot/%{name}-%{version}%{extraver}.gz
+/boot/%{name}.gz
+
+%files hotplug
+%defattr(644,root,root,755)
+%attr(755,root,root) /etc/hotplug/*
+
+%files udev
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/*
+
+%files -n python-xen
+%defattr(644,root,root,755)
+
+%dir %{py_sitedir}/grub
+%{py_sitedir}/grub/*.py[co]
+%dir %{py_sitedir}/xen
+%dir %{py_sitedir}/xen/lowlevel
+%{py_sitedir}/xen/lowlevel/*.py[co]
+%attr(755,root,root) %{py_sitedir}/xen/lowlevel/*.so
+%attr(755,root,root) %{py_sitedir}/fsimage.so
+%{py_sitedir}/xen/sv
+%{py_sitedir}/xen/util
+%{py_sitedir}/xen/web
+%{py_sitedir}/xen/xend
+%{py_sitedir}/xen/xm
+%{py_sitedir}/xen/*.py[co]
This page took 0.109883 seconds and 4 git commands to generate.