diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..75b81f4 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +python-greenlet (1.1.3-ok1) yangtze; urgency=medium + + * Build for openKylin. + + -- zhouganqing Mon, 28 Nov 2022 11:09:27 +0800 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..eee904e --- /dev/null +++ b/debian/control @@ -0,0 +1,73 @@ +Source: python-greenlet +Priority: optional +Maintainer: OpenKylin Developers +Build-Depends: debhelper-compat (= 13), + dh-python, + python3-all-dev, + python3-setuptools, + python3-sphinx, + sphinx-common +Standards-Version: 4.6.0.1 +Section: python +Homepage: https://pypi.python.org/pypi/greenlet +Vcs-Git: https://gitee.com/openkylin/python-greenlet.git +Vcs-Browser: https://gitee.com/openkylin/python-greenlet + +Package: python-greenlet-doc +Section: doc +Architecture: all +Multi-Arch: foreign +Pre-Depends: ${misc:Pre-Depends}, +Depends: ${sphinxdoc:Depends}, + ${misc:Depends}, +Suggests: python-greenlet-dev, + python3-greenlet, +Description: Lightweight in-process concurrent programming - documentation + The greenlet package is a spin-off of Stackless, a version of CPython that + supports micro-threads called "tasklets". Tasklets run pseudo-concurrently + (typically in a single or a few OS-level threads) and are synchronized with + data exchanges on "channels". + . + greenlet is the standalone package derived from the py lib, and is used by + several non-blocking IO packages as a more flexible alternative to Python's + built in coroutines. + . + This is the documentation for greenlet. + +Package: python-greenlet-dev +Architecture: any +Pre-Depends: ${misc:Pre-Depends}, +Depends: python3-greenlet (= ${binary:Version}), + ${misc:Depends}, +Description: Lightweight in-process concurrent programming - development files + The greenlet package is a spin-off of Stackless, a version of CPython that + supports micro-threads called "tasklets". Tasklets run pseudo-concurrently + (typically in a single or a few OS-level threads) and are synchronized with + data exchanges on "channels". + . + greenlet is the standalone package derived from the py lib, and is used by + several non-blocking IO packages as a more flexible alternative to Python's + built in coroutines. + . + This is the development package for greenlet. + +Package: python3-greenlet +Architecture: any +Pre-Depends: ${misc:Pre-Depends}, +Depends: ${misc:Depends}, + ${python3:Depends}, + ${shlibs:Depends}, +Provides: ${python3:Provides}, +XB-Python-Version: ${python3:Versions} +Conflicts: python-codespeak-lib (<< 1.0), +Suggests: python-greenlet-dev, + python-greenlet-doc, +Description: Lightweight in-process concurrent programming (python3) + The greenlet package is a spin-off of Stackless, a version of CPython that + supports micro-threads called "tasklets". Tasklets run pseudo-concurrently + (typically in a single or a few OS-level threads) and are synchronized with + data exchanges on "channels". + . + greenlet is the standalone package derived from the py lib, and is used by + several non-blocking IO packages as a more flexible alternative to Python's + built in coroutines. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..cef26bf --- /dev/null +++ b/debian/copyright @@ -0,0 +1,229 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: greenlet +Source: https://github.com/python-greenlet/greenlet +Copyright: Alexey Borzenkov + +Files: * +Copyright: Armin Rigo , + Christian Tismer , + contributors +License: MIT + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Files: appveyor/* +Copyright: (c) Olivier Grisel + (c) Jonathan Helmus + (c) Kyle Kastner + (c) Alex Willmer +License: CC0-1.0-Universal + +Files: slp_platformselect.h + platform/* +Copyright: Copyright (C) 2004-2006 Bob Ippolito , + Copyright (C) 2005 Thiemo Seufer , + Copyright (C) 2002-2004 Hye-Shik Chang , + Copyright (C) 2002 Gerd Woetzel , + Copyright (C) 2002 Armin Rigo , + Copyright (C) 2002 Christian Tismer , + Copyright (C) 2002 Gustavo Niemeyer , + Copyright (C) 2002 Armin Rigo , + Copyright (C) 2002 Samual M. Rushing +License: PSFL-2 + +Files: debian/* +Copyright: (c) 2012- Laszlo Boszormenyi (GCS) , + (c) 2010-2012 Örjan Persson +License: GPL-3 + +License: GPL-3 + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation version 3 of the License. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . + . + On Debian systems, the complete text of the GNU General Public + License version 3 can be found in `/usr/share/common-licenses/GPL-3'. + +License: CC0-1.0-Universal + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL + SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT + RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. + CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE + INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES + RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + . + Statement of Purpose + . + The laws of most jurisdictions throughout the world automatically confer + exclusive Copyright and Related Rights (defined below) upon the creator and + subsequent owner(s) (each and all, an "owner") of an original work of + authorship and/or a database (each, a "Work"). + . + Certain owners wish to permanently relinquish those rights to a Work for the + purpose of contributing to a commons of creative, cultural and scientific + works ("Commons") that the public can reliably and without fear of later +claims of infringement build upon, modify, incorporate in other works, reuse + and redistribute as freely as possible in any form whatsoever and for any + purposes, including without limitation commercial purposes. These owners may + contribute to the Commons to promote the ideal of a free culture and the + further production of creative, cultural and scientific works, or to gain + reputation or greater distribution for their Work in part through the use and + efforts of others. + . + For these and/or other purposes and motivations, and without any expectation + of additional consideration or compensation, the person associating CC0 with a + Work (the "Affirmer"), to the extent that he or she is an owner of Copyright + and Related Rights in the Work, voluntarily elects to apply CC0 to the Work + and publicly distribute the Work under its terms, with knowledge of his or her + Copyright and Related Rights in the Work and the meaning and intended legal + effect of CC0 on those rights. + . + 1. Copyright and Related Rights. A Work made available under CC0 may be + protected by copyright and related or neighboring rights ("Copyright and + Related Rights"). Copyright and Related Rights include, but are not limited + to, the following: + . + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); + iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation thereof, + including any amended or successor version of such directive); and + vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national implementations + thereof. + . + 2. Waiver. To the greatest extent permitted by, but not in contravention of, + applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and + unconditionally waives, abandons, and surrenders all of Affirmer's Copyright + and Related Rights and associated claims and causes of action, whether now + known or unknown (including existing as well as future claims and causes of + action), in the Work (i) in all territories worldwide, (ii) for the maximum + duration provided by applicable law or treaty (including future time + extensions), (iii) in any current or future medium and for any number of + copies, and (iv) for any purpose whatsoever, including without limitation + commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes + the Waiver for the benefit of each member of the public at large and to the + detriment of Affirmer's heirs and successors, fully intending that such Waiver + shall not be subject to revocation, rescission, cancellation, termination, or + any other legal or equitable action to disrupt the quiet enjoyment of the Work + by the public as contemplated by Affirmer's express Statement of Purpose. + . + 3. Public License Fallback. Should any part of the Waiver for any reason be + judged legally invalid or ineffective under applicable law, then the Waiver + shall be preserved to the maximum extent permitted taking into account + Affirmer's express Statement of Purpose. In addition, to the extent the Waiver + is so judged Affirmer hereby grants to each affected person a royalty-free, + non transferable, non sublicensable, non exclusive, irrevocable and + unconditional license to exercise Affirmer's Copyright and Related Rights in + the Work (i) in all territories worldwide, (ii) for the maximum duration + provided by applicable law or treaty (including future time extensions), + (iii) in any current or future medium and for any number of copies, and (iv) + for any purpose whatsoever, including without limitation commercial, + advertising or promotional purposes (the "License"). The License shall be + deemed effective as of the date CC0 was applied by Affirmer to the Work. + Should any part of the License for any reason be judged legally invalid or + ineffective under applicable law, such partial invalidity or ineffectiveness + shall not invalidate the remainder of the License, and in such case Affirmer + hereby affirms that he or she will not (i) exercise any of his or her + remaining Copyright and Related Rights in the Work or (ii) assert any + associated claims and causes of action with respect to the Work, in either + case contrary to Affirmer's express Statement of Purpose. + . + 4. Limitations and Disclaimers. + . + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or warranties + of any kind concerning the Work, express, implied, statutory or otherwise, + including without limitation warranties of title, merchantability, fitness + for a particular purpose, non infringement, or the absence of latent or + other defects, accuracy, or the present or absence of errors, whether or + not discoverable, all to the greatest extent permissible under applicable + law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without limitation + any person's Copyright and Related Rights in the Work. Further, Affirmer + disclaims responsibility for obtaining any necessary consents, permissions + or other rights required for any use of the Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to this + CC0 or use of the Work. + +License: PSFL-2 + 1. This LICENSE AGREEMENT is between the Python Software Foundation + ("PSF"), and the Individual or Organization ("Licensee") accessing and + otherwise using this software ("Python") in source or binary form and + its associated documentation. + . + 2. Subject to the terms and conditions of this License Agreement, PSF hereby + grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, + analyze, test, perform and/or display publicly, prepare derivative works, + distribute, and otherwise use Python alone or in any derivative version, + provided, however, that PSF's License Agreement and PSF's notice of copyright, + i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, + 2010, 2011 Python Software Foundation; All Rights Reserved" are retained in + Python alone or in any derivative version prepared by Licensee. + . + 3. In the event Licensee prepares a derivative work that is based on + or incorporates Python or any part thereof, and wants to make + the derivative work available to others as provided herein, then + Licensee hereby agrees to include in any such work a brief summary of + the changes made to Python. + . + 4. PSF is making Python available to Licensee on an "AS IS" + basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR + IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND + DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS + FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT + INFRINGE ANY THIRD PARTY RIGHTS. + . + 5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON + FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS + A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, + OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + . + 6. This License Agreement will automatically terminate upon a material + breach of its terms and conditions. + . + 7. Nothing in this License Agreement shall be deemed to create any + relationship of agency, partnership, or joint venture between PSF and + Licensee. This License Agreement does not grant permission to use PSF + trademarks or trade name in a trademark sense to endorse or promote + products or services of Licensee, or any third party. + . + 8. By copying, installing or otherwise using Python, Licensee + agrees to be bound by the terms and conditions of this License + Agreement. + diff --git a/debian/docs b/debian/docs new file mode 100644 index 0000000..449e0b5 --- /dev/null +++ b/debian/docs @@ -0,0 +1,2 @@ +NEWS +README.rst diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..cc0ea71 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +setup-use-absolute-paths.patch diff --git a/debian/patches/setup-use-absolute-paths.patch b/debian/patches/setup-use-absolute-paths.patch new file mode 100644 index 0000000..51bedad --- /dev/null +++ b/debian/patches/setup-use-absolute-paths.patch @@ -0,0 +1,40 @@ +From: Robin Jarry +Date: Wed, 3 Nov 2021 14:21:00 +0100 +Subject: setup: use absolute paths + +This allows running the setup.py script from another directory. It is +required because pybuild runs tests into a temp dir which is a sub +folder of the sources. + +Signed-off-by: Robin Jarry +--- + setup.py | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/setup.py b/setup.py +index 583a91e..b80ac42 100755 +--- a/setup.py ++++ b/setup.py +@@ -95,8 +95,12 @@ else: + ) + + ++def abspath(rel): ++ return os.path.join(os.path.dirname(__file__), rel) ++ ++ + def get_greenlet_version(): +- with open('src/greenlet/__init__.py') as f: ++ with open(abspath('src/greenlet/__init__.py')) as f: + looking_for = '__version__ = \'' + for line in f: + if line.startswith(looking_for): +@@ -109,7 +113,7 @@ setup( + name="greenlet", + version=get_greenlet_version(), + description='Lightweight in-process concurrent programming', +- long_description=readfile("README.rst"), ++ long_description=readfile(abspath("README.rst")), + long_description_content_type="text/x-rst", + url="https://greenlet.readthedocs.io/", + keywords="greenlet coroutine concurrency threads cooperative", diff --git a/debian/python-greenlet-dev.docs b/debian/python-greenlet-dev.docs new file mode 100644 index 0000000..e69de29 diff --git a/debian/python-greenlet-dev.install b/debian/python-greenlet-dev.install new file mode 100644 index 0000000..bf05562 --- /dev/null +++ b/debian/python-greenlet-dev.install @@ -0,0 +1 @@ +usr/include/ diff --git a/debian/python-greenlet-dev.maintscript b/debian/python-greenlet-dev.maintscript new file mode 100644 index 0000000..b825de0 --- /dev/null +++ b/debian/python-greenlet-dev.maintscript @@ -0,0 +1 @@ +symlink_to_dir /usr/share/doc/python-greenlet-dev python-greenlet 0.4.10-1~ diff --git a/debian/python-greenlet-doc.doc-base b/debian/python-greenlet-doc.doc-base new file mode 100644 index 0000000..e691eac --- /dev/null +++ b/debian/python-greenlet-doc.doc-base @@ -0,0 +1,9 @@ +Document: python-greenlet +Title: Greenlet Documentation +Author: Kyle Ambroff +Abstract: Describes how to use python-greenlet and the API offerred by it. +Section: Programming/Python + +Format: HTML +Index: /usr/share/doc/python-greenlet-doc/html/index.html +Files: /usr/share/doc/python-greenlet-doc/html/greenlet.html diff --git a/debian/python-greenlet-doc.docs b/debian/python-greenlet-doc.docs new file mode 100644 index 0000000..840c3c0 --- /dev/null +++ b/debian/python-greenlet-doc.docs @@ -0,0 +1 @@ +usr/share/python-greenlet-doc/html/ diff --git a/debian/python-greenlet-doc.examples b/debian/python-greenlet-doc.examples new file mode 100644 index 0000000..e5b7b3b --- /dev/null +++ b/debian/python-greenlet-doc.examples @@ -0,0 +1 @@ +benchmarks/*.py diff --git a/debian/python-greenlet-doc.links b/debian/python-greenlet-doc.links new file mode 100644 index 0000000..a4cf4d7 --- /dev/null +++ b/debian/python-greenlet-doc.links @@ -0,0 +1,2 @@ +/usr/share/javascript/jquery/jquery.js /usr/share/doc/python-greenlet-doc/html/_static/jquery.js +/usr/share/javascript/underscore/underscore.js /usr/share/doc/python-greenlet-doc/html/_static/underscore.js diff --git a/debian/python-greenlet-doc.maintscript b/debian/python-greenlet-doc.maintscript new file mode 100644 index 0000000..7acd401 --- /dev/null +++ b/debian/python-greenlet-doc.maintscript @@ -0,0 +1 @@ +symlink_to_dir /usr/share/doc/python-greenlet-doc python-greenlet 0.4.9-1~ diff --git a/debian/python3-greenlet.install b/debian/python3-greenlet.install new file mode 100644 index 0000000..d0e32ad --- /dev/null +++ b/debian/python3-greenlet.install @@ -0,0 +1 @@ +usr/lib/python3*/*-packages/ diff --git a/debian/python3-greenlet.maintscript b/debian/python3-greenlet.maintscript new file mode 100644 index 0000000..da1c34c --- /dev/null +++ b/debian/python3-greenlet.maintscript @@ -0,0 +1 @@ +symlink_to_dir /usr/share/doc/python3-greenlet python-greenlet 0.4.10-1~ diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..1313da9 --- /dev/null +++ b/debian/rules @@ -0,0 +1,44 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +export SETUPTOOLS_USE_DISTUTILS=stdlib + +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/buildflags.mk + +DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) + +%: + dh $@ --with python3,sphinxdoc --buildsystem=pybuild + +docs = {destdir}/usr/share/python-greenlet-doc/html +PYBUILD_AFTER_CLEAN = rm -rf $(docs) +PYBUILD_AFTER_INSTALL = \ + PYTHONPATH={destdir}/{install_dir} \ + {interpreter} -m sphinx -N -b html {dir}/docs/ $(docs) +export PYBUILD_AFTER_CLEAN PYBUILD_AFTER_INSTALL + +override_dh_auto_install: + dh_auto_install + if [ -d $(CURDIR)/debian/tmp/usr/include/python3.7/ ]; then \ + mv $(CURDIR)/debian/tmp/usr/include/python3.7/ \ + $(CURDIR)/debian/tmp/usr/include/python3.7m/ ; \ + fi + +override_dh_auto_test: +ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + ifneq (,$(filter $(DEB_HOST_ARCH), ppc64el)) + -dh_auto_test + else + dh_auto_test + endif +endif + +override_dh_compress: + dh_compress -X.html + +.PHONY: override_dh_auto_clean override_dh_auto_install \ + override_dh_auto_test override_dh_compress diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..bf41fde --- /dev/null +++ b/debian/watch @@ -0,0 +1,3 @@ +version=4 +opts="filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%python-greenlet-$1.tar.gz%" \ +https://github.com/python-greenlet/greenlet/tags (?:.*?/)?v?(\d[\d.]*)\.tar\.gz