X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=util-vserver.spec.in;h=be2b2429995363c405b067026be4486d9d91a3d8;hb=ce5570abb9cf48a994e99f4a87eeb5c3d0140369;hp=530793f44ff7e949a06fc9bed76ad184ded87737;hpb=83b362fd0a8ffc83e98c6805881aee613dd0986b;p=util-vserver.git diff --git a/util-vserver.spec.in b/util-vserver.spec.in index 530793f..be2b242 100644 --- a/util-vserver.spec.in +++ b/util-vserver.spec.in @@ -22,6 +22,8 @@ %define version @VERSION@ %{!?release_func:%global release_func() 1%{?pldistro:.%{pldistro}}%{?date:.%{date}}} +%global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" ) + %define _without_dietlibc 1 %define _without_xalan 1 @@ -71,7 +73,7 @@ Requires: util-linux %package build Summary: Tools which can be used to build vservers Group: Applications/System -Requires: rpm wget binutils tar e2fsprogs +Requires: rpm wget tar Requires: %name = %version-%release Requires(pre): %confdir Requires(postun): %confdir @@ -107,7 +109,7 @@ Requires: %name-lib = %version-%release %package python Summary: Python modules for manipulating vservers Group: Applications/System -Requires: python util-python +Requires: python Obsoletes: util-vserver-py23 resman @@ -206,24 +208,26 @@ automake --add-missing %__make %{?_smp_mflags} all %{!?_without_doc:%__make %{?_smp_mflags} doc} -%__make -C python - %install rm -rf $RPM_BUILD_ROOT %__make DESTDIR="$RPM_BUILD_ROOT" install install-distribution -rm -f $RPM_BUILD_ROOT/%_libdir/*.la +rm -f $RPM_BUILD_ROOT/%_libdir/*.la $RPM_BUILD_ROOT%{python_sitearch}/*.{la,a} MANIFEST_CONFIG='%config' \ MANIFEST_CONFIG_NOREPLACE='%config(noreplace)' \ contrib/make-manifest %name $RPM_BUILD_ROOT contrib/manifest.dat -# install python bindings -%__make -C python DESTDIR="$PWD/tmp" install -install -d $RPM_BUILD_ROOT/%{_datadir}/%{name} -install tmp%{_libdir}/python*/site-packages/*.{py,so} $RPM_BUILD_ROOT/%{_datadir}/%{name}/ -install -D -m 755 python/bwlimit $RPM_BUILD_ROOT/%{_sbindir}/bwlimit -install -D -m 755 python/disklimit $RPM_BUILD_ROOT/%{_sbindir}/disklimit +# Generate file list for python package +find "%{buildroot}" -name '*.py' | { while read FILE; do + f="${FILE#%{buildroot}}" + echo "${f}" + # need to touch these files, as they are not produced on FC4 or below + touch ${FILE}c + touch ${FILE}o + echo %%ghost "${f}c" + echo %%ghost "${f}o" +done } > %name-python.list %check || : @@ -273,6 +277,8 @@ fi %chkconfig --del util-vserver # PlanetLab does not require /proc security %chkconfig --del vprocunhide +# vip6-autod handles IPv6 auto-assignments +%chkconfig --add vip6-autod %preun sysv @@ -281,6 +287,7 @@ fi #test "$1" != 0 || %chkconfig --del vprocunhide #test "$1" != 0 || %chkconfig --del vservers-default #test "$1" != 0 || %chkconfig --del util-vserver +test "$1" != 0 || %chkconfig --del vip6-autod %postun sysv @@ -406,75 +413,19 @@ done %{!?_without_doc:%doc lib/apidoc/html} -%post python -pushd %{_datadir}/%{name} >/dev/null - -# Byte compile and install modules -py_modules= -for file in *.py ; do - if [ -n "$py_modules" ] ; then - py_modules="$py_modules," - fi - py_modules="$py_modules '${file%*.py}'" -done -%define setup %{__python} -c "from distutils.core import setup; setup(py_modules=[$py_modules])" -%{setup} build -%{setup} install - -# Install the prebuilt extensions by hand -python_sitelib=$(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()") -install -m 755 *.so "$python_sitelib"/ - -popd - - -%triggerpostun python -- util-vserver-python, util-vserver-py23 -# RPMs get upgraded by installing the new one, then uninstalling the -# old one. Since we no longer own the byte-compiled modules, they may -# be removed right after we create them in %post if we are upgraded -# from a version that did own them at one point. This section should -# be removed once all packages have been upgraded to at least this -# version. -pushd %{_datadir}/%{name} >/dev/null - -# Byte compile and install modules -py_modules= -for file in *.py ; do - if [ -n "$py_modules" ] ; then - py_modules="$py_modules," - fi - py_modules="$py_modules '${file%*.py}'" -done -%define setup %{__python} -c "from distutils.core import setup; setup(py_modules=[$py_modules])" -%{setup} build -%{setup} install - -# Install the prebuilt extensions by hand -python_sitelib=$(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()") -install -m 755 *.so "$python_sitelib"/ - -popd - - -%preun python -# 0 = erase, 1 = upgrade -if [ $1 -eq 0 ] ; then - python_sitelib=$(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()") - pushd %{_datadir}/%{name} >/dev/null - for file in *.py *.so ; do - rm -f "$python_sitelib"/${file}* - done - popd -fi - - -%files python -%{_datadir}/%{name} +%files python -f %name-python.list %{_sbindir}/bwlimit %{_sbindir}/disklimit +%{python_sitearch}/vserverimpl.so %changelog +* Wed Oct 03 2007 Daniel Hokka Zakrisson +- build python code as part of the regular build process + +* Mon Jul 30 2007 Daniel Hokka Zakrisson +- add vip6-autod + * Fri Dec 29 2006 Daniel Hokka Zakrisson - 0.30.213-0 - add --with legacy and --without doc switches - add util-vserver initscript