%global __provides_exclude_from ^%{python3_sitearch}/.*\\.so$ %global optflags %(echo %{optflags} -I%{_includedir}/libev) Name: python-gevent Version: 1.3.6 Release: 3 Summary: A coroutine-based Python networking library License: MIT URL: http://www.gevent.org/ Source0: https://files.pythonhosted.org/packages/source/g/gevent/gevent-%{version}.tar.gz BuildRequires: gcc c-ares-devel libev-devel %description gevent is a coroutine -based Python networking library that uses greenlet to provide a high-level synchronous API on top of the libev or libuv event loop. Features include: * Fast event loop based on libev or libuv. * Lightweight execution units based on greenlets. * API that re-uses concepts from the Python standard library (for examples there are events and queues). * Cooperative sockets with SSL support * Cooperative DNS queries performed through a threadpool, dnspython, or c-ares. * Monkey patching utility to get 3rd party modules to become cooperative * TCP/UDP/HTTP servers * Subprocess support (through gevent.subprocess) * Thread pools %package_help %package -n python3-gevent Summary: %{summary} %{?python_provide:%python_provide python3-gevent} BuildRequires: python3-devel python3-greenlet-devel Requires: python3-greenlet %description -n python3-gevent gevent is a coroutine -based Python networking library that uses greenlet to provide a high-level synchronous API on top of the libev or libuv event loop. Features include: * Fast event loop based on libev or libuv. * Lightweight execution units based on greenlets. * API that re-uses concepts from the Python standard library (for examples there are events and queues). * Cooperative sockets with SSL support * Cooperative DNS queries performed through a threadpool, dnspython, or c-ares. * Monkey patching utility to get 3rd party modules to become cooperative * TCP/UDP/HTTP servers * Subprocess support (through gevent.subprocess) * Thread pools Python 3 version. %prep %autosetup -n gevent-%{version} # Remove bundled libraries rm -r deps # C extension sources will go into debuginfo as normal. sed -i -e 's/include_package_data=True/include_package_data=False/' setup.py %build export LIBEV_EMBED=0 export CARES_EMBED=0 export GEVENT_NO_CFFI_BUILD=1 %py3_build %install export LIBEV_EMBED=0 export CARES_EMBED=0 export GEVENT_NO_CFFI_BUILD=1 %py3_install rm %{buildroot}%{python3_sitearch}/gevent/_*2.py rm %{buildroot}%{python3_sitearch}/gevent/__pycache__/_*2.* find %{buildroot} -name '.buildinfo' -delete # Correct the permissions. find %{buildroot} -name '*.so' -exec chmod 755 {} ';' %files help %doc README.rst %files -n python3-gevent %defattr(-,root,root) %license LICENSE %{python3_sitearch}/gevent* %changelog * Wed Oct 21 2020 leiju - 1.3.6-3 - remove python2 subpackage * Tue Dec 10 2019 openEuler Buildteam - 1.3.6-2 - modify spec format * Tue Dec 10 2019 openEuler Buildteam - 1.3.6-1 - Package init