From f73de91303a145bbeaea96b2bb04278f564d308e Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: May 07 2019 13:33:14 +0000 Subject: import python-gevent-1.2.2-3.el8 --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e4744a8 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/gevent-1.2.2.tar.gz diff --git a/.python-gevent.metadata b/.python-gevent.metadata new file mode 100644 index 0000000..34df431 --- /dev/null +++ b/.python-gevent.metadata @@ -0,0 +1 @@ +3a2ab5f982db6d2ebe8f3763f1563b40343c782e SOURCES/gevent-1.2.2.tar.gz diff --git a/SOURCES/0001-always-obey-GEVENT_NO_CFFI_BUILD.patch b/SOURCES/0001-always-obey-GEVENT_NO_CFFI_BUILD.patch new file mode 100644 index 0000000..7f768ec --- /dev/null +++ b/SOURCES/0001-always-obey-GEVENT_NO_CFFI_BUILD.patch @@ -0,0 +1,42 @@ +From 05650624fe2524ecb1bdbbd4facc5d988275e542 Mon Sep 17 00:00:00 2001 +From: Dan Callaghan +Date: Wed, 7 Jun 2017 13:55:53 +1000 +Subject: [PATCH] always obey GEVENT_NO_CFFI_BUILD + +If libev is not embedded, we still want to set GEVENT_NO_CFFI_BUILD=1 to +prevent setup.py from trying to configure libev, regardless whether cffi +modules will actually be built or not. +--- + setup.py | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/setup.py b/setup.py +index 9c229ad..ea4dcaf 100755 +--- a/setup.py ++++ b/setup.py +@@ -90,16 +90,17 @@ + except ImportError: + pass + else: +- if IGNORE_CFFI and not PYPY: +- # Allow distributors to turn off CFFI builds +- # even if it's available, because CFFI always embeds +- # our copy of libev and they may not want that. +- del cffi_modules[:] + # Note that we don't add cffi to install_requires, it's + # optional. We tend to build and distribute wheels with the CFFI + # modules built and they can be imported if CFFI is installed. + # install_requires.append('cffi >= 1.3.0') ++ pass + ++if IGNORE_CFFI and not PYPY: ++ # Allow distributors to turn off CFFI builds ++ # even if it's available, because CFFI always embeds ++ # our copy of libev and they may not want that. ++ del cffi_modules[:] + + # If we are running info / help commands, or we're being imported by + # tools like pyroma, we don't need to build anything +-- +2.9.4 + diff --git a/SPECS/python-gevent.spec b/SPECS/python-gevent.spec new file mode 100644 index 0000000..5dd362d --- /dev/null +++ b/SPECS/python-gevent.spec @@ -0,0 +1,250 @@ +%global __provides_exclude_from ^%{python2_sitearch}/.*\\.so$ ^%{python3_sitearch}/.*\\.so$ +%global modname gevent +%global optflags %(echo %{optflags} -I%{_includedir}/libev) + +%if 0%{?rhel} > 7 +# Disable python2 build by default +%bcond_with python2 +%else +%bcond_without python2 +%endif + +Name: python-%{modname} +Version: 1.2.2 +Release: 3%{?dist} +Summary: A coroutine-based Python networking library + +License: MIT +URL: http://www.gevent.org/ +Source0: https://files.pythonhosted.org/packages/source/g/%{modname}/%{modname}-%{version}.tar.gz + +# https://github.com/gevent/gevent/pull/979 +Patch1: 0001-always-obey-GEVENT_NO_CFFI_BUILD.patch + +BuildRequires: c-ares-devel +BuildRequires: libev-devel + +%description +gevent is a coroutine-based Python networking library that uses greenlet to +provide a high-level synchronous API on top of libevent event loop. + +Features include: + + * convenient API around greenlets + * familiar synchronization primitives (gevent.event, gevent.queue) + * socket module that cooperates + * WSGI server on top of libevent-http + * DNS requests done through libevent-dns + * monkey patching utility to get pure Python modules to cooperate + +%if %{with python2} +%package -n python2-%{modname} +Summary: %{summary} +%{?python_provide:%python_provide python2-%{modname}} +BuildRequires: python2-devel +Requires: python2-greenlet + +%description -n python2-%{modname} +gevent is a coroutine-based Python networking library that uses greenlet to +provide a high-level synchronous API on top of libevent event loop. + +Features include: + + * convenient API around greenlets + * familiar synchronization primitives (gevent.event, gevent.queue) + * socket module that cooperates + * WSGI server on top of libevent-http + * DNS requests done through libevent-dns + * monkey patching utility to get pure Python modules to cooperate + +Python 2 version. +%endif # with python2 + +%package -n python3-%{modname} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{modname}} +BuildRequires: python3-devel +Requires: python3-greenlet + +%description -n python3-%{modname} +gevent is a coroutine-based Python networking library that uses greenlet to +provide a high-level synchronous API on top of libevent event loop. + +Features include: + + * convenient API around greenlets + * familiar synchronization primitives (gevent.event, gevent.queue) + * socket module that cooperates + * WSGI server on top of libevent-http + * DNS requests done through libevent-dns + * monkey patching utility to get pure Python modules to cooperate + +Python 3 version. + +%prep +%autosetup -n %{modname}-%{version} +# Remove bundled libraries +rm -r deps +# Upstream intentionally includes C extension sources in the built package, +# because... reasons (PyPy I think?) however we do not want that. 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 +%if %{with python2} +%py2_build +%endif # with python2 +%py3_build + +%install +export LIBEV_EMBED=0 +export CARES_EMBED=0 +export GEVENT_NO_CFFI_BUILD=1 +%if %{with python2} +%py2_install +%endif # with python2 +%py3_install +%if %{with python2} +rm %{buildroot}%{python2_sitearch}/%{modname}/_*3.py* +%endif # with python2 +rm %{buildroot}%{python3_sitearch}/%{modname}/_*2.py +rm %{buildroot}%{python3_sitearch}/%{modname}/__pycache__/_*2.* +find %{buildroot} -name '.buildinfo' -delete +# Correct the permissions. +find %{buildroot} -name '*.so' -exec chmod 755 {} ';' + +%if %{with python2} +%files -n python2-%{modname} +%license LICENSE +%doc README.rst +%{python2_sitearch}/%{modname}* +%endif # with python2 + +%files -n python3-%{modname} +%license LICENSE +%doc README.rst +%{python3_sitearch}/%{modname}* + +%changelog +* Wed Jul 18 2018 Charalampos Stratakis - 1.2.2-3 +- Conditionalize the python2 subpackage + +* Fri Feb 09 2018 Fedora Release Engineering - 1.2.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Aug 09 2017 Dan Callaghan - 1.2.2-1 +- Update to 1.2.2 (RHBZ#1389634) + +* Thu Aug 03 2017 Fedora Release Engineering - 1.1.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 1.1.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 1.1.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Dec 19 2016 Miro HronĨok - 1.1.2-2 +- Rebuild for Python 3.6 + +* Sun Jul 24 2016 Igor Gnatenko - 1.1.2-1 +- Update to 1.1.2 (RHBZ #1359455) + +* Tue Jul 19 2016 Fedora Release Engineering - 1.1.1-2 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Tue Apr 05 2016 Igor Gnatenko - 1.1.1-1 +- Update to 1.1.1 (RHBZ #1323855) + +* Tue Mar 15 2016 Dan Callaghan - 1.1.0-1 +- Update to 1.1.0 final release + +* Wed Feb 17 2016 Igor Gnatenko - 1.1-0.8.rc4 +- Update to 1.1rc4 (RHBZ #1309141) + +* Thu Feb 04 2016 Fedora Release Engineering - 1.1-0.7.rc3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jan 20 2016 Dan Callaghan - 1.1-0.6.rc3 +- Update to 1.1rc3 + +* Tue Nov 10 2015 Fedora Release Engineering - 1.1-0.5.b6 +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + +* Sat Oct 24 2015 Igor Gnatenko - 1.1-0.4.b6 +- Fix description in spec + +* Sun Oct 18 2015 Igor Gnatenko - 1.1-0.3.b6 +- Update to 1.1b6 (RHBZ #1272717) + +* Tue Oct 06 2015 Orion Poplawski - 1.1-0.2.b5 +- Drop use of unneeded %%{py3dir} + +* Mon Oct 05 2015 Igor Gnatenko - 1.1-0.1.b5 +- Update to 1.1b5 (RHBZ #1244452) +- Add python3 support +- Follow modern RPM packaging guidelines + +* Fri Jun 26 2015 Dan Callaghan - 1.0.2-2 +- removed version requirement for greenlet + +* Mon Jun 22 2015 Dan Callaghan - 1.0.2-1 +- bug fix release 1.0.2: + https://github.com/gevent/gevent/blob/v1.0.2/changelog.rst#release-102-may-23-2015 + +* Thu Jun 18 2015 Fedora Release Engineering - 1.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sun Aug 17 2014 Fedora Release Engineering - 1.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Fri Aug 15 2014 Orion Poplawski - 1.0.1-1 +- Update to 1.0.1 + +* Sat Jun 07 2014 Fedora Release Engineering - 1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed Jan 22 2014 Orion Poplawski - 1.0-1 +- Update to 1.0 + +* Sun Aug 04 2013 Fedora Release Engineering - 0.13.8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 0.13.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Dec 27 2012 Silas Sewell - 0.13.8-1 +- Update to 0.13.8 + +* Sat Jul 21 2012 Fedora Release Engineering - 0.13.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sat Jan 14 2012 Fedora Release Engineering - 0.13.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Sun Jul 24 2011 Silas Sewell - 0.13.6-1 +- Update to 0.13.6 + +* Wed Feb 16 2011 Silas Sewell - 0.13.3-1 +- Update to 0.13.3 + +* Tue Feb 08 2011 Fedora Release Engineering - 0.13.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sat Oct 09 2010 Silas Sewell - 0.13.1-1 +- Update to 0.13.1 + +* Tue Jul 27 2010 David Malcolm - 0.13.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Wed Jul 14 2010 Silas Sewell - 0.13.0-1 +- Update to 0.13.0 + +* Fri Apr 23 2010 Silas Sewell - 0.12.2-2 +- Remove setuptools requirement + +* Wed Mar 17 2010 Silas Sewell - 0.12.2-1 +- Initial build