%if 0%{?fedora} > 12 || 0%{?rhel} > 6
%global with_python3 1
%else
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())")}
%endif
%global snapdate 20111110
%global snaphash 57ef11c
%global snapver %{snapdate}.git%{snaphash}
Name: python-straight-plugin
Version: 1.1.1
Release: 0.7.%{snapver}%{?dist}
Summary: Python plugin loader
License: BSD
URL: https://github.com/ironfroggy/straight.plugin/
# Upstream doesn't publish release tarballs yet, so we make one:
# $ git clone git://github.com/ironfroggy/straight.plugin.git && cd straight.plugin
# $ git archive --format=tar --prefix=straight.plugin-1.1.1/ 57ef11c | xz -z > straight.plugin-1.1.1-20111110.git57ef11c.tar.xz
Source0: ironfroggy-straight.plugin-%{snaphash}.tar.gz
BuildArch: noarch
BuildRequires: python2-devel
%if 0%{?with_python3}
BuildRequires: python3-devel
BuildRequires: python-tools
%endif
%if (0%{?rhel} && 0%{?rhel} <= 6) || ( 0%{?fedora} && 0%{?fedora} <= 13 )
BuildRequires: python-importlib
Requires: python-importlib
%endif
%description
straight.plugin is a Python plugin loader inspired by twisted.plugin with two
important distinctions:
- Fewer dependencies
- Python 3 compatible
The system is used to allow multiple Python packages to provide plugins within
a namespace package, where other packages will locate and utilize. The plugins
themselves are modules in a namespace package where the namespace identifies
the plugins in it for some particular purpose or intent.
%if 0%{?with_python3}
%package -n python3-straight-plugin
Summary: Python plugin loader
%description -n python3-straight-plugin
straight.plugin is a Python plugin loader inspired by twisted.plugin with two
important distinctions:
- Fewer dependencies
- Python 3 compatible
The system is used to allow multiple Python packages to provide plugins within
a namespace package, where other packages will locate and utilize. The plugins
themselves are modules in a namespace package where the namespace identifies
the plugins in it for some particular purpose or intent.
%endif
%prep
%setup -q -c -n ironfroggy-straight.plugin-%{snaphash}
%if 0%{?with_python3}
cp -r ironfroggy-straight.plugin-%{snaphash} py3-ironfroggy-straight.plugin-%{snaphash}
2to3 --write --nobackups py3-ironfroggy-straight.plugin-%{snaphash}
%endif
%build
pushd ironfroggy-straight.plugin-%{snaphash}
%{__python} setup.py build
popd
%if 0%{?with_python3}
pushd py3-ironfroggy-straight.plugin-%{snaphash}
%{__python3} setup.py build
popd
%endif
%install
rm -rf $RPM_BUILD_ROOT
pushd ironfroggy-straight.plugin-%{snaphash}
%{__python} setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT
popd
%if 0%{?with_python3}
pushd py3-ironfroggy-straight.plugin-%{snaphash}
%{__python3} setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT
popd
%endif
%check
pushd ironfroggy-straight.plugin-%{snaphash}
%{__python} tests.py
popd
%if 0%{?with_python3}
pushd py3-ironfroggy-straight.plugin-%{snaphash}
%{__python3} tests.py
popd
%endif
%files
%doc ironfroggy-straight.plugin-%{snaphash}/LICENSE ironfroggy-straight.plugin-%{snaphash}/README
# For noarch packages: sitelib
%{python_sitelib}/*
%if 0%{?with_python3}
%files -n python3-straight-plugin
%doc py3-ironfroggy-straight.plugin-%{snaphash}/LICENSE py3-ironfroggy-straight.plugin-%{snaphash}/README
# For noarch packages: sitelib
%{python3_sitelib}/*
%endif
%changelog
* Fri Nov 11 2011 Pierre-Yves Chibon <pingou@pingoured.fr> - 1.1.1-0.7.20111110git57ef11c
- Fix the import of python-importlib (Finally!!)
* Fri Nov 11 2011 Pierre-Yves Chibon <pingou@pingoured.fr> - 1.1.1-0.6.20111110git57ef11c
- Fix typo in the use if for python-importlib
* Fri Nov 11 2011 Pierre-Yves Chibon <pingou@pingoured.fr> - 1.1.1-0.5.20111110git57ef11c
- Add python-importlib as BR and R on EL6
* Fri Nov 11 2011 Pierre-Yves Chibon <pingou@pingoured.fr> - 1.1.1-0.4.20111110git57ef11c
- EL6 has no python3 /me should get glasses...
- Fix comment on how to generate the tarball properly (previous method didn't keep the timestamp)
* Thu Nov 10 2011 Pierre-Yves Chibon <pingou@pingoured.fr> - 1.1.1-0.3.20111110git57ef11c
- Fix the use of __python3 for the tests and the build
- Change python-devel to python2-devel on the BR
* Thu Nov 10 2011 Pierre-Yves Chibon <pingou@pingoured.fr> - 1.1.1-0.2.20111110git57ef11c
- Rename the package to remove the dot
* Thu Nov 10 2011 Pierre-Yves Chibon <pingou@pingoured.fr> - 1.1.1-0.1.20111110git57ef11c
- Initial packaging work for Fedora