# what it's called on pypi %global srcname python-multipart # what it's imported as %global libname multipart # name of egg info directory %global eggname python_multipart # package name fragment %global pkgname %{libname} %global _description \ python-multipart is an Apache2 licensed streaming multipart parser for Python. %if %{defined rhel} %bcond_without python2 %bcond_without python2_tests %bcond_without python3_other %bcond_with python3_other_tests %endif %bcond_without python3 %bcond_without python3_tests Name: python-%{pkgname} Version: 0.0.5 Release: 2%{?dist} Summary: A streaming multipart parser for Python License: ASL 2.0 URL: https://github.com/andrew-d/python-multipart Source0: %pypi_source # https://github.com/andrew-d/python-multipart/pull/18 Patch0: use-standard-library-mock-when-available.patch BuildArch: noarch %description %{_description} %if %{with python2} %package -n python2-%{pkgname} Summary: %{summary} BuildRequires: python2-devel BuildRequires: python2-setuptools %if %{with python2_tests} BuildRequires: python2-pytest BuildRequires: python2-mock BuildRequires: python2-pyyaml BuildRequires: python2-six %endif Requires: python2-six %{?python_provide:%python_provide python2-%{pkgname}} %description -n python2-%{pkgname} %{_description} %endif %if %{with python3} %package -n python%{python3_pkgversion}-%{pkgname} Summary: %{summary} BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-setuptools %if %{with python3_tests} BuildRequires: python%{python3_pkgversion}-pytest BuildRequires: python%{python3_pkgversion}-PyYAML BuildRequires: python%{python3_pkgversion}-six %endif Requires: python%{python3_pkgversion}-six %{?python_provide:%python_provide python%{python3_pkgversion}-%{pkgname}} %description -n python%{python3_pkgversion}-%{pkgname} %{_description} %endif %if %{with python3_other} %package -n python%{python3_other_pkgversion}-%{pkgname} Summary: %{summary} BuildRequires: python%{python3_other_pkgversion}-devel BuildRequires: python%{python3_other_pkgversion}-setuptools %if %{with python3_other_tests} BuildRequires: python%{python3_other_pkgversion}-pytest BuildRequires: python%{python3_other_pkgversion}-PyYAML BuildRequires: python%{python3_other_pkgversion}-six %endif Requires: python%{python3_other_pkgversion}-six %description -n python%{python3_other_pkgversion}-%{pkgname} %{_description} %endif %prep %autosetup -n %{srcname}-%{version} -p 1 rm -rf %{eggname}.egg-info %build %{?with_python2:%py2_build} %{?with_python3:%py3_build} %{?with_python3_other:%py3_other_build} %install %{?with_python2:%py2_install} %{?with_python3:%py3_install} %{?with_python3_other:%py3_other_install} %check %{?with_python2_tests:PYTHONPATH=%{buildroot}%{python2_sitelib} py.test-%{python2_version} --verbose multipart/tests} %{?with_python3_tests:PYTHONPATH=%{buildroot}%{python3_sitelib} py.test-%{python3_version} --verbose multipart/tests} %{?with_python3_other_tests:PYTHONPATH=%{buildroot}%{python3_other_sitelib} py.test-%{python3_other_version} --verbose multipart/tests} %if %{with python2} %files -n python2-%{pkgname} %license LICENSE.txt %doc README.rst %{python2_sitelib}/%{libname} %exclude %{python2_sitelib}/%{libname}/tests %{python2_sitelib}/%{eggname}-%{version}-py%{python2_version}.egg-info %endif %if %{with python3} %files -n python%{python3_pkgversion}-%{pkgname} %license LICENSE.txt %doc README.rst %{python3_sitelib}/%{libname} %exclude %{python3_sitelib}/%{libname}/tests %{python3_sitelib}/%{eggname}-%{version}-py%{python3_version}.egg-info %endif %if %{with python3_other} %files -n python%{python3_other_pkgversion}-%{pkgname} %license LICENSE.txt %doc README.rst %{python3_other_sitelib}/%{libname} %exclude %{python3_other_sitelib}/%{libname}/tests %{python3_other_sitelib}/%{eggname}-%{version}-py%{python3_other_version}.egg-info %endif %changelog * Mon Oct 15 2018 Carl George - 0.0.5-2 - Only build python2 subpackage on RHEL * Sun Oct 14 2018 Carl George - 0.0.5-1 - Initial package