%global pypi_name packaging %if 0%{?fedora} || 0%{?rhel} >= 8 %global build_wheel 1 %global with_python3 1 %endif %if 0%{?rhel} >= 8 %global with_python2 0 %else %global with_python2 1 %endif # Specify --with docs to prevent the dependency loop on python-sphinx %bcond_with docs # Specify --with tests to prevent the dependency loop on python-pytest %bcond_with tests %global python_wheelname %{pypi_name}-%{version}-py2.py3-none-any.whl Name: python-%{pypi_name} Version: 19.0 Release: 7%{?dist} Summary: Core utilities for Python packages License: BSD or ASL 2.0 URL: https://github.com/pypa/packaging Source0: https://files.pythonhosted.org/packages/source/p/%{pypi_name}/%{pypi_name}-%{version}.tar.gz BuildArch: noarch %if 0%{?with_python2} # Dependencies with different names in Fedora and Epel7 %if 0%{?fedora} || 0%{?rhel} >= 8 BuildRequires: python2-setuptools BuildRequires: python2-devel BuildRequires: python2-pyparsing %if %{with tests} BuildRequires: python2-pytest BuildRequires: python2-pretend %endif %else BuildRequires: python-setuptools BuildRequires: python-devel BuildRequires: pyparsing %if %{with tests} BuildRequires: pytest BuildRequires: python2-pretend %endif %if %{with docs} BuildRequires: python-sphinx %endif %endif BuildRequires: python2-six %endif # Build Python 3 subpackage only for Fedora %if 0%{?with_python3} BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-pyparsing BuildRequires: python%{python3_pkgversion}-six %if %{with tests} BuildRequires: python%{python3_pkgversion}-pytest BuildRequires: python%{python3_pkgversion}-pretend %endif %if %{with docs} BuildRequires: python%{python3_pkgversion}-sphinx %endif %endif %if 0%{?build_wheel} %if 0%{?with_python3} BuildRequires: python%{python3_pkgversion}-pip BuildRequires: python%{python3_pkgversion}-wheel %endif %endif %description python-packaging provides core utilities for Python packages like utilities for dealing with versions, specifiers, markers etc. %if 0%{?with_python2} %package -n python2-%{pypi_name} Summary: %{summary} %{?python_provide:%python_provide python2-%{pypi_name}} %if 0%{?fedora} || 0%{?rhel} >= 8 Requires: python2-pyparsing %else Requires: pyparsing %endif Requires: python2-six %description -n python2-%{pypi_name} python2-packaging provides core utilities for Python packages like utilities for dealing with versions, specifiers, markers etc. %endif %if 0%{?with_python3} %package -n python%{python3_pkgversion}-%{pypi_name} Summary: %{summary} %{?python_provide:%python_provide python%{python3_pkgversion}-%{pypi_name}} Requires: python%{python3_pkgversion}-pyparsing Requires: python%{python3_pkgversion}-six %description -n python%{python3_pkgversion}-%{pypi_name} python3-packaging provides core utilities for Python packages like utilities for dealing with versions, specifiers, markers etc. %endif %if %{with docs} %package -n python-%{pypi_name}-doc Summary: python-packaging documentation %description -n python-%{pypi_name}-doc Documentation for python-packaging %endif %prep %autosetup -n %{pypi_name}-%{version} # Remove bundled egg-info rm -rf %{pypi_name}.egg-info %build %if 0%{?with_python2} %py2_build %endif %if 0%{?with_python3} %if 0%{?build_wheel} %py3_build_wheel %else %py3_build %endif %endif %if %{with docs} # generate html docs %if 0%{?with_python3} sphinx-build-3 docs html %else sphinx-build docs html %endif # remove the sphinx-build leftovers rm -rf html/.{doctrees,buildinfo} # Do not bundle fonts rm -rf html/_static/fonts/ %endif %install %if 0%{?with_python2} %py2_install %endif %if 0%{?with_python3} %if 0%{?build_wheel} %py3_install_wheel %{python_wheelname} %else %py3_install %endif %endif %if %{with tests} %check %if 0%{?fedora} || 0%{?rhel} >= 8 %if 0%{?with_python2} %{__python2} -m pytest tests/ %endif %{__python3} -m pytest tests/ %else # Disable non-working tests in Epel7 %{__python2} -m pytest --ignore=tests/test_requirements.py tests/ %endif %endif %if 0%{?with_python2} %files -n python2-%{pypi_name} %license LICENSE LICENSE.APACHE LICENSE.BSD %doc README.rst CHANGELOG.rst CONTRIBUTING.rst %{python2_sitelib}/%{pypi_name}/ %{python2_sitelib}/%{pypi_name}-*-info/ %endif %if 0%{?with_python3} %files -n python%{python3_pkgversion}-%{pypi_name} %license LICENSE LICENSE.APACHE LICENSE.BSD %doc README.rst CHANGELOG.rst CONTRIBUTING.rst %{python3_sitelib}/%{pypi_name}/ %{python3_sitelib}/%{pypi_name}-*-info/ %endif %if %{with docs} %files -n python-%{pypi_name}-doc %doc html %license LICENSE LICENSE.APACHE LICENSE.BSD %endif %changelog * Thu Sep 12 2019 Sandro Bonazzola - 19.0-7 - disable python2 build on EL 8 * Thu Sep 12 2019 Sandro Bonazzola - 19.0-6 - skip docs and tests by default * Mon Sep 02 2019 Miro Hrončok - 19.0-5 - Reduce Python 2 build time dependencies * Fri Aug 16 2019 Miro Hrončok - 19.0-4 - Rebuilt for Python 3.8 * Thu Aug 15 2019 Miro Hrončok - 19.0-3 - Bootstrap for Python 3.8 * Fri Jul 26 2019 Fedora Release Engineering - 19.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Mon Feb 04 2019 Lumír Balhar - 19.0-1 - New upstream version * Sat Feb 02 2019 Fedora Release Engineering - 17.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Tue Jul 31 2018 Charalampos Stratakis - 17.1-1 - Update to 17.1 * Sat Jul 14 2018 Fedora Release Engineering - 16.8-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Sat Jun 16 2018 Miro Hrončok - 16.8-10 - Rebuilt for Python 3.7 * Thu Jun 14 2018 Miro Hrončok - 16.8-9 - Bootstrap for Python 3.7 * Fri Feb 09 2018 Iryna Shcherbina - 16.8-8 - Update Python 2 dependency declarations to new packaging standards (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) * Fri Feb 09 2018 Fedora Release Engineering - 16.8-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Thu Jul 27 2017 Fedora Release Engineering - 16.8-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Wed Mar 22 2017 Lumir Balhar - 16.8-5 - Epel7 compatible spec/package * Mon Feb 13 2017 Charalampos Stratakis - 16.8-4 - Rebuild as wheel * Sat Feb 11 2017 Fedora Release Engineering - 16.8-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Dec 19 2016 Miro Hrončok - 16.8-2 - Rebuild for Python 3.6 * Wed Nov 02 2016 Lumir Balhar - 16.8-1 - New upstream version * Fri Sep 16 2016 Lumir Balhar - 16.7-1 - Initial package.