From 7b03c4c3026884eaea449089c03cd098eee23146 Mon Sep 17 00:00:00 2001 From: syzhaok Date: Tue, 21 Feb 2023 15:38:08 +0800 Subject: [PATCH] =?UTF-8?q?python-stuf=E6=BA=90=E7=A0=81=E5=8C=85=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit python-stuf相关源码包及SPEC文件 --- python-stuf.spec | 113 +++++++++++++++++++++++++++++++++++++++++++++ stuf-0.9.16.tar.gz | Bin 0 -> 23789 bytes 2 files changed, 113 insertions(+) create mode 100644 python-stuf.spec create mode 100644 stuf-0.9.16.tar.gz diff --git a/python-stuf.spec b/python-stuf.spec new file mode 100644 index 0000000..f3fa42c --- /dev/null +++ b/python-stuf.spec @@ -0,0 +1,113 @@ +%if 0%{?fedora} +%global with_python3 1 +%endif + +%{!?_licensedir: %global license %%doc} + +%if 0%{?rhel} && 0%{?rhel} <= 6 +%{!?__python2: %global __python2 /usr/bin/python2} +%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} +%{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} +%endif + +%global modname stuf + +Name: python-stuf +Version: 0.9.16 +Release: 1 +Summary: Fancy python dictionary types + +Group: Development/Libraries +License: BSD +URL: http://pypi.python.org/pypi/stuf +Source0: https://pypi.python.org/packages/source/s/%{modname}/%{modname}-%{version}.tar.gz + +BuildArch: noarch + +BuildRequires: python2-devel +%if 0%{?fedora} && 0%{?fedora} > 22 +BuildRequires: python2-setuptools +%else +BuildRequires: python-setuptools +%endif + +%if 0%{?with_python3} +BuildRequires: python3-devel +BuildRequires: python3-setuptools +%endif + +%description +A collection of Python dictionary types that support attribute-style +access. Includes *defaultdict*, *OrderedDict*, restricted, *ChainMap*, +*Counter*, and frozen implementations plus miscellaneous utilities for +writing Python software. + +%package -n python2-%{modname} +Summary: Fancy python dictionary types +%{?python_provide:%python_provide python2-%{modname}} + +Requires: python-parse + +%description -n python2-%{modname} +A collection of Python dictionary types that support attribute-style +access. Includes *defaultdict*, *OrderedDict*, restricted, *ChainMap*, +*Counter*, and frozen implementations plus miscellaneous utilities for +writing Python software. + +%if 0%{?with_python3} +%package -n python3-%{modname} +Summary: Fancy python dictionary types +%{?python_provide:%python_provide python3-%{modname}} + +Requires: python3-parse + +%description -n python3-%{modname} +A collection of Python dictionary types that support attribute-style +access. Includes *defaultdict*, *OrderedDict*, restricted, *ChainMap*, +*Counter*, and frozen implementations plus miscellaneous utilities for +writing Python software. +%endif + +%prep +%autosetup -n %{modname}-%{version} + +# Make this egg-level requirement less specific for EPEL7. +# https://bugzilla.redhat.com/show_bug.cgi?id=1335144#c13 +sed -i 's/parse>=1.6.6/parse/g' reqs/requires.txt + +# Remove upstreams egg info +rm -rf *.egg* + +%build +%py2_build +%if 0%{?with_python3} +%py3_build +%endif + +%install +%py2_install +# https://bitbucket.org/lcrees/stuf/issues/9/find_packages-should-exclude-tests +rm -rf %{buildroot}%{python2_sitelib}/tests/ + +%if 0%{?with_python3} +%py3_install +rm -rf %{buildroot}%{python3_sitelib}/tests/ +%endif + +%files -n python2-%{modname} +%doc README.rst +%license LICENSE.txt +%{python2_sitelib}/%{modname}/ +%{python2_sitelib}/%{modname}-%{version}* + +%if 0%{?with_python3} +%files -n python3-%{modname} +%doc README.rst +%license LICENSE.txt +%{python3_sitelib}/%{modname}/ +%{python3_sitelib}/%{modname}-%{version}-* +%endif + +%changelog +* Fri feb 21 2023 syzhaok - 0.9.16-1 +- Initial packaging for Fedora. diff --git a/stuf-0.9.16.tar.gz b/stuf-0.9.16.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..427d00dbf7dd58c3aab81c52fe3e1d131318e831 GIT binary patch literal 23789 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