python-distro/python-distro.spec
Igor Gnatenko 4cf67948bd provide only one copy of $bindir/distro
By the guidelines if binary does completely same thing,
it should be distributed only once and only in py3 version.

However EPEL7 and below have py2, so binary will be py2 there.

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-01-01 21:24:31 +01:00

125 lines
3.1 KiB
RPMSpec

%global pypi_name distro
%if 0%{?rhel} && 0%{?rhel} <= 7
%global with_python3 0
%else
%global with_python3 1
%endif
Name: python-%{pypi_name}
Version: 1.0.0
Release: 7%{?dist}
Summary: Linux Distribution - a Linux OS platform information API
License: ASL 2.0
URL: https://github.com/nir0s/distro
Source0: https://files.pythonhosted.org/packages/source/d/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
BuildArch: noarch
BuildRequires: python-setuptools
BuildRequires: python2-devel
%if 0%{with_python3}
BuildRequires: python3-setuptools
BuildRequires: python3-devel
%endif
%global _description \
The distro (for: Linux Distribution) package provides information about the\
Linux distribution it runs on, such as a reliable machine-readable ID, or\
version information.\
\
It is a renewed alternative implementation for Python's original\
platform.linux_distribution function, but it also provides much more\
functionality. An alternative implementation became necessary because\
Python 3.5 deprecated this function, and Python 3.7 is expected to remove it\
altogether. Its predecessor function platform.dist was already deprecated since\
Python 2.6 and is also expected to be removed in Python 3.7. Still, there are\
many cases in which access to that information is needed. See Python issue 1322\
for more information.
%description %{_description}
%package -n python2-%{pypi_name}
Summary: %{summary}
%{?python_provide:%python_provide python2-%{pypi_name}}
Requires: /usr/bin/lsb_release
%description -n python2-%{pypi_name} %{_description}
Python 2 version.
%if 0%{with_python3}
%package -n python3-%{pypi_name}
Summary: %{summary}
%{?python_provide:%python_provide python3-%{pypi_name}}
Requires: /usr/bin/lsb_release
%description -n python3-%{pypi_name} %{_description}
Python 3 version.
%endif
%prep
%autosetup -n %{pypi_name}-%{version}
# Remove bundled egg-info
rm -rf %{pypi_name}.egg-info
%build
%py2_build
%if 0%{with_python3}
%py3_build
%endif
%install
%py2_install
%if 0%{with_python3}
%py3_install
%endif
%files -n python2-%{pypi_name}
%doc README.rst
# not included in tar.gz
# see https://github.com/nir0s/distro/issues/139
#%license LICENSE
%{python2_sitelib}/%{pypi_name}.py*
%{python2_sitelib}/%{pypi_name}-%{version}-py?.?.egg-info
%if 0%{with_python3}
%files -n python3-%{pypi_name}
%doc README.rst
#%license LICENSE
%{python3_sitelib}/__pycache__/*
%{python3_sitelib}/%{pypi_name}.py
%{python3_sitelib}/%{pypi_name}-%{version}-py?.?.egg-info
%endif
%{_bindir}/distro
%changelog
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 1.0.0-7
- Rebuild for Python 3.6
* Thu Oct 06 2016 Miroslav Suchý <msuchy@redhat.com> 1.0.0-6
- polish spec according the package review
* Wed Oct 05 2016 Miroslav Suchý 1.0.0-5
- use python3 in /usr/bin/distro on Fedoras
* Wed Oct 05 2016 Miroslav Suchý 1.0.0-4
- use python3 in /usr/bin/distro on Fedoras
* Wed Oct 05 2016 Miroslav Suchý 1.0.0-3
- python2 subpackages only on rhel
- correct description
* Wed Oct 05 2016 Miroslav Suchý 1.0.0-2
- require lsb_release
* Wed Oct 05 2016 Miroslav Suchý 1.0.0-1
- initial packaging