%if 0%{?fedora} > 12 || 0%{?rhel} > 6 %global with_python3 1 %endif %if 0%{?rhel} == 5 %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())")} %endif %global srcname messaging Name: python-messaging Version: 0.7 Release: 1%{?dist} Summary: Python abstraction of a "message" Group: Development/Libraries License: ASL 2.0 URL: http://mpaladin.web.cern.ch/mpaladin/python/%{srcname}/ Source0: http://pypi.python.org/packages/source/m/%{srcname}/%{srcname}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch BuildRequires: python2-devel %if 0%{?with_python3} BuildRequires: python3-devel %endif # if with_python3 # For python < 2.6 python-siplejson is required %if 0%{?fedora} < 11 || 0%{?rhel} <= 6 BuildRequires: python-simplejson Requires: python-simplejson %endif %description This module provides an abstraction of a "message", as used in Enterprise Messaging Systems. The modules include a transport independent message abstraction, a versatile message generator and several message queues/spools to locally store messages. The python module messaging is compatible with the Perl module Messaging::Message. %if 0%{?with_python3} %package -n python3-messaging Summary: Python abstraction of a "message" Group: Development/Libraries %description -n python3-messaging This module provides an abstraction of a "message", as used in Enterprise Messaging Systems. The modules include a transport independent message abstraction, a versatile message generator and several message queues/spools to locally store messages. The python module messaging is compatible with the Perl module Messaging::Message. %endif # with_python3 %prep %setup -q -n %{srcname}-%{version} %if 0%{?with_python3} rm -rf %{py3dir} cp -a . %{py3dir} find %{py3dir} -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python3}|' %endif # with_python3 find -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python}|' %build %{__python} setup.py build %if 0%{?with_python3} pushd %{py3dir} %{__python3} setup.py build popd %endif # with_python3 %install rm -rf $RPM_BUILD_ROOT %if 0%{?with_python3} pushd %{py3dir} %{__python3} setup.py install --skip-build --root $RPM_BUILD_ROOT popd %endif # with_python3 %{__python} setup.py install --skip-build --root $RPM_BUILD_ROOT %check %{__python} setup.py test # And remove compiled documentation. rm -f test/*.pyc %if 0%{?with_python3} pushd %{py3dir} %{__python3} setup.py test rm -f test/*.pyc popd %endif # with_python3 %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc LICENSE README.rst CHANGES example test %{python_sitelib}/%{srcname}/ %if 0%{?rhel} != 5 %{python_sitelib}/%{srcname}-%{version}-py?.?.egg-info %endif %if 0%{?with_python3} %files -n python3-messaging %doc LICENSE README.rst CHANGES example test %{python3_sitelib}/%{srcname}/ %{python3_sitelib}/%{srcname}-%{version}-py?.?.egg-info %endif # with_python3 %changelog * Mon Apr 23 2012 Massimo Paladin - 0.7-1 - Upgrading to latest version 0.7. * Tue Apr 17 2012 Massimo Paladin - 0.6-1 - Upgrading to latest version 0.6. * Mon Feb 20 2012 Massimo Paladin - 0.5-2 - Making it compliant with guidelines. * Mon Jan 23 2012 Massimo Paladin - 0.5-1 - Initial packaging.