From 4b54c3c33a838b427363283933f90c17ca42243b Mon Sep 17 00:00:00 2001 From: lean Date: Wed, 1 Apr 2020 02:24:43 +0800 Subject: [PATCH] python3: bump version --- lang/python/Flask/Makefile | 19 +- lang/python/Jinja2/Makefile | 8 +- lang/python/MarkupSafe/Makefile | 22 +- lang/python/README.md | 84 ++++--- lang/python/Werkzeug/Makefile | 21 +- lang/python/bcrypt/Makefile | 8 +- lang/python/click/Makefile | 23 +- lang/python/django-appconf/Makefile | 57 +++-- lang/python/django-compressor/Makefile | 60 +++-- lang/python/django-constance/Makefile | 29 ++- lang/python/django-formtools/Makefile | 51 ++-- lang/python/django-jsonfield/Makefile | 64 +++-- lang/python/django-picklefield/Makefile | 56 ++--- .../001-no-import-self-during-setup.patch | 19 ++ lang/python/django-postoffice/Makefile | 58 +++-- lang/python/django-ranged-response/Makefile | 51 ++-- lang/python/django-restframework/Makefile | 53 +---- lang/python/django-restframework39/Makefile | 68 ++++++ lang/python/django-simple-captcha/Makefile | 57 +++-- lang/python/django-statici18n/Makefile | 59 +++-- lang/python/django-webpack-loader/Makefile | 49 ++-- lang/python/django/Makefile | 54 ++--- lang/python/django1/Makefile | 91 +++++++ lang/python/django1/files/django-admin | 23 ++ ...001-load-byte-compiled-db-migrations.patch | 11 + lang/python/flup/Makefile | 8 +- lang/python/gunicorn/Makefile | 110 +++++++-- lang/python/homeassistant/Makefile | 76 ------ lang/python/homeassistant/files/hass.init | 18 -- lang/python/itsdangerous/Makefile | 21 +- lang/python/openpyxl/Makefile | 8 +- lang/python/passlib/Makefile | 12 +- lang/python/pillow/Makefile | 11 +- lang/python/pyjwt/Makefile | 8 +- lang/python/pymysql/Config.in | 11 + lang/python/pymysql/Makefile | 47 ++++ lang/python/pyodbc/Makefile | 7 +- lang/python/pypi.mk | 24 ++ lang/python/python-aiohttp-cors/Makefile | 5 +- lang/python/python-aiohttp/Makefile | 12 +- lang/python/python-appdirs/Makefile | 5 +- lang/python/python-asn1crypto/Makefile | 44 +--- lang/python/python-astral/Makefile | 8 +- lang/python/python-async-timeout/Makefile | 5 +- lang/python/python-atomicwrites/Makefile | 41 ++++ lang/python/python-attrs/Makefile | 8 +- lang/python/python-automat/Makefile | 12 +- .../001-do-not-use-setuptools-scm-m2r.patch | 2 +- .../patches/002-omit-visualize.patch | 2 +- .../patches/003-omit-tests.patch | 2 +- lang/python/python-awscli/Makefile | 7 +- lang/python/python-boto3/Makefile | 5 +- lang/python/python-botocore/Makefile | 7 +- lang/python/python-cachelib/Makefile | 5 +- lang/python/python-cachetools/Makefile | 5 +- lang/python/python-certifi/Makefile | 12 +- lang/python/python-cffi/Makefile | 12 +- lang/python/python-chardet/Makefile | 7 +- lang/python/python-colorama/Makefile | 7 +- lang/python/python-constantly/Makefile | 8 +- lang/python/python-contextlib2/Makefile | 5 +- lang/python/python-crcmod/Makefile | 5 +- lang/python/python-crypto/Makefile | 8 +- lang/python/python-cryptodome/Makefile | 12 +- lang/python/python-cryptodomex/Makefile | 12 +- lang/python/python-cryptography/Makefile | 7 +- lang/python/python-curl/Makefile | 12 +- .../0001-Add-locking-support-to-wolfSSL.patch | 128 ---------- lang/python/python-dateutil/Makefile | 11 +- lang/python/python-defusedxml/Makefile | 8 +- lang/python/python-docutils/Makefile | 7 +- lang/python/python-dpkt/Makefile | 5 +- lang/python/python-egenix-mx-base/Makefile | 28 +-- lang/python/python-enum34/Makefile | 14 +- .../python-enum34/patches/001-omit-docs.patch | 11 +- lang/python/python-et_xmlfile/Makefile | 8 +- lang/python/python-evdev/Makefile | 15 +- .../Makefile | 12 +- lang/python/python-futures/Makefile | 7 +- lang/python/python-gmpy2/Makefile | 9 +- lang/python/python-gnupg/Makefile | 7 +- lang/python/python-hyperlink/Makefile | 8 +- lang/python/python-idna/Makefile | 14 +- lang/python/python-ifaddr/Makefile | 6 +- .../python/python-importlib-metadata/Makefile | 40 ---- .../patches/001-fix-scm-version.patch | 8 - lang/python/python-incremental/Makefile | 8 +- lang/python/python-influxdb/Makefile | 5 +- lang/python/python-intelhex/Makefile | 6 +- lang/python/python-ipaddress/Makefile | 8 +- lang/python/python-jdcal/Makefile | 8 +- lang/python/python-jmespath/Makefile | 7 +- lang/python/python-jsonpath-ng/Makefile | 5 +- lang/python/python-ldap/Makefile | 4 +- lang/python/python-libmodbus/Makefile | 58 +++++ lang/python/python-lxml/Makefile | 13 +- lang/python/python-markdown/Makefile | 12 +- lang/python/python-more-itertools/Makefile | 42 ++++ lang/python/python-multidict/Makefile | 4 +- lang/python/python-mysql/Makefile | 65 ----- lang/python/python-mysqlclient/Makefile | 64 +++++ lang/python/python-netdisco/Makefile | 6 +- lang/python/python-oauthlib/Makefile | 7 +- lang/python/python-package-install.sh | 13 +- lang/python/python-package.mk | 10 +- lang/python/python-paho-mqtt/Makefile | 13 +- lang/python/python-parsley/Makefile | 8 +- lang/python/python-pcapy/Makefile | 5 +- lang/python/python-ply/Makefile | 9 +- lang/python/python-psycopg2/Makefile | 5 +- lang/python/python-py/Makefile | 43 ++++ lang/python/python-pyasn1-modules/Makefile | 12 +- lang/python/python-pyasn1/Makefile | 12 +- lang/python/python-pycparser/Makefile | 14 +- lang/python/python-pyopenssl/Makefile | 14 +- lang/python/python-pyotp/Makefile | 8 +- lang/python/python-pyparsing/Makefile | 46 ++++ lang/python/python-pyptlib/Makefile | 8 +- lang/python/python-pyrsistent/Makefile | 9 +- lang/python/python-pyserial/Makefile | 8 +- lang/python/python-pytz/Makefile | 24 +- lang/python/python-qrcode/Makefile | 8 +- lang/python/python-rcssmin/Makefile | 8 +- lang/python/python-requests-oauthlib/Makefile | 16 +- lang/python/python-requests/Makefile | 12 +- lang/python/python-rsa/Makefile | 7 +- lang/python/python-s3transfer/Makefile | 7 +- lang/python/python-schedule/Makefile | 43 ++++ lang/python/python-sentry-sdk/Makefile | 9 +- lang/python/python-service-identity/Makefile | 8 +- lang/python/python-simplejson/Makefile | 23 +- lang/python/python-six/Makefile | 15 +- lang/python/python-slugify/Makefile | 10 +- lang/python/python-sqlalchemy/Makefile | 11 +- lang/python/python-stem/Makefile | 37 +++ lang/python/python-twisted/Makefile | 12 +- .../patches/001-omit-tkconch.patch | 2 +- .../patches/002-omit-tests.patch | 16 +- lang/python/python-txsocksx/Makefile | 8 +- lang/python/python-urllib3/Makefile | 12 +- .../python-voluptuous-serialize/Makefile | 12 +- lang/python/python-voluptuous/Makefile | 8 +- lang/python/python-wcwidth/Makefile | 42 ++++ lang/python/python-yaml/Makefile | 12 +- lang/python/python-yarl/Makefile | 4 +- lang/python/python-zeroconf/Makefile | 12 +- .../{python3-zipp => python-zipp}/Makefile | 15 +- lang/python/python-zope-interface/Makefile | 12 +- .../patches/001-omit-tests.patch | 8 +- lang/python/python/Makefile | 11 +- .../files/python-package-pkg-resources.mk | 28 +++ .../python/files/python-package-setuptools.mk | 3 +- lang/python/python/patches/025-utime.patch | 11 + ...test-to-get-float-byte-order-GH-9085.patch | 209 ++++++++++++++++ ...po-34585-run-autoconf-GH-9411-edited.patch | 218 +++++++++++++++++ lang/python/python3-asgiref/Makefile | 35 +++ lang/python/python3-bottle/Makefile | 5 +- .../python3-django-cors-headers/Makefile | 34 +++ .../python3-django-etesync-journal/Makefile | 34 +++ .../python3-drf-nested-routers/Makefile | 39 +++ lang/python/python3-maxminddb/Makefile | 10 +- lang/python/python3-netifaces/Makefile | 12 +- lang/python/python3-package.mk | 12 +- lang/python/python3-pyroute2/Makefile | 16 +- lang/python/python3-speedtest-cli/Makefile | 35 +++ lang/python/python3-sqlparse/Makefile | 40 ++++ lang/python/python3-unidecode/Makefile | 18 +- lang/python/python3-version.mk | 4 +- .../patches/001-fix-scm-version.patch | 11 - lang/python/python3/Makefile | 18 +- .../files/python3-package-pkg-resources.mk | 30 +++ .../files/python3-package-setuptools.mk | 3 +- .../python3/files/python3-package-xml.mk | 2 +- .../python3/patches/001-enable-zlib.patch | 15 +- .../003-do-not-run-distutils-tests.patch | 8 +- .../004-do-not-write-bytes-codes.patch | 4 +- ...multiarch-paths-when-cross-compiling.patch | 12 + ...06-remove-multi-arch-and-local-paths.patch | 19 -- .../008-distutils-use-python-sysroot.patch | 4 +- ...add-rt-lib-dirs-when-cross-compiling.patch | 4 +- ...uildinfo-date-time-source-date-epoch.patch | 6 +- .../014-remove-platform-so-suffix.patch | 6 +- .../patches/015-abort-on-failed-modules.patch | 4 +- .../patches/016-adjust-config-paths.patch | 12 +- .../020-ssl-module-emulate-tls-methods.patch | 223 ++++++++++++++++++ .../patches/021-openssl-deprecated.patch | 63 +++++ lang/python/ruamel-yaml/Makefile | 8 +- lang/python/text-unidecode/Makefile | 12 +- lang/python/vobject/Makefile | 7 +- lang/python/xmltodict/Makefile | 6 +- 190 files changed, 2677 insertions(+), 1630 deletions(-) create mode 100644 lang/python/django-picklefield/patches/001-no-import-self-during-setup.patch create mode 100644 lang/python/django-restframework39/Makefile create mode 100644 lang/python/django1/Makefile create mode 100644 lang/python/django1/files/django-admin create mode 100644 lang/python/django1/patches/001-load-byte-compiled-db-migrations.patch delete mode 100644 lang/python/homeassistant/Makefile delete mode 100644 lang/python/homeassistant/files/hass.init create mode 100644 lang/python/pymysql/Config.in create mode 100644 lang/python/pymysql/Makefile create mode 100644 lang/python/pypi.mk create mode 100644 lang/python/python-atomicwrites/Makefile delete mode 100644 lang/python/python-curl/patches/0001-Add-locking-support-to-wolfSSL.patch rename lang/python/{python3-flask-login => python-flask-login}/Makefile (76%) delete mode 100644 lang/python/python-importlib-metadata/Makefile delete mode 100644 lang/python/python-importlib-metadata/patches/001-fix-scm-version.patch create mode 100644 lang/python/python-libmodbus/Makefile create mode 100644 lang/python/python-more-itertools/Makefile delete mode 100644 lang/python/python-mysql/Makefile create mode 100644 lang/python/python-mysqlclient/Makefile create mode 100644 lang/python/python-py/Makefile create mode 100644 lang/python/python-pyparsing/Makefile create mode 100644 lang/python/python-schedule/Makefile create mode 100644 lang/python/python-stem/Makefile create mode 100644 lang/python/python-wcwidth/Makefile rename lang/python/{python3-zipp => python-zipp}/Makefile (64%) create mode 100644 lang/python/python/files/python-package-pkg-resources.mk create mode 100644 lang/python/python/patches/025-utime.patch create mode 100644 lang/python/python/patches/026-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch create mode 100644 lang/python/python/patches/027-bpo-34585-run-autoconf-GH-9411-edited.patch create mode 100644 lang/python/python3-asgiref/Makefile create mode 100644 lang/python/python3-django-cors-headers/Makefile create mode 100644 lang/python/python3-django-etesync-journal/Makefile create mode 100644 lang/python/python3-drf-nested-routers/Makefile create mode 100644 lang/python/python3-speedtest-cli/Makefile create mode 100644 lang/python/python3-sqlparse/Makefile delete mode 100644 lang/python/python3-zipp/patches/001-fix-scm-version.patch create mode 100644 lang/python/python3/files/python3-package-pkg-resources.mk create mode 100644 lang/python/python3/patches/006-do-not-add-multiarch-paths-when-cross-compiling.patch delete mode 100644 lang/python/python3/patches/006-remove-multi-arch-and-local-paths.patch create mode 100644 lang/python/python3/patches/020-ssl-module-emulate-tls-methods.patch create mode 100644 lang/python/python3/patches/021-openssl-deprecated.patch diff --git a/lang/python/Flask/Makefile b/lang/python/Flask/Makefile index 7b95a32d..08131551 100644 --- a/lang/python/Flask/Makefile +++ b/lang/python/Flask/Makefile @@ -5,18 +5,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=Flask -PKG_VERSION:=1.0.3 +PKG_VERSION:=1.1.1 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/F/Flask -PKG_HASH:=ad7c6d841e64296b962296c2c2dabc6543752985727af86a975072dea984b6f3 +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=13f9f196f330c7c2c5d7a5cf91af894110ca0215ac051b5844701f2bfd934d52 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=BSD-3-Clause -PKG_LICENSE_FILES:=LICENSE +PKG_LICENSE_FILES:=LICENSE.rst PKG_CPE_ID:=cpe:/a:palletsprojects:flask +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -24,8 +24,8 @@ define Package/python3-flask SECTION:=lang CATEGORY:=Languages SUBMENU:=Python - TITLE:=python3-flask - URL:=https://github.com/pallets/flask/ + TITLE:=Flask + URL:=https://palletsprojects.com/p/flask/ DEPENDS:=+python3-asyncio +python3-click +python3-codecs +python3-decimal \ +python3-itsdangerous +python3-jinja2 +python3 +python3-logging \ +python3-markupsafe +python3-multiprocessing +python3-setuptools \ @@ -34,9 +34,10 @@ define Package/python3-flask endef define Package/python3-flask/description -Flask is a microframework for Python based on Werkzeug, Jinja 2 and good -intentions. And before you ask: It.s BSD licensed! + Flask is a microframework for Python based on Werkzeug, Jinja 2 and good + intentions. And before you ask: It.s BSD licensed! endef $(eval $(call Py3Package,python3-flask)) $(eval $(call BuildPackage,python3-flask)) +$(eval $(call BuildPackage,python3-flask-src)) diff --git a/lang/python/Jinja2/Makefile b/lang/python/Jinja2/Makefile index e7f458da..6be18dbc 100644 --- a/lang/python/Jinja2/Makefile +++ b/lang/python/Jinja2/Makefile @@ -5,18 +5,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=Jinja2 -PKG_VERSION:=2.10.1 +PKG_VERSION:=2.10.3 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/J/Jinja2 -PKG_HASH:=065c4f02ebe7f7cf559e49ee5a95fb800a9e4528727aec6f24402a5374c65013 +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=9fe95f19286cfefaa917656583d020be14e7859c6b0252588391e47db34527de PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE PKG_CPE_ID:=cpe:/a:pocoo:jinja2 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/MarkupSafe/Makefile b/lang/python/MarkupSafe/Makefile index d3e119a0..dde6dede 100644 --- a/lang/python/MarkupSafe/Makefile +++ b/lang/python/MarkupSafe/Makefile @@ -6,19 +6,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=MarkupSafe PKG_VERSION:=1.1.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/M/MarkupSafe +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b -PKG_BUILD_DEPENDS:=python python3 -PKG_LICENSE:=BSD-3-Clause -PKG_LICENSE_FILES:=LICENSE + PKG_MAINTAINER:=Daniel Golle +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE.rst -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -26,15 +23,16 @@ define Package/python3-markupsafe SECTION:=lang CATEGORY:=Languages SUBMENU:=Python - URL:=https://github.com/pallets/markupsafe/ - TITLE:=python3-markupsafe + TITLE:=MarkupSafe + URL:=https://palletsprojects.com/p/markupsafe/ DEPENDS:=+python3-light VARIANT:=python3 endef define Package/python3-markupsafe/description -MarkupSafe implements a XML/HTML/XHTML Markup safe string for Python + MarkupSafe implements a text object that escapes characters so it is safe to use in HTML and XML. endef $(eval $(call Py3Package,python3-markupsafe)) $(eval $(call BuildPackage,python3-markupsafe)) +$(eval $(call BuildPackage,python3-markupsafe-src)) diff --git a/lang/python/README.md b/lang/python/README.md index 9c43fd10..501c1e69 100644 --- a/lang/python/README.md +++ b/lang/python/README.md @@ -12,13 +12,11 @@ 5. [Build considerations](#build-considerations) 6. [General folder structure](#general-folder-structure) 7. [Building a Python[3] package](#building-a-python3-package) - 1. [PKG_BUILD_DIR](#pkg_build_dir) - 2. [PKG_UNPACK](#pkg_unpack) - 3. [Include python[3]-package.mk](#include-python3-packagemk) - 4. [Add Package/ OpenWrt definitions](#add-packagepkg_name-openwrt-definitions) - 5. [Wrapping things up so that they build](#wrapping-things-up-so-that-they-build) - 6. [Customizing things](#customizing-things) - 7. [Host-side Python packages for build](#host-side-python-packages-for-build) + 1. [Include python[3]-package.mk](#include-python3-packagemk) + 2. [Add Package/ OpenWrt definitions](#add-packagepkg_name-openwrt-definitions) + 3. [Wrapping things up so that they build](#wrapping-things-up-so-that-they-build) + 4. [Customizing things](#customizing-things) + 5. [Host-side Python packages for build](#host-side-python-packages-for-build) ## Description @@ -52,7 +50,7 @@ Leading up to "The Snap": * If a replacement cannot be found, the program will be removed during "The Snap" * Python 2 libraries will remain in the feed until "The Snap" - * A Python 2-only library will be transitioned to Python 3 (or a suitable replacement found), if its Python 3 version is a dependency of another package in the feed + * For any Python 2-only libraries, a Python 3 version will be added (or a suitable replacement found), if its Python 3 version is a dependency of another package in the feed * Python 2 libraries will receive normal updates until 31 October 2019 * From 31 October 2019 onward: * Python 2-only libraries will receive security updates only @@ -171,33 +169,6 @@ This section will describe both, and then it can be inferred which is for which. Packaging for both Python & Python3 uses the `VARIANT` mechanism for packaging inside OpenWrt. (#### FIXME: find a link for this later if it exists) -### PKG_BUILD_DIR - -It's important when packaging for both Python & Python3 to override this variable, so that the build directory differs for each variant. - -Typically it's just something like: -``` -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pyasn1-$(PKG_VERSION) -``` -Where `pyasn1` should be some other name, or maybe `PKG_NAME` - -This should be added before this include: -``` -include $(INCLUDE_DIR)/package.mk -``` - -### PKG_UNPACK - -In many cases, this needs to be overriden. This is usually because the way Python packages are archived, don't follow the convention of other `tar.gz` packages. - -So, something like: -``` -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) -``` -should be added. - -It's not important whether this is after or before `include $(INCLUDE_DIR)/package.mk` - ### Include python[3]-package.mk If packaging for Python, add this after `include $(INCLUDE_DIR)/package.mk` @@ -214,6 +185,43 @@ Order doesn't matter between `python-package.mk` & `python3-package.mk`. These will make sure that build rules for Python or Python3 can be specified and picked up for build. +### Include pypi.mk (optional) + +If the package source code will be downloaded from [pypi.org](https://pypi.org/), including `pypi.mk` can help simplify the package Makefile. + +To use `pypi.mk`, add this **before** `include $(INCLUDE_DIR)/package.mk`: +``` +include ../pypi.mk +``` + +`pypi.mk` has several `PYPI_*` variables that must/can be set (see below); these should be set before `pypi.mk` is included, i.e. before the `include ../pypi.mk` line. + +`pypi.mk` also provides default values for `PKG_SOURCE` and `PKG_SOURCE_URL`, so these variables may be omitted. + +One variable is required: + +* `PYPI_NAME`: Package name on pypi.org. This should match the PyPI name exactly. + + For example (from the `python-yaml` package): + ``` + PYPI_NAME:=PyYAML + ``` + +These variables are optional: + +* `PYPI_SOURCE_NAME`: Package name component of the source tarball filename + Default: Same value as `PYPI_NAME` + +* `PYPI_SOURCE_EXT`: File extension of the source tarball filename + Default: `tar.gz` + +`pypi.mk` constructs the default `PKG_SOURCE` value from these variables (and `PKG_VERSION`): +``` +PKG_SOURCE?=$(PYPI_SOURCE_NAME)-$(PKG_VERSION).$(PYPI_SOURCE_EXT) +``` + +The `PYPI_SOURCE_*` variables allow this default `PKG_SOURCE` value to be customized as necessary. + ### Add Package/ OpenWrt definitions This part is similar to default OpenWrt packages. @@ -366,13 +374,13 @@ define PyPackage/python-example/filespec endef ``` -If there is an `examples` directory and `test_*.py` files that can be omitted to save space, this can be specified as: +If the package installs a `example_package` directory inside `PYTHON_PKG_DIR`, and there is an `examples` directory and `test_*.py` files that can be omitted to save space, this can be specified as: ``` define PyPackage/python-example/filespec +|$(PYTHON_PKG_DIR) --|$(PYTHON_PKG_DIR)/examples --|$(PYTHON_PKG_DIR)/test_*.py +-|$(PYTHON_PKG_DIR)/example_package/examples +-|$(PYTHON_PKG_DIR)/example_package/test_*.py endef ``` diff --git a/lang/python/Werkzeug/Makefile b/lang/python/Werkzeug/Makefile index 9c5c6618..deb3a51b 100644 --- a/lang/python/Werkzeug/Makefile +++ b/lang/python/Werkzeug/Makefile @@ -5,21 +5,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=Werkzeug -PKG_VERSION:=0.15.2 +PKG_VERSION:=0.16.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/W/Werkzeug -PKG_HASH:=0a73e8bb2ff2feecfc5d56e6f458f5b99290ef34f565ffb2665801ff7de6af7a +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=7280924747b5733b246fe23972186c6b348f9ae29724135a6dfc1e53cea433e7 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=BSD-3-Clause -PKG_LICENSE_FILES:=LICENSE - -PKG_BUILD_DEPENDS:=python python3 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) +PKG_LICENSE_FILES:=LICENSE.rst +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -27,17 +23,16 @@ define Package/python3-werkzeug SECTION:=lang CATEGORY:=Languages SUBMENU:=Python + TITLE:=Werkzeug URL:=https://palletsprojects.com/p/werkzeug/ - TITLE:=python3-werkzeug DEPENDS:=+python3-light +python3-email VARIANT:=python3 endef define Package/python3-werkzeug/description -Werkzeug - -The Python WSGI Utility Library + The comprehensive WSGI web application library. endef $(eval $(call Py3Package,python3-werkzeug)) $(eval $(call BuildPackage,python3-werkzeug)) +$(eval $(call BuildPackage,python3-werkzeug-src)) diff --git a/lang/python/bcrypt/Makefile b/lang/python/bcrypt/Makefile index d8ba6d11..eb56b00e 100644 --- a/lang/python/bcrypt/Makefile +++ b/lang/python/bcrypt/Makefile @@ -9,12 +9,9 @@ PKG_NAME:=bcrypt PKG_VERSION:=3.1.7 PKG_RELEASE:=1 -PKG_SOURCE:=bcrypt-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:= https://files.pythonhosted.org/packages/source/b/$(PKG_NAME) +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=0b0069c752ec14172c5f78208f1863d7ad6755a6fae6fe76ec2c80d13be41e42 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-bcrypt-$(PKG_VERSION) -PKG_MAINTAINER:=Daniel Dickinson PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE @@ -22,12 +19,11 @@ PKG_BUILD_DEPENDS:=libffi/host HOST_PYTHON_PACKAGE_BUILD_DEPENDS:="cffi>=1.1" HOST_PYTHON3_PACKAGE_BUILD_DEPENDS:="cffi>=1.1" +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/bcrypt/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/click/Makefile b/lang/python/click/Makefile index 02135789..4d237083 100644 --- a/lang/python/click/Makefile +++ b/lang/python/click/Makefile @@ -5,20 +5,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=click -PKG_VERSION:=6.7 +PKG_VERSION:=7.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://pypi.python.org/packages/95/d9/c3336b6b5711c3ab9d1d3a80f1a3e2afeb9d8c02a7166462f6cc96570897/ -PKG_HASH:=f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b -PKG_BUILD_DEPENDS:=python python3 +PYPI_NAME:=$(PKG_NAME) +PYPI_SOURCE_NAME:=Click +PKG_HASH:=5b94b49521f6456670fdb30cd82a4eca9412788a93fa6dd6df72c94d5a8ff2d7 + +PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE -PKG_MAINTAINER:=Daniel Golle - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -26,15 +24,16 @@ define Package/python3-click SECTION:=lang CATEGORY:=Languages SUBMENU:=Python - URL:=http://github.com/mitsuhiko/click - TITLE:=python3-click + TITLE:=Click + URL:=https://palletsprojects.com/p/click/ DEPENDS:=+python3-light VARIANT:=python3 endef define Package/python3-click/description -A simple wrapper around optparse for powerful command line utilities. + Composable command line interface toolkit endef $(eval $(call Py3Package,python3-click)) $(eval $(call BuildPackage,python3-click)) +$(eval $(call BuildPackage,python3-click-src)) diff --git a/lang/python/django-appconf/Makefile b/lang/python/django-appconf/Makefile index 8e81051e..34ce696e 100644 --- a/lang/python/django-appconf/Makefile +++ b/lang/python/django-appconf/Makefile @@ -8,65 +8,62 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-appconf -PKG_VERSION:=1.0.2 -PKG_RELEASE:=4 +PKG_VERSION:=1.0.3 +PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/$(PKG_NAME)/ -PKG_HASH:=6a4d9aea683b4c224d97ab8ee11ad2d29a37072c0c6c509896dd9857466fb261 +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=35f13ca4d567f132b960e2cd4c832c2d03cb6543452d34e29b7ba10371ba80e3 PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-appconf/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=Helper class for handling config defaults - URL:=https://$(PKG_NAME).readthedocs.io + URL:=https://django-appconf.readthedocs.io endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-appconf +$(call Package/django-appconf/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django + +PACKAGE_python-django-appconf:python \ + python-django1 \ + +PACKAGE_python-django-appconf:python-six VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-appconf/description A helper class for handling configuration defaults of packaged apps gracefully endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-appconf +$(call Package/django-appconf/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + +PACKAGE_python3-django-appconf:python3 \ + +PACKAGE_python3-django-appconf:python3-django1 \ + +PACKAGE_python3-django-appconf:python3-six VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-appconf/description +$(call Package/python-django-appconf/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-appconf)) +$(eval $(call BuildPackage,python-django-appconf)) +$(eval $(call BuildPackage,python-django-appconf-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-appconf)) +$(eval $(call BuildPackage,python3-django-appconf)) +$(eval $(call BuildPackage,python3-django-appconf-src)) diff --git a/lang/python/django-compressor/Makefile b/lang/python/django-compressor/Makefile index 6638bae6..0c277d36 100644 --- a/lang/python/django-compressor/Makefile +++ b/lang/python/django-compressor/Makefile @@ -9,71 +9,67 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-compressor PKG_VERSION:=2.2 -PKG_RELEASE:=5 +PKG_RELEASE:=7 -PKG_SOURCE:=django_compressor-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/$(PKG_NAME)/ +PYPI_NAME:=$(PKG_NAME) +PYPI_SOURCE_NAME:=django_compressor PKG_HASH:=9616570e5b08e92fa9eadc7a1b1b49639cce07ef392fc27c74230ab08075b30f PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-compressor/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=Compress CSS/JS into single cached files - URL:=https://$(PKG_NAME).readthedocs.io + URL:=https://django-compressor.readthedocs.io endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-compressor +$(call Package/django-compressor/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django \ - +PACKAGE_python-$(PKG_NAME):python-django-appconf \ - +PACKAGE_python-$(PKG_NAME):python-rcssmin + +PACKAGE_python-django-compressor:python \ + python-django1 \ + +PACKAGE_python-django-compressor:python-django-appconf \ + +PACKAGE_python-django-compressor:python-rcssmin VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-compressor/description Compresses linked and inline JavaScript or CSS into single cached files. Note that the JavaScript filter is not being installed as a dependency. You'll need to build the rjsmin module (it is not par of the openwrt standard feeds) to use JavaScript functionality. endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-compressor +$(call Package/django-compressor/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django \ - +PACKAGE_python3-$(PKG_NAME):python3-django-appconf \ - +PACKAGE_python3-$(PKG_NAME):python3-rcssmin + +PACKAGE_python3-django-compressor:python3 \ + +PACKAGE_python3-django-compressor:python3-django1 \ + +PACKAGE_python3-django-compressor:python3-django-appconf \ + +PACKAGE_python3-django-compressor:python3-rcssmin VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-compressor/description +$(call Package/python-django-compressor/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-compressor)) +$(eval $(call BuildPackage,python-django-compressor)) +$(eval $(call BuildPackage,python-django-compressor-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-compressor)) +$(eval $(call BuildPackage,python3-django-compressor)) +$(eval $(call BuildPackage,python3-django-compressor-src)) diff --git a/lang/python/django-constance/Makefile b/lang/python/django-constance/Makefile index 749c0aae..1332c44d 100644 --- a/lang/python/django-constance/Makefile +++ b/lang/python/django-constance/Makefile @@ -9,22 +9,19 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-constance PKG_VERSION:=2.3.1 -PKG_RELEASE:=3 +PKG_RELEASE:=5 + +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=a49735063b2c30015d2e52a90609ea9798da722ed070f091de51714758a5d018 + +PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=BSD-3-Clause -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/django-constance -PKG_HASH:=a49735063b2c30015d2e52a90609ea9798da722ed070f091de51714758a5d018 -PKG_MAINTAINER:=Alexandru Ardelean - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-django-constance-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-django-constance/Default SUBMENU:=Python SECTION:=lang @@ -37,9 +34,9 @@ define Package/python-django-constance $(call Package/python-django-constance/Default) DEPENDS:= \ +PACKAGE_python-django-constance:python \ - python-django + python-django1 VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef define Package/python-django-constance/description @@ -50,18 +47,20 @@ define Package/python3-django-constance $(call Package/python-django-constance/Default) DEPENDS:= \ +PACKAGE_python3-django-constance:python3 \ - python3-django + +PACKAGE_python3-django-constance:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef define Package/python3-django-constance/description -$(call define Package/python-django-constance/description) +$(call Package/python-django-constance/description) . (Variant for Python3) endef $(eval $(call PyPackage,python-django-constance)) $(eval $(call BuildPackage,python-django-constance)) +$(eval $(call BuildPackage,python-django-constance-src)) + $(eval $(call Py3Package,python3-django-constance)) $(eval $(call BuildPackage,python3-django-constance)) +$(eval $(call BuildPackage,python3-django-constance-src)) diff --git a/lang/python/django-formtools/Makefile b/lang/python/django-formtools/Makefile index 445cd344..c391da95 100644 --- a/lang/python/django-formtools/Makefile +++ b/lang/python/django-formtools/Makefile @@ -7,65 +7,60 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-formtools PKG_VERSION:=2.1 -PKG_RELEASE:=5 +PKG_RELEASE:=7 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/$(PKG_NAME)/ +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=7703793f1675aa6e871f9fed147e8563816d7a5b9affdc5e3459899596217f7c PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-formtools/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=High-level abstractions for Django forms - URL:=https://$(PKG_NAME).readthedocs.io + URL:=https://django-formtools.readthedocs.io endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-formtools +$(call Package/django-formtools/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django + +PACKAGE_python-django-formtools:python \ + python-django1 VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-formtools/description Django "formtools" is a set of high-level abstractions for Django forms. Currently for form previews and multi-step forms. endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-formtools +$(call Package/django-formtools/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + +PACKAGE_python3-django-formtools:python3 \ + +PACKAGE_python3-django-formtools:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-formtools/description +$(call Package/python-django-formtools/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-formtools)) +$(eval $(call BuildPackage,python-django-formtools)) +$(eval $(call BuildPackage,python-django-formtools-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-formtools)) +$(eval $(call BuildPackage,python3-django-formtools)) +$(eval $(call BuildPackage,python3-django-formtools-src)) diff --git a/lang/python/django-jsonfield/Makefile b/lang/python/django-jsonfield/Makefile index 9e95d3a9..2ed18e8a 100644 --- a/lang/python/django-jsonfield/Makefile +++ b/lang/python/django-jsonfield/Makefile @@ -8,65 +8,63 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-jsonfield -PKG_VERSION:=1.0.1 -PKG_RELEASE:=4 +PKG_VERSION:=2.1.1 +PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/$(PKG_NAME)/ -PKG_HASH:=6c0afd5554739365b55d86e285cf966cc3a45682fff963463364ea1f6511ca3e +PYPI_NAME:=jsonfield +PKG_HASH:=ed7c5e1829e9453e24a8bebef1e702ffe402e6def6b326f0e0b88764c59a6dc7 PKG_MAINTAINER:=Alexandru Ardelean -PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-jsonfield/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages - TITLE:=JSONField for django models - URL:=https://github.com/adamchainz/django-jsonfield + TITLE:=A reusable Django field to store validated JSON in models + URL:=https://github.com/rpkilby/jsonfield endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-jsonfield +$(call Package/django-jsonfield/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django + +PACKAGE_python-django-jsonfield:python \ + python-django1 \ + +PACKAGE_python-django-jsonfield:python-six VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description - JSONField for django models +define Package/python-django-jsonfield/description + jsonfield is a reusable model field that allows you to store validated + JSON, automatically handling serialization to and from the database. endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-jsonfield +$(call Package/django-jsonfield/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + +PACKAGE_python3-django-jsonfield:python3 \ + +PACKAGE_python3-django-jsonfield:python3-django1 \ + +PACKAGE_python3-django-jsonfield:python3-six VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-jsonfield/description +$(call Package/python-django-jsonfield/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-jsonfield)) +$(eval $(call BuildPackage,python-django-jsonfield)) +$(eval $(call BuildPackage,python-django-jsonfield-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-jsonfield)) +$(eval $(call BuildPackage,python3-django-jsonfield)) +$(eval $(call BuildPackage,python3-django-jsonfield-src)) diff --git a/lang/python/django-picklefield/Makefile b/lang/python/django-picklefield/Makefile index 9a7331fc..c240b3f4 100644 --- a/lang/python/django-picklefield/Makefile +++ b/lang/python/django-picklefield/Makefile @@ -8,26 +8,27 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-picklefield -PKG_VERSION:=1.1.0 -PKG_RELEASE:=3 +PKG_VERSION:=2.1.1 +PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/$(PKG_NAME)/ -PKG_HASH:=ce7fee5c6558fe5dc8924993d994ccde75bb75b91cd82787cbd4c92b95a69f9c +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=67a5e156343e3b032cac2f65565f0faa81635a99c7da74b0f07a0f5db467b646 PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) +PYTHON_PKG_SETUP_VARS:= \ + PKG_VERSION="$(PKG_VERSION)" +PYTHON3_PKG_SETUP_VARS:= \ + PKG_VERSION="$(PKG_VERSION)" -define Package/$(PKG_NAME)/Default +define Package/django-picklefield/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages @@ -35,38 +36,37 @@ define Package/$(PKG_NAME)/Default URL:=https://github.com/gintas/django-picklefield/ endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-picklefield +$(call Package/django-picklefield/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django + +PACKAGE_python-django-picklefield:python \ + python-django1 VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-picklefield/description Pickled object field for Django endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-picklefield +$(call Package/django-picklefield/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + +PACKAGE_python3-django-picklefield:python3 \ + +PACKAGE_python3-django-picklefield:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-picklefield/description +$(call Package/python-django-picklefield/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-picklefield)) +$(eval $(call BuildPackage,python-django-picklefield)) +$(eval $(call BuildPackage,python-django-picklefield-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-picklefield)) +$(eval $(call BuildPackage,python3-django-picklefield)) +$(eval $(call BuildPackage,python3-django-picklefield-src)) diff --git a/lang/python/django-picklefield/patches/001-no-import-self-during-setup.patch b/lang/python/django-picklefield/patches/001-no-import-self-during-setup.patch new file mode 100644 index 00000000..473a4439 --- /dev/null +++ b/lang/python/django-picklefield/patches/001-no-import-self-during-setup.patch @@ -0,0 +1,19 @@ +--- a/setup.py ++++ b/setup.py +@@ -2,14 +2,14 @@ from __future__ import unicode_literals + + from setuptools import find_packages, setup + +-import picklefield ++import os + + with open('README.rst') as file_: + long_description = file_.read() + + setup( + name='django-picklefield', +- version=picklefield.__version__, ++ version=os.getenv('PKG_VERSION'), + description='Pickled object field for Django', + long_description=long_description, + author='Simon Charette', diff --git a/lang/python/django-postoffice/Makefile b/lang/python/django-postoffice/Makefile index cd8ea3db..20af16ee 100644 --- a/lang/python/django-postoffice/Makefile +++ b/lang/python/django-postoffice/Makefile @@ -8,26 +8,23 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-postoffice -PKG_VERSION:=3.1.0 -PKG_RELEASE:=4 +PKG_VERSION:=3.2.1 +PKG_RELEASE:=1 -PKG_SOURCE:=django-post_office-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/django-post_office -PKG_HASH:=827937a944fe47cea393853069cd9315d080298c8ddb0faf787955d6aa51a030 +PYPI_NAME:=django-post-office +PYPI_SOURCE_NAME:=django-post_office +PKG_HASH:=e32427822f647719575094f790ca949ef9f9827ec0e8378cb021f01f3834b2a4 PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE.txt -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-postoffice/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages @@ -35,41 +32,40 @@ define Package/$(PKG_NAME)/Default URL:=https://github.com/ui/django-post_office endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-postoffice +$(call Package/django-postoffice/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django \ - +PACKAGE_python-$(PKG_NAME):python-django-jsonfield + +PACKAGE_python-django-postoffice:python \ + python-django1 \ + +PACKAGE_python-django-postoffice:python-django-jsonfield VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-postoffice/description A Django app to monitor and send mail asynchronously, complete with template support endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-postoffice +$(call Package/django-postoffice/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django \ - +PACKAGE_python3-$(PKG_NAME):python3-django-jsonfield + +PACKAGE_python3-django-postoffice:python3 \ + +PACKAGE_python3-django-postoffice:python3-django1 \ + +PACKAGE_python3-django-postoffice:python3-django-jsonfield VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-postoffice/description +$(call Package/python-django-postoffice/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-postoffice)) +$(eval $(call BuildPackage,python-django-postoffice)) +$(eval $(call BuildPackage,python-django-postoffice-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-postoffice)) +$(eval $(call BuildPackage,python3-django-postoffice)) +$(eval $(call BuildPackage,python3-django-postoffice-src)) diff --git a/lang/python/django-ranged-response/Makefile b/lang/python/django-ranged-response/Makefile index 35bd4772..896073f6 100644 --- a/lang/python/django-ranged-response/Makefile +++ b/lang/python/django-ranged-response/Makefile @@ -7,64 +7,59 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-ranged-response PKG_VERSION:=0.2.0 -PKG_RELEASE:=6 +PKG_RELEASE:=7 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/$(PKG_NAME)/ +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=f71fff352a37316b9bead717fc76e4ddd6c9b99c4680cdf4783b9755af1cf985 PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-ranged-response/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=Add Content-Range: to FileResponse - URL:=https://github.com/wearespindle/django-ranged-fileresponse + URL:=https://github.com/i3thuan5/django-ranged-response endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-ranged-response +$(call Package/django-ranged-response/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django + +PACKAGE_python-django-ranged-response:python \ + python-django1 VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-ranged-response/description Modified Django FileResponse that adds Content-Range headers. endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-ranged-response +$(call Package/django-ranged-response/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + +PACKAGE_python3-django-ranged-response:python3 \ + +PACKAGE_python3-django-ranged-response:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-ranged-response/description +$(call Package/python-django-ranged-response/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-ranged-response)) +$(eval $(call BuildPackage,python-django-ranged-response)) +$(eval $(call BuildPackage,python-django-ranged-response-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-ranged-response)) +$(eval $(call BuildPackage,python3-django-ranged-response)) +$(eval $(call BuildPackage,python3-django-ranged-response-src)) diff --git a/lang/python/django-restframework/Makefile b/lang/python/django-restframework/Makefile index 45c8d7e1..f18b8811 100644 --- a/lang/python/django-restframework/Makefile +++ b/lang/python/django-restframework/Makefile @@ -8,65 +8,36 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-restframework -PKG_VERSION:=3.9.0 -PKG_RELEASE:=4 +PKG_VERSION:=3.11.0 +PKG_RELEASE:=2 -PKG_SOURCE:=djangorestframework-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/djangorestframework -PKG_HASH:=607865b0bb1598b153793892101d881466bd5a991de12bd6229abb18b1c86136 +PYPI_NAME:=djangorestframework +PKG_HASH:=e782087823c47a26826ee5b6fa0c542968219263fb3976ec3c31edab23a4001f PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.md -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk -include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/python3-django-restframework SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=Web APIs for Django, made easy. URL:=https://www.django-rest-framework.org -endef - -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) - DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django - VARIANT:=python - MDEPENDS:=python-django -endef - -define Package/python-$(PKG_NAME)/description - Web APIs for Django, made easy. -endef - -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) - DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + DEPENDS:=+python3 +django VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-restframework/description + Web APIs for Django, made easy. . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) - -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-restframework)) +$(eval $(call BuildPackage,python3-django-restframework)) +$(eval $(call BuildPackage,python3-django-restframework-src)) diff --git a/lang/python/django-restframework39/Makefile b/lang/python/django-restframework39/Makefile new file mode 100644 index 00000000..5cdb76bf --- /dev/null +++ b/lang/python/django-restframework39/Makefile @@ -0,0 +1,68 @@ +# +# Copyright (C) 2007-2017 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=django-restframework39 +PKG_VERSION:=3.9.4 +PKG_RELEASE:=1 + +PYPI_NAME:=djangorestframework +PKG_HASH:=c12869cfd83c33d579b17b3cb28a2ae7322a53c3ce85580c2a2ebe4e3f56c4fb + +PKG_MAINTAINER:=Alexandru Ardelean +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE.md + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python-package.mk +include ../python3-package.mk + +define Package/django-restframework39/Default + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Web APIs for Django, made easy. + URL:=https://www.django-rest-framework.org +endef + +define Package/python-django-restframework39 +$(call Package/django-restframework39/Default) + DEPENDS:= \ + +PACKAGE_python-django-restframework39:python \ + python-django1 + VARIANT:=python + MDEPENDS:=python-django1 +endef + +define Package/python-django-restframework39/description + Web APIs for Django, made easy. (3.9 series) +endef + +define Package/python3-django-restframework39 +$(call Package/django-restframework39/Default) + DEPENDS:= \ + +PACKAGE_python3-django-restframework39:python3 \ + +PACKAGE_python3-django-restframework39:python3-django1 + CONFLICTS:=python3-django-restframework + VARIANT:=python3 +endef + +define Package/python3-django-restframework39/description +$(call Package/python-django-restframework39/description) +. +(Variant for Python3) +endef + +$(eval $(call PyPackage,python-django-restframework39)) +$(eval $(call BuildPackage,python-django-restframework39)) +$(eval $(call BuildPackage,python-django-restframework39-src)) + +$(eval $(call Py3Package,python3-django-restframework39)) +$(eval $(call BuildPackage,python3-django-restframework39)) +$(eval $(call BuildPackage,python3-django-restframework39-src)) diff --git a/lang/python/django-simple-captcha/Makefile b/lang/python/django-simple-captcha/Makefile index 20b488ce..a4431aa5 100644 --- a/lang/python/django-simple-captcha/Makefile +++ b/lang/python/django-simple-captcha/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-simple-captcha -PKG_VERSION:=0.5.11 -PKG_RELEASE:=4 +PKG_VERSION:=0.5.12 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/mbi/django-simple-captcha/tar.gz/v$(PKG_VERSION)? -PKG_HASH:=7ca26a4f48e14e5f8be022c0dc099ef98980f3fc99f403ca565ab1f3addaee5b +PKG_HASH:=89db73a3883573ad5e22c511948a5500491f9848363174d835a2364750c81a77 PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=MIT @@ -27,7 +27,7 @@ include ../python3-package.mk PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) -define Package/$(PKG_NAME)/Default +define Package/django-simple-captcha/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages @@ -35,45 +35,44 @@ define Package/$(PKG_NAME)/Default URL:=https://github.com/mbi/django-simple-captcha endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-simple-captcha +$(call Package/django-simple-captcha/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - +PACKAGE_python-$(PKG_NAME):python-six \ - python-django \ - +PACKAGE_python-$(PKG_NAME):python-pillow \ - +PACKAGE_python-$(PKG_NAME):python-django-ranged-response + +PACKAGE_python-django-simple-captcha:python \ + +PACKAGE_python-django-simple-captcha:python-six \ + python-django1 \ + +PACKAGE_python-django-simple-captcha:python-pillow \ + +PACKAGE_python-django-simple-captcha:python-django-ranged-response VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-simple-captcha/description Django Simple Captcha is an extremely simple, yet highly customizable Django application to add captcha images to any Django form. endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-simple-captcha +$(call Package/django-simple-captcha/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - +PACKAGE_python3-$(PKG_NAME):python3-six \ - python3-django \ - +PACKAGE_python3-$(PKG_NAME):python3-pillow \ - +PACKAGE_python3-$(PKG_NAME):python3-django-ranged-response + +PACKAGE_python3-django-simple-captcha:python3 \ + +PACKAGE_python3-django-simple-captcha:python3-six \ + +PACKAGE_python3-django-simple-captcha:python3-django1 \ + +PACKAGE_python3-django-simple-captcha:python3-pillow \ + +PACKAGE_python3-django-simple-captcha:python3-django-ranged-response VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-simple-captcha/description +$(call Package/python-django-simple-captcha/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-simple-captcha)) +$(eval $(call BuildPackage,python-django-simple-captcha)) +$(eval $(call BuildPackage,python-django-simple-captcha-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-simple-captcha)) +$(eval $(call BuildPackage,python3-django-simple-captcha)) +$(eval $(call BuildPackage,python3-django-simple-captcha-src)) diff --git a/lang/python/django-statici18n/Makefile b/lang/python/django-statici18n/Makefile index 37f07353..2e86437f 100644 --- a/lang/python/django-statici18n/Makefile +++ b/lang/python/django-statici18n/Makefile @@ -8,65 +8,64 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-statici18n -PKG_VERSION:=1.8.2 -PKG_RELEASE:=4 +PKG_VERSION:=1.9.0 +PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/django-statici18n -PKG_HASH:=ba9eeb3c4517027922645999359f8335fbb9fea04c457123cfbd6b4a36cbeda4 +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=913dd056c1abcbe129b1db806cb4cfb821c4077d7e857d6eb29043ea64f4d1d0 PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-statici18n/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=Helper for generating JavaScript catalog to static files - URL:=https://$(PKG_NAME).readthedocs.io + URL:=https://django-statici18n.readthedocs.io endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-statici18n +$(call Package/django-statici18n/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django + +PACKAGE_python-django-statici18n:python \ + python-django1 \ + +PACKAGE_python-django-statici18n:python-django-appconf \ + +PACKAGE_python-django-statici18n:python-six VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-statici18n/description A Django app that provides helper for generating JavaScript catalog to static files. endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-statici18n +$(call Package/django-statici18n/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + +PACKAGE_python3-django-statici18n:python3 \ + +PACKAGE_python3-django-statici18n:python3-django1 \ + +PACKAGE_python3-django-statici18n:python3-django-appconf \ + +PACKAGE_python3-django-statici18n:python3-six VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-statici18n/description +$(call Package/python-django-statici18n/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-statici18n)) +$(eval $(call BuildPackage,python-django-statici18n)) +$(eval $(call BuildPackage,python-django-statici18n-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-statici18n)) +$(eval $(call BuildPackage,python3-django-statici18n)) +$(eval $(call BuildPackage,python3-django-statici18n-src)) diff --git a/lang/python/django-webpack-loader/Makefile b/lang/python/django-webpack-loader/Makefile index 72ed8679..90c65d2a 100644 --- a/lang/python/django-webpack-loader/Makefile +++ b/lang/python/django-webpack-loader/Makefile @@ -7,25 +7,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django-webpack-loader PKG_VERSION:=0.6.0 -PKG_RELEASE:=5 +PKG_RELEASE:=7 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/${PKG_NAME} +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=60bab6b9a037a5346fad12d2a70a6bc046afb33154cf75ed640b93d3ebd5f520 PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/$(PKG_NAME)/Default +define Package/django-webpack-loader/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages @@ -33,38 +29,37 @@ define Package/$(PKG_NAME)/Default URL:=https://github.com/owais/django-webpack-loader endef -define Package/python-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python-django-webpack-loader +$(call Package/django-webpack-loader/Default) DEPENDS:= \ - +PACKAGE_python-$(PKG_NAME):python \ - python-django + +PACKAGE_python-django-webpack-loader:python \ + python-django1 VARIANT:=python - MDEPENDS:=python-django + MDEPENDS:=python-django1 endef -define Package/python-$(PKG_NAME)/description +define Package/python-django-webpack-loader/description Use webpack to generate your static bundles without django’s staticfiles or opaque wrappers. endef -define Package/python3-$(PKG_NAME) -$(call Package/$(PKG_NAME)/Default) +define Package/python3-django-webpack-loader +$(call Package/django-webpack-loader/Default) DEPENDS:= \ - +PACKAGE_python3-$(PKG_NAME):python3 \ - python3-django + +PACKAGE_python3-django-webpack-loader:python3 \ + +PACKAGE_python3-django-webpack-loader:python3-django1 VARIANT:=python3 - MDEPENDS:=python3-django endef -define Package/python3-$(PKG_NAME)/description -$(call define Package/python-$(PKG_NAME)/description) +define Package/python3-django-webpack-loader/description +$(call Package/python-django-webpack-loader/description) . (Variant for Python3) endef -$(eval $(call PyPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME))) -$(eval $(call BuildPackage,python-$(PKG_NAME)-src)) +$(eval $(call PyPackage,python-django-webpack-loader)) +$(eval $(call BuildPackage,python-django-webpack-loader)) +$(eval $(call BuildPackage,python-django-webpack-loader-src)) -$(eval $(call Py3Package,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME))) -$(eval $(call BuildPackage,python3-$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-django-webpack-loader)) +$(eval $(call BuildPackage,python3-django-webpack-loader)) +$(eval $(call BuildPackage,python3-django-webpack-loader-src)) diff --git a/lang/python/django/Makefile b/lang/python/django/Makefile index f115e1dc..e60d693a 100644 --- a/lang/python/django/Makefile +++ b/lang/python/django/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2017 OpenWrt.org +# Copyright (C) Alexandru Ardelean # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,64 +8,44 @@ include $(TOPDIR)/rules.mk PKG_NAME:=django -PKG_VERSION:=1.11.24 +PKG_VERSION:=3.0.4 PKG_RELEASE:=1 -PKG_SOURCE:=Django-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/D/Django -PKG_HASH:=215c27453f775b6b1add83a185f76c2e2ab711d17786a6704bd62eabd93f89e3 -PKG_BUILD_DIR=$(BUILD_DIR)/Django-$(PKG_VERSION) +PYPI_NAME:=Django +PKG_HASH:=50b781f6cbeb98f673aa76ed8e572a019a45e52bdd4ad09001072dfd91ab07c8 PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE LICENSE.python PKG_CPE_ID:=cpe:/a:djangoproject:django -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-django-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk -include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/django/Default +define Package/python3-django SUBMENU:=Python SECTION:=lang CATEGORY:=Languages TITLE:=The web framework for perfectionists with deadlines. URL:=https://www.djangoproject.com/ - MENU:=1 -endef - -define Package/python-django -$(call Package/django/Default) - DEPENDS:= \ - +PACKAGE_python-django:python \ - +PACKAGE_python-django:python-pytz - VARIANT:=python -endef - -define Package/python-django/description - The web framework for perfectionists with deadlines. -endef - -define Package/python3-django -$(call Package/django/Default) - DEPENDS:= \ - +PACKAGE_python3-django:python3 \ - +PACKAGE_python3-django:python3-pytz + DEPENDS:= +python3 +python3-pytz +python3-sqlparse +python3-asgiref + CONFLICTS:=python3-django1 python-django1-common + PROVIDES:=django VARIANT:=python3 endef define Package/python3-django/description -$(call Package/python-django/description) -. -(Variant for Python3) + The web framework for perfectionists with deadlines (LTS 2.2 series). + Python3 only. endef -$(eval $(call PyPackage,python-django)) -$(eval $(call BuildPackage,python-django)) +define Py3Package/python3-django/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/django-admin.py \ + $(1)/usr/bin/django-admin +endef $(eval $(call Py3Package,python3-django)) $(eval $(call BuildPackage,python3-django)) +$(eval $(call BuildPackage,python3-django-src)) diff --git a/lang/python/django1/Makefile b/lang/python/django1/Makefile new file mode 100644 index 00000000..db260a20 --- /dev/null +++ b/lang/python/django1/Makefile @@ -0,0 +1,91 @@ +# +# Copyright (C) Alexandru Ardelean +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=django1 +PKG_VERSION:=1.11.29 +PKG_RELEASE:=2 + +PYPI_NAME:=Django +PKG_HASH:=4200aefb6678019a0acf0005cd14cfce3a5e6b9b90d06145fcdd2e474ad4329c + +PKG_MAINTAINER:=Alexandru Ardelean +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE LICENSE.python +PKG_CPE_ID:=cpe:/a:djangoproject:django + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python-package.mk +include ../python3-package.mk + +define Package/django1/Default + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=The web framework for perfectionists with deadlines. + URL:=https://www.djangoproject.com/ +endef + +define Package/python-django1 +$(call Package/django1/Default) + DEPENDS:= \ + +PACKAGE_python-django1:python \ + +PACKAGE_python-django1:python-pytz \ + +PACKAGE_python-django1:python-django1-common + VARIANT:=python + MENU:=1 +endef + +define Package/python-django1/description + The web framework for perfectionists with deadlines (LTS 1.11 series). +endef + +define Package/python3-django1 +$(call Package/django1/Default) + DEPENDS:= \ + +PACKAGE_python3-django1:python3 \ + +PACKAGE_python3-django1:python3-pytz \ + +PACKAGE_python3-django1:python-django1-common + VARIANT:=python3 + PROVIDES:=django +endef + +define Package/python3-django1/description +$(call Package/python-django1/description) +. +(Variant for Python3) +endef + +define Package/python-django1-common +$(call Package/django1/Default) +endef + +define Package/python-django1-common/description +$(call Package/python-django1/description) +. +This package contains files common to both Python 2.7 and Python 3. +endef + +PyPackage/python-django1/install:=: +Py3Package/python3-django1/install:=: + +define Package/python-django1-common/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) ./files/django-admin $(1)/usr/bin +endef + +$(eval $(call PyPackage,python-django1)) +$(eval $(call BuildPackage,python-django1)) +$(eval $(call BuildPackage,python-django1-src)) + +$(eval $(call Py3Package,python3-django1)) +$(eval $(call BuildPackage,python3-django1)) +$(eval $(call BuildPackage,python3-django1-src)) + +$(eval $(call BuildPackage,python-django1-common)) diff --git a/lang/python/django1/files/django-admin b/lang/python/django1/files/django-admin new file mode 100644 index 00000000..acf99b94 --- /dev/null +++ b/lang/python/django1/files/django-admin @@ -0,0 +1,23 @@ +#!/bin/sh +shell_code=''' ' +# shell code +if command -v python3.8 > /dev/null && test -e /usr/lib/python3.8/site-packages/django/bin/django-admin.pyc +then + exec python3.8 "$0" "$@" +elif command -v python2.7 > /dev/null && test -e /usr/lib/python2.7/site-packages/django/bin/django-admin.pyc +then + exec python2.7 "$0" "$@" +else + echo "Cannot find installed version of python-django1 or python3-django1." >&2 + exit 1 +fi + +python_code=''' +# python code +# ONLY use DOUBLE quotes <"> after this line +from django.core import management + +if __name__ == "__main__": + management.execute_from_command_line() + +# End of Python code. Do not modify this line. #' diff --git a/lang/python/django1/patches/001-load-byte-compiled-db-migrations.patch b/lang/python/django1/patches/001-load-byte-compiled-db-migrations.patch new file mode 100644 index 00000000..e347e553 --- /dev/null +++ b/lang/python/django1/patches/001-load-byte-compiled-db-migrations.patch @@ -0,0 +1,11 @@ +--- a/django/db/migrations/loader.py ++++ b/django/db/migrations/loader.py +@@ -106,7 +106,7 @@ class MigrationLoader(object): + # Scan for .py files + migration_names = set() + for name in os.listdir(directory): +- if name.endswith(".py"): ++ if name.endswith(".py") or name.endswith(".pyc"): + import_name = name.rsplit(".", 1)[0] + if import_name[0] not in "_.~": + migration_names.add(import_name) diff --git a/lang/python/flup/Makefile b/lang/python/flup/Makefile index 77ed6aad..504b082a 100644 --- a/lang/python/flup/Makefile +++ b/lang/python/flup/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=flup PKG_VERSION:=1.0.3 PKG_RELEASE:=3 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/f/flup +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=5eb09f26eb0751f8380d8ac43d1dfb20e1d42eca0fa45ea9289fa532a79cd159 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-flup-$(PKG_VERSION) - PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=PKG-INFO +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/flup/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/gunicorn/Makefile b/lang/python/gunicorn/Makefile index 2aa87f47..1e65f4d1 100644 --- a/lang/python/gunicorn/Makefile +++ b/lang/python/gunicorn/Makefile @@ -10,43 +10,107 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gunicorn PKG_VERSION:=19.9.0 PKG_RELEASE=2 -PKG_LICENSE:=MIT -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/g/gunicorn +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=fa2662097c66f920f53f70621c6c58ca4a3c4d3434205e608e121b5b3b71f4f3 -PKG_MAINTAINER:=Alexandru Ardelean +PKG_MAINTAINER:=Alexandru Ardelean +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk +include ../python3-package.mk + +define Package/gunicorn/Default + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=WSGI HTTP Server for UNIX + URL:=https://gunicorn.org +endef + +define Package/python-gunicorn +$(call Package/gunicorn/Default) + DEPENDS:=+python + VARIANT:=python +endef + +define Package/python-gunicorn/description + WSGI HTTP Server for UNIX (libraries) +endef + +define PyPackage/python-gunicorn/filespec ++|$(PYTHON_PKG_DIR) +-|$(PYTHON_PKG_DIR)/gunicorn/workers/_gaiohttp.py +endef + +define Package/python3-gunicorn +$(call Package/gunicorn/Default) + DEPENDS:=+python3 + VARIANT:=python3 +endef + +define Package/python3-gunicorn/description +$(call Package/python-gunicorn/description) +. +(Variant for Python3) +endef + +# Make sure that the binaries are not installed with the libraries +# That means adding some empty Py[3]Package/gunicorn[3]/install rules +define PyPackage/python-gunicorn/install + : +endef + +define Py3Package/python3-gunicorn/install + : +endef define Package/gunicorn - SUBMENU:=Python - SECTION:=lang - CATEGORY:=Languages - TITLE:=WSGI HTTP Server for UNIX - URL:=https://gunicorn.org - DEPENDS:=+python +python-setuptools +$(call Package/gunicorn/Default) + DEPENDS:=+python +python-pkg-resources +python-gunicorn endef define Package/gunicorn/description - WSGI HTTP Server for UNIX -endef - -define Build/Compile - $(call Build/Compile/PyMod,,install --prefix=/usr --root=$(PKG_INSTALL_DIR)) + WSGI HTTP Server for UNIX (daemon) endef define Package/gunicorn/install - $(INSTALL_DIR) $(1)$(PYTHON_PKG_DIR) $(INSTALL_DIR) $(1)/usr/bin - $(CP) \ - $(PKG_INSTALL_DIR)$(PYTHON_PKG_DIR)/* \ - $(1)$(PYTHON_PKG_DIR) - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gunicorn* \ - $(1)/usr/bin - # fix python exec path in scripts - $(SED) 's/#!.*/#!\/usr\/bin\/python/g' $(1)/usr/bin/gunicorn* + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(call PyShebang,$(1)/usr/bin/*) endef +define Package/gunicorn3 +$(call Package/gunicorn/Default) + DEPENDS:=+python3 +python3-pkg-resources +python3-gunicorn +endef + +define Package/gunicorn3/description +$(call Package/gunicorn/description) +. +(Variant for Python3) +endef + +define Package/gunicorn3/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) \ + $(PKG_INSTALL_DIR)/usr/bin/gunicorn \ + $(1)/usr/bin/gunicorn3 + $(INSTALL_BIN) \ + $(PKG_INSTALL_DIR)/usr/bin/gunicorn_paster \ + $(1)/usr/bin/gunicorn3_paster + $(call Py3Shebang,$(1)/usr/bin/*) +endef + +$(eval $(call PyPackage,python-gunicorn)) +$(eval $(call BuildPackage,python-gunicorn)) +$(eval $(call BuildPackage,python-gunicorn-src)) $(eval $(call BuildPackage,gunicorn)) + +$(eval $(call Py3Package,python3-gunicorn)) +$(eval $(call BuildPackage,python3-gunicorn)) +$(eval $(call BuildPackage,python3-gunicorn-src)) +$(eval $(call BuildPackage,gunicorn3)) diff --git a/lang/python/homeassistant/Makefile b/lang/python/homeassistant/Makefile deleted file mode 100644 index ae774d15..00000000 --- a/lang/python/homeassistant/Makefile +++ /dev/null @@ -1,76 +0,0 @@ -# -# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=homeassistant -PKG_VERSION:=0.98.1 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/h/homeassistant -PKG_HASH:=7f8a6a011cf1cf2254a471f0eae1bedaad6dba1dcf3ab67f453d9a80d73ee477 - -PKG_MAINTAINER:=Josef Schlehofer -PKG_LICENSE:=MIT -PKG_LICENSE_FILES:=LICENSE.md -PKG_CPE_ID:=cpe:/a:home-assistant:home-assistant - -include $(INCLUDE_DIR)/package.mk -include ../python3-package.mk - -define Package/$(PKG_NAME) - SECTION:=utils - CATEGORY:=Utilities - TITLE:=Home Assistant - URL:=https://www.home-assistant.io/ - DEPENDS:= \ - +python3-aiohttp \ - +python3-aiohttp-cors \ - +python3-astral \ - +python3-async-timeout \ - +python3-attrs \ - +python3-bcrypt \ - +python3-certifi \ - +python3-cryptography \ - +python3-ifaddr \ - +python3-importlib-metadata \ - +python3-jinja2 \ - +python3-netdisco \ - +python3-pip \ - +python3-pyjwt \ - +python3-pyotp \ - +python3-pytz \ - +python3-slugify \ - +python3-sqlalchemy \ - +python3-requests \ - +python3-ruamel-yaml \ - +python3-voluptuous \ - +python3-voluptuous-serialize \ - +python3-yaml \ - +python3-zeroconf - VARIANT:=python3 -endef - -define Package/$(PKG_NAME)/description - Home Assistant is a home automation platform running on Python 3. - It is able to track and control all devices at home and offer a platform for automating control. - - It requires a minimum of 1 GB of RAM. -endef - -define Py3Package/$(PKG_NAME)/install - $(INSTALL_DIR) $(1)/usr/bin - $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ - - $(INSTALL_DIR) $(1)/etc/init.d - $(INSTALL_BIN) ./files/hass.init $(1)/etc/init.d/hass -endef - -$(eval $(call Py3Package,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME)-src)) diff --git a/lang/python/homeassistant/files/hass.init b/lang/python/homeassistant/files/hass.init deleted file mode 100644 index 50b32b7f..00000000 --- a/lang/python/homeassistant/files/hass.init +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh /etc/rc.common - -USE_PROCD=1 -START=99 -STOP=10 - -PROG=/usr/bin/hass -CONF=/srv/homeassistant - -start_service() { - mkdir -m 0755 -p "$CONF" - procd_open_instance - procd_set_param command "$PROG" -c "$CONF" - procd_set_param respawn - procd_set_param stdout 1 - procd_set_param stderr 1 - procd_close_instance -} diff --git a/lang/python/itsdangerous/Makefile b/lang/python/itsdangerous/Makefile index 56c1a208..81cd669e 100644 --- a/lang/python/itsdangerous/Makefile +++ b/lang/python/itsdangerous/Makefile @@ -6,19 +6,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=itsdangerous PKG_VERSION:=1.1.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/i/itsdangerous +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19 -PKG_BUILD_DEPENDS:=python python3 + +PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE -PKG_MAINTAINER:=Daniel Golle - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -26,15 +23,17 @@ define Package/python3-itsdangerous SECTION:=lang CATEGORY:=Languages SUBMENU:=Python - URL:=http://github.com/mitsuhiko/itsdangerous - TITLE:=python3-itsdangerous + TITLE:=ItsDangerous + URL:=https://palletsprojects.com/p/itsdangerous/ DEPENDS:=+python3-light VARIANT:=python3 endef define Package/python3-itsdangerous/description -Various helpers to pass trusted data to untrusted environments and back. + Various helpers to pass trusted data to untrusted environments and back. endef $(eval $(call Py3Package,python3-itsdangerous)) $(eval $(call BuildPackage,python3-itsdangerous)) +$(eval $(call BuildPackage,python3-itsdangerous-src)) + diff --git a/lang/python/openpyxl/Makefile b/lang/python/openpyxl/Makefile index fa583e17..f0ea9326 100644 --- a/lang/python/openpyxl/Makefile +++ b/lang/python/openpyxl/Makefile @@ -15,18 +15,14 @@ PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENCE.rst -PKG_SOURCE:=openpyxl-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/o/openpyxl +PYPI_NAME:=openpyxl PKG_HASH:=1d2af392cef8c8227bd2ac3ebe3a28b25aba74fd4fa473ce106065f0b73bfe2e -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-openpyxl-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-openpyxl/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/passlib/Makefile b/lang/python/passlib/Makefile index b8254fc5..144939f0 100644 --- a/lang/python/passlib/Makefile +++ b/lang/python/passlib/Makefile @@ -4,27 +4,23 @@ include $(TOPDIR)/rules.mk PKG_NAME:=passlib -PKG_VERSION:=1.7.1 +PKG_VERSION:=1.7.2 PKG_RELEASE:=1 PKG_LICENSE:=BSD-3-Clause -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/passlib -PKG_HASH:=3d948f64138c25633613f303bcc471126eae67c04d5e3f6b7b8ce6242f8653e0 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-passlib-$(PKG_VERSION) +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=8d666cef936198bc2ab47ee9b0410c94adf2ba798e5a84bf220be079ae7ab6a8 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/passlib/Default SUBMENU:=Python SECTION:=lang CATEGORY:=Languages - MAINTAINER:=Daniel Dickinson TITLE:=Comprehensive password hashing framework URL:=https://bitbucket.org/ecollins/passlib endef diff --git a/lang/python/pillow/Makefile b/lang/python/pillow/Makefile index 517352b6..e51fc016 100644 --- a/lang/python/pillow/Makefile +++ b/lang/python/pillow/Makefile @@ -7,25 +7,22 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pillow -PKG_VERSION:=6.2.0 +PKG_VERSION:=6.2.1 PKG_RELEASE:=1 -PKG_SOURCE:=Pillow-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/P/Pillow -PKG_HASH:=4548236844327a718ce3bb182ab32a16fa2050c61e334e959f554cac052fb0df -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-Pillow-$(PKG_VERSION) +PYPI_NAME:=Pillow +PKG_HASH:=bf4e972a88f8841d8fdc6db1a75e0f8d763e66e3754b03006cbc3854d89f1cb1 PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=HPND PKG_LICENSE_FILES:=LICENSE PKG_CPE_ID:=cpe:/a:python:pillow +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pillow/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/pyjwt/Makefile b/lang/python/pyjwt/Makefile index f8af00d0..b8000308 100644 --- a/lang/python/pyjwt/Makefile +++ b/lang/python/pyjwt/Makefile @@ -13,18 +13,14 @@ PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=PyJWT-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/P/PyJWT +PYPI_NAME:=PyJWT PKG_HASH:=8d59a976fb773f3e6a39c85636357c4f0e242707394cadadd9814f5cbaa20e96 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-PyJWT-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pyjwt/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/pymysql/Config.in b/lang/python/pymysql/Config.in new file mode 100644 index 00000000..0dfa265b --- /dev/null +++ b/lang/python/pymysql/Config.in @@ -0,0 +1,11 @@ +menu "Configuration" + depends on PACKAGE_python3-pymysql + +config PYTHON3_PYMYSQL_SHA_PASSWORD_SUPPORT + bool "Enable support for SHA password authentication" + help + To use “sha256_password” or “caching_sha2_password” for authentication + this symbol needs to be enabled, to also install python3-cryptography. + default n + +endmenu diff --git a/lang/python/pymysql/Makefile b/lang/python/pymysql/Makefile new file mode 100644 index 00000000..87baddd1 --- /dev/null +++ b/lang/python/pymysql/Makefile @@ -0,0 +1,47 @@ +# +# Copyright (C) Alexandru Ardelean +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=pymysql +PKG_VERSION:=0.9.3 +PKG_RELEASE:=2 + +PYPI_NAME:=PyMySQL +PKG_HASH:=d8c059dcd81dedb85a9f034d5e22dcb4442c0b201908bede99e306d65ea7c8e7 + +PKG_MAINTAINER:=Alexandru Ardelean +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +PKG_CONFIG_DEPENDS:=CONFIG_PYTHON3_PYMYSQL_SHA_PASSWORD_SUPPORT + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-pymysql + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Pure Python MySQL Client + URL:=https://pymysql.readthedocs.io/ + DEPENDS:=+python3 +PYTHON3_PYMYSQL_SHA_PASSWORD_SUPPORT:python3-cryptography + VARIANT:=python3 +endef + +define Package/python3-pymysql/config + source "$(SOURCE)/Config.in" +endef + +define Package/python3-pymysql/description + This package contains a pure-Python MySQL client library, based on PEP 249. +endef + +$(eval $(call Py3Package,python3-pymysql)) +$(eval $(call BuildPackage,python3-pymysql)) +$(eval $(call BuildPackage,python3-pymysql-src)) diff --git a/lang/python/pyodbc/Makefile b/lang/python/pyodbc/Makefile index d3f1f055..fa70c8f6 100644 --- a/lang/python/pyodbc/Makefile +++ b/lang/python/pyodbc/Makefile @@ -8,19 +8,16 @@ PKG_NAME:=pyodbc PKG_VERSION:=4.0.26 PKG_RELEASE:=2 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyodbc +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=e52700b5d24a846483b5ab80acd9153f8e593999c9184ffea11596288fb33de3 PKG_BUILD_DEPENDS:=python python3 unixodbc PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE.txt PKG_MAINTAINER:=Daniel Golle -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - PKG_BUILD_DEPENDS:=unixodbc/host +include ../pypi.mk include $(INCLUDE_DIR)/uclibc++.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk diff --git a/lang/python/pypi.mk b/lang/python/pypi.mk new file mode 100644 index 00000000..cc0cb760 --- /dev/null +++ b/lang/python/pypi.mk @@ -0,0 +1,24 @@ +# +# Copyright (C) 2019 Jeffery To +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +ifndef DUMP + ifdef __package_mk + $(warning pypi.mk should be included before package.mk) + endif +endif + +ifneq ($(strip $(PYPI_NAME)),) + PYPI_SOURCE_NAME?=$(PYPI_NAME) + PYPI_SOURCE_EXT?=tar.gz + PYPI_NAME_FIRST_LETTER?=$(strip $(foreach a,$(chars_lower) $(chars_upper) 0 1 2 3 4 5 6 7 8 9 _ -,$(if $(PYPI_NAME:$a%=),,$a))) + + PKG_SOURCE?=$(PYPI_SOURCE_NAME)-$(PKG_VERSION).$(PYPI_SOURCE_EXT) + PKG_SOURCE_URL?=https://files.pythonhosted.org/packages/source/$(PYPI_NAME_FIRST_LETTER)/$(PYPI_NAME) + + PKG_BUILD_DIR:=$(BUILD_DIR)/pypi/$(if $(BUILD_VARIANT),$(PKG_NAME)-$(BUILD_VARIANT)/)$(PYPI_SOURCE_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION)) + HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/pypi/$(PYPI_SOURCE_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION)) +endif diff --git a/lang/python/python-aiohttp-cors/Makefile b/lang/python/python-aiohttp-cors/Makefile index 4f6e641a..b8c85f95 100644 --- a/lang/python/python-aiohttp-cors/Makefile +++ b/lang/python/python-aiohttp-cors/Makefile @@ -11,14 +11,15 @@ PKG_NAME:=aiohttp-cors PKG_VERSION:=0.7.0 PKG_RELEASE:=1 -PKG_SOURCE:=aiohttp-cors-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/a/aiohttp_cors/ +PYPI_NAME:=aiohttp_cors +PYPI_SOURCE_NAME:=aiohttp-cors PKG_HASH:=4d39c6d7100fd9764ed1caf8cebf0eb01bf5e3f24e2e073fda6234bc48b19f5d PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-aiohttp/Makefile b/lang/python/python-aiohttp/Makefile index f1de0b55..d031acf7 100644 --- a/lang/python/python-aiohttp/Makefile +++ b/lang/python/python-aiohttp/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# Copyright (C) 2019-2020 CZ.NIC, z. s. p. o. (https://www.nic.cz/) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,18 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=aiohttp -PKG_VERSION:=3.5.4 +PKG_VERSION:=3.6.1 PKG_RELEASE:=1 -PKG_SOURCE:=aiohttp-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/a/aiohttp/ -PKG_HASH:=9c4c83f4fa1938377da32bc2d59379025ceeee8e24b89f72fcbccd8ca22dc9bf +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=fc55b1fec0e4cc1134ffb09ea3970783ee2906dc5dfd7cd16917913f2cfed65b PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE PKG_CPE_ID:=cpe:/a:aio-libs_project:aiohttp +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -44,7 +44,7 @@ define Package/python3-aiohttp endef define Package/python3-aiohttp/description -Asynchronous HTTP client/server framework for asyncio and Python3 + Asynchronous HTTP client/server framework for asyncio and Python3. endef $(eval $(call Py3Package,python3-aiohttp)) diff --git a/lang/python/python-appdirs/Makefile b/lang/python/python-appdirs/Makefile index 79662e16..d876e8b1 100644 --- a/lang/python/python-appdirs/Makefile +++ b/lang/python/python-appdirs/Makefile @@ -9,12 +9,11 @@ PKG_VERSION:=1.4.3 PKG_RELEASE:=1 PKG_MAINTAINER:=Karel Kočí -PKG_SOURCE_URL:=https://pypi.python.org/packages/source/a/appdirs/ -PKG_SOURCE:=appdirs-$(PKG_VERSION).tar.gz +PYPI_NAME:=appdirs PKG_HASH:=9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92 PKG_LICENSE:=MIT -PKG_BUILD_DIR:=$(BUILD_DIR)/appdirs-$(PKG_VERSION) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-asn1crypto/Makefile b/lang/python/python-asn1crypto/Makefile index 21d443e9..ce719f06 100644 --- a/lang/python/python-asn1crypto/Makefile +++ b/lang/python/python-asn1crypto/Makefile @@ -8,58 +8,36 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-asn1crypto -PKG_VERSION:=0.24.0 +PKG_VERSION:=1.3.0 PKG_RELEASE:=1 -PKG_SOURCE:=asn1crypto-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://pypi.io/packages/source/a/asn1crypto -PKG_HASH:=9d5c20441baf0cb60a4ac34cc447c6c189024b6b4c6cd7877034f4965c464e49 +PYPI_NAME:=asn1crypto +PKG_HASH:=5a215cb8dc12f892244e3a113fe05397ee23c5c4ca7a69cd6e69811755efc42d -PKG_LICENSE:=MIT PKG_MAINTAINER:=Alexandru Ardelean +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-asn1crypto-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk -include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/python-asn1crypto/Default +define Package/python3-asn1crypto SECTION:=lang CATEGORY:=Languages SUBMENU:=Python URL:=https://github.com/wbond/asn1crypto -endef - -define Package/python-asn1crypto -$(call Package/python-asn1crypto/Default) - TITLE:=python-asn1crypto - DEPENDS:=+PACKAGE_python-asn1crypto:python-light - VARIANT:=python -endef - -define Package/python3-asn1crypto -$(call Package/python-asn1crypto/Default) - TITLE:=python3-asn1crypto - DEPENDS:=+PACKAGE_python3-asn1crypto:python3-light + TITLE:=Fast pure Python lib for ASN1 structures + DEPENDS:=+python3-light VARIANT:=python3 endef -define Package/python-asn1crypto/description +define Package/python3-asn1crypto/description Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, PKCS#5, X.509 and TSP endef -define Package/python3-asn1crypto/description -$(call Package/python-asn1crypto/description) -. -(Variant for Python3) -endef - -$(eval $(call PyPackage,python-asn1crypto)) -$(eval $(call BuildPackage,python-asn1crypto)) $(eval $(call Py3Package,python3-asn1crypto)) $(eval $(call BuildPackage,python3-asn1crypto)) +$(eval $(call BuildPackage,python3-asn1crypto-src)) diff --git a/lang/python/python-astral/Makefile b/lang/python/python-astral/Makefile index 7243eb00..302eefc7 100644 --- a/lang/python/python-astral/Makefile +++ b/lang/python/python-astral/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-astral PKG_VERSION:=1.10.1 PKG_RELEASE:=1 -PKG_SOURCE:=astral-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/a/astral/ +PYPI_NAME:=astral PKG_HASH:=d2a67243c4503131c856cafb1b1276de52a86e5b8a1d507b7e08bee51cb67bf1 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-astral-$(PKG_VERSION) - PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Josef Schlehofer +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-astral/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-async-timeout/Makefile b/lang/python/python-async-timeout/Makefile index a8c76c12..50a761c6 100644 --- a/lang/python/python-async-timeout/Makefile +++ b/lang/python/python-async-timeout/Makefile @@ -11,14 +11,15 @@ PKG_NAME:=async-timeout PKG_VERSION:=3.0.1 PKG_RELEASE:=1 -PKG_SOURCE:=async-timeout-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/a/async-timeout/ +PYPI_NAME:=async_timeout +PYPI_SOURCE_NAME:=async-timeout PKG_HASH:=0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-atomicwrites/Makefile b/lang/python/python-atomicwrites/Makefile new file mode 100644 index 00000000..315f2c33 --- /dev/null +++ b/lang/python/python-atomicwrites/Makefile @@ -0,0 +1,41 @@ +# +# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-atomicwrites +PKG_VERSION:=1.3.0 +PKG_RELEASE:=1 + +PYPI_NAME:=atomicwrites +PKG_HASH:=75a9445bac02d8d058d5e1fe689654ba5a6556a1dfd8ce6ec55a0ed79866cfa6 + +PKG_MAINTAINER:=Jan Pavlinec +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-atomicwrites + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Atomic file writes + URL:=https://github.com/untitaker/python-atomicwrites + DEPENDS:=+python3-light + VARIANT:=python3 +endef + +define Package/python3-atomicwrites/description + Python library for atomic file writes. +endef + +$(eval $(call Py3Package,python3-atomicwrites)) +$(eval $(call BuildPackage,python3-atomicwrites)) +$(eval $(call BuildPackage,python3-atomicwrites-src)) diff --git a/lang/python/python-attrs/Makefile b/lang/python/python-attrs/Makefile index d784a53f..5936704c 100644 --- a/lang/python/python-attrs/Makefile +++ b/lang/python/python-attrs/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-attrs PKG_VERSION:=19.3.0 PKG_RELEASE:=1 -PKG_SOURCE:=attrs-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/a/attrs +PYPI_NAME:=attrs PKG_HASH:=f7b7ce16570fe9965acd6d30101a28f62fb4a7f9e926b3bbc9b61f8b04247e72 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-attrs-$(PKG_VERSION) - PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-attrs/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-automat/Makefile b/lang/python/python-automat/Makefile index 2161e0b7..804d3c88 100644 --- a/lang/python/python-automat/Makefile +++ b/lang/python/python-automat/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-automat -PKG_VERSION:=0.8.0 +PKG_VERSION:=20.2.0 PKG_RELEASE:=1 -PKG_SOURCE:=Automat-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/A/Automat -PKG_HASH:=269a09dfb063a3b078983f4976d83f0a0d3e6e7aaf8e27d8df1095e09dc4a484 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-automat-$(PKG_VERSION) +PYPI_NAME:=Automat +PKG_HASH:=7979803c74610e11ef0c0d68a2942b152df52da55336e0c9d58daf1831cbdf33 PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - PYTHON_PKG_SETUP_VARS:= \ PKG_VERSION="$(PKG_VERSION)" PYTHON3_PKG_SETUP_VARS:= \ diff --git a/lang/python/python-automat/patches/001-do-not-use-setuptools-scm-m2r.patch b/lang/python/python-automat/patches/001-do-not-use-setuptools-scm-m2r.patch index babcda4b..e749af36 100644 --- a/lang/python/python-automat/patches/001-do-not-use-setuptools-scm-m2r.patch +++ b/lang/python/python-automat/patches/001-do-not-use-setuptools-scm-m2r.patch @@ -26,5 +26,5 @@ - 'm2r', - ], install_requires=[ - "attrs>=16.1.0", + "attrs>=19.2.0", "six", diff --git a/lang/python/python-automat/patches/002-omit-visualize.patch b/lang/python/python-automat/patches/002-omit-visualize.patch index 0d68d891..ede27969 100644 --- a/lang/python/python-automat/patches/002-omit-visualize.patch +++ b/lang/python/python-automat/patches/002-omit-visualize.patch @@ -1,7 +1,7 @@ --- a/setup.py +++ b/setup.py @@ -27,15 +27,6 @@ setup( - "attrs>=16.1.0", + "attrs>=19.2.0", "six", ], - extras_require={ diff --git a/lang/python/python-automat/patches/003-omit-tests.patch b/lang/python/python-automat/patches/003-omit-tests.patch index 774b683d..81f9e8b3 100644 --- a/lang/python/python-automat/patches/003-omit-tests.patch +++ b/lang/python/python-automat/patches/003-omit-tests.patch @@ -8,7 +8,7 @@ + packages=find_packages(exclude=["*._test", "*._test.*"]), package_dir={'automat': 'automat'}, install_requires=[ - "attrs>=16.1.0", + "attrs>=19.2.0", @@ -30,6 +30,7 @@ setup( author='Glyph', author_email='glyph@twistedmatrix.com', diff --git a/lang/python/python-awscli/Makefile b/lang/python/python-awscli/Makefile index c290c6ac..164ed090 100644 --- a/lang/python/python-awscli/Makefile +++ b/lang/python/python-awscli/Makefile @@ -4,20 +4,17 @@ PKG_NAME:=awscli PKG_VERSION:=1.16.75 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/a/awscli +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=8d96ec0de325ea8271cc6aa95b7392bbf548ec4aabd3ffbcdc0619b64edd4a45 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-awscli-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-awscli/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-boto3/Makefile b/lang/python/python-boto3/Makefile index 160cf40f..4f43b4e1 100644 --- a/lang/python/python-boto3/Makefile +++ b/lang/python/python-boto3/Makefile @@ -4,15 +4,14 @@ PKG_NAME:=boto3 PKG_VERSION:=1.9.135 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/b/boto3 +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=5e5805992e873e5687b5ef3b4c56c386ccb4df1c3364f8b8601d289e2f275be1 -PKG_BUILD_DIR:=$(BUILD_DIR)/boto3-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-botocore/Makefile b/lang/python/python-botocore/Makefile index e02c6d61..d230176b 100644 --- a/lang/python/python-botocore/Makefile +++ b/lang/python/python-botocore/Makefile @@ -4,20 +4,17 @@ PKG_NAME:=botocore PKG_VERSION:=1.12.66 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/b/botocore +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=25c39ecc71356287cf79d66981ec77deca374e28043b19b2f818d48aa34272a1 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-botocore-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-botocore/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-cachelib/Makefile b/lang/python/python-cachelib/Makefile index 3f59aca1..52b6d93c 100644 --- a/lang/python/python-cachelib/Makefile +++ b/lang/python/python-cachelib/Makefile @@ -8,15 +8,14 @@ PKG_NAME:=python-cachelib PKG_VERSION:=0.1 PKG_RELEASE:=1 -PKG_SOURCE:=cachelib-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/cachelib +PYPI_NAME:=cachelib PKG_HASH:=8b889b509d372095357b8705966e1282d40835c4126d7c2b07fd414514d8ae8d -PKG_BUILD_DIR:=$(BUILD_DIR)/cachelib-$(PKG_VERSION) PKG_MAINTAINER:=Stepan Henek PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-cachetools/Makefile b/lang/python/python-cachetools/Makefile index e2bb3966..6b7ae409 100644 --- a/lang/python/python-cachetools/Makefile +++ b/lang/python/python-cachetools/Makefile @@ -11,15 +11,14 @@ PKG_NAME:=python-cachetools PKG_VERSION:=3.1.1 PKG_RELEASE:=1 -PKG_SOURCE:=cachetools-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/cachetools/ +PYPI_NAME:=cachetools PKG_HASH:=8ea2d3ce97850f31e4a08b0e2b5e6c34997d7216a9d2c98e0f3978630d4da69a -PKG_BUILD_DIR:=$(BUILD_DIR)/cachetools-$(PKG_VERSION) PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-certifi/Makefile b/lang/python/python-certifi/Makefile index acece86b..640099b7 100644 --- a/lang/python/python-certifi/Makefile +++ b/lang/python/python-certifi/Makefile @@ -6,25 +6,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-certifi -PKG_VERSION:=2019.9.11 +PKG_VERSION:=2019.11.28 PKG_RELEASE:=1 PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=MPL-2.0 PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=certifi-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/certifi -PKG_HASH:=e4f3620cfea4f83eedc95b24abd9cd56f3c4b146dd0177e83a21b4eb49e21e50 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-certifi-$(PKG_VERSION) +PYPI_NAME:=certifi +PKG_HASH:=25b64c7da4cd7479594d035c08c2d809eb4aab3a26e5a990ea98cc450c320f1f +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-certifi/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-cffi/Makefile b/lang/python/python-cffi/Makefile index 433484cd..8a973393 100644 --- a/lang/python/python-cffi/Makefile +++ b/lang/python/python-cffi/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-cffi -PKG_VERSION:=1.13.0 +PKG_VERSION:=1.14.0 PKG_RELEASE:=1 -PKG_SOURCE:=cffi-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/cffi -PKG_HASH:=8fe230f612c18af1df6f348d02d682fe2c28ca0a6c3856c99599cdacae7cf226 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-cffi-$(PKG_VERSION) +PYPI_NAME:=cffi +PKG_HASH:=2d384f4a127a15ba701207f7639d94106693b6cd64173d6c8988e2c25f3ac2b6 PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To , Alexandru Ardelean +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-cffi/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-chardet/Makefile b/lang/python/python-chardet/Makefile index 35a18125..8f2da9e4 100644 --- a/lang/python/python-chardet/Makefile +++ b/lang/python/python-chardet/Makefile @@ -12,17 +12,14 @@ PKG_VERSION:=3.0.4 PKG_RELEASE:=2 PKG_LICENSE:=LGPL-2.1 -PKG_SOURCE:=chardet-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://pypi.python.org/packages/fc/bb/a5768c230f9ddb03acc9ef3f0d4a3cf93462473795d18e9535498c8f929d/ +PYPI_NAME:=chardet PKG_HASH:=84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-chardet-$(PKG_VERSION) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-chardet/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-colorama/Makefile b/lang/python/python-colorama/Makefile index c5b8c67f..61c862de 100644 --- a/lang/python/python-colorama/Makefile +++ b/lang/python/python-colorama/Makefile @@ -4,20 +4,17 @@ PKG_NAME:=colorama PKG_VERSION:=0.4.1 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/colorama +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=05eed71e2e327246ad6b38c540c4a3117230b19679b875190486ddd2d721422d -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-colorama-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-colorama/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-constantly/Makefile b/lang/python/python-constantly/Makefile index db502e2e..e26705f4 100644 --- a/lang/python/python-constantly/Makefile +++ b/lang/python/python-constantly/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-constantly PKG_VERSION:=15.1.0 PKG_RELEASE:=1 -PKG_SOURCE:=constantly-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/constantly +PYPI_NAME:=constantly PKG_HASH:=586372eb92059873e29eba4f9dec8381541b4d3834660707faf8ba59146dfc35 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-constantly-$(PKG_VERSION) - PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-constantly/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-contextlib2/Makefile b/lang/python/python-contextlib2/Makefile index c1c0ba9e..04c256ce 100644 --- a/lang/python/python-contextlib2/Makefile +++ b/lang/python/python-contextlib2/Makefile @@ -9,11 +9,10 @@ PKG_VERSION:=0.5.5 PKG_RELEASE:=1 PKG_MAINTAINER:=Karel Kočí -PKG_SOURCE_URL:=https://pypi.python.org/packages/source/c/contextlib2/ -PKG_SOURCE:=contextlib2-$(PKG_VERSION).tar.gz +PYPI_NAME:=contextlib2 PKG_HASH:=509f9419ee91cdd00ba34443217d5ca51f5a364a404e1dce9e8979cea969ca48 -PKG_BUILD_DIR:=$(BUILD_DIR)/contextlib2-$(PKG_VERSION) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-crcmod/Makefile b/lang/python/python-crcmod/Makefile index a4873cca..818fa72e 100644 --- a/lang/python/python-crcmod/Makefile +++ b/lang/python/python-crcmod/Makefile @@ -13,13 +13,12 @@ PKG_RELEASE:=1 PKG_MAINTAINER:=Micke Prag PKG_LICENSE:=MIT -PKG_SOURCE:=crcmod-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://pypi.python.org/packages/source/c/crcmod/ +PYPI_NAME:=crcmod PKG_HASH:=dc7051a0db5f2bd48665a990d3ec1cc305a466a77358ca4492826f41f283601e -PKG_BUILD_DIR:=$(BUILD_DIR)/crcmod-$(PKG_VERSION) PKG_BUILD_DEPENDS:=python +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk diff --git a/lang/python/python-crypto/Makefile b/lang/python/python-crypto/Makefile index f0f8d659..94eb78a4 100644 --- a/lang/python/python-crypto/Makefile +++ b/lang/python/python-crypto/Makefile @@ -11,23 +11,19 @@ PKG_NAME:=python-crypto PKG_VERSION:=2.6.1 PKG_RELEASE:=4 -PKG_SOURCE:=pycrypto-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pycrypto +PYPI_NAME:=pycrypto PKG_HASH:=f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-crypto-$(PKG_VERSION) - PKG_LICENSE:=Public Domain PKG_LICENSE_FILES:=COPYRIGHT PKG_CPE_ID:=cpe:/a:dlitz:pycrypto PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - PYTHON_PKG_SETUP_ARGS:= PYTHON_PKG_SETUP_VARS:= \ CONFIG_BIG_ENDIAN="$(CONFIG_BIG_ENDIAN)" diff --git a/lang/python/python-cryptodome/Makefile b/lang/python/python-cryptodome/Makefile index fe2e80c9..f6d1e88a 100644 --- a/lang/python/python-cryptodome/Makefile +++ b/lang/python/python-cryptodome/Makefile @@ -5,26 +5,22 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-cryptodome -PKG_VERSION:=3.8.2 +PKG_VERSION:=3.9.0 PKG_RELEASE:=1 -PKG_SOURCE:=pycryptodome-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pycryptodome -PKG_HASH:=5bc40f8aa7ba8ca7f833ad2477b9d84e1bfd2630b22a46d9bbd221982f8c3ac0 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-cryptodome-$(PKG_VERSION) +PYPI_NAME:=pycryptodome +PKG_HASH:=dbeb08ad850056747aa7d5f33273b7ce0b9a77910604a1be7b7a6f2ef076213f PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=LICENSE.rst PKG_MAINTAINER:=Richard Yu PKG_CPE_ID:=cpe:/a:pycryptodome:pycryptodome +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - PYTHON_PKG_SETUP_ARGS:= PYTHON_PKG_SETUP_VARS:= \ CONFIG_BIG_ENDIAN="$(CONFIG_BIG_ENDIAN)" diff --git a/lang/python/python-cryptodomex/Makefile b/lang/python/python-cryptodomex/Makefile index b285c904..10c68e7d 100644 --- a/lang/python/python-cryptodomex/Makefile +++ b/lang/python/python-cryptodomex/Makefile @@ -5,25 +5,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-cryptodomex -PKG_VERSION:=3.8.2 +PKG_VERSION:=3.9.0 PKG_RELEASE:=1 -PKG_SOURCE:=pycryptodomex-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pycryptodomex -PKG_HASH:=e50b15af6bbdc6b5f8bd70d818cb846b15303ffa6c371b799db561a403a21607 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-cryptodomex-$(PKG_VERSION) +PYPI_NAME:=pycryptodomex +PKG_HASH:=8b604f4fa1de456d6d19771b01c2823675a75a2c60e51a6b738f71fdfe865370 PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=LICENSE.rst PKG_MAINTAINER:=Richard Yu +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - PYTHON_PKG_SETUP_ARGS:= PYTHON_PKG_SETUP_VARS:= \ CONFIG_BIG_ENDIAN="$(CONFIG_BIG_ENDIAN)" diff --git a/lang/python/python-cryptography/Makefile b/lang/python/python-cryptography/Makefile index d3b6d709..d7981d37 100644 --- a/lang/python/python-cryptography/Makefile +++ b/lang/python/python-cryptography/Makefile @@ -11,26 +11,23 @@ PKG_NAME:=python-cryptography PKG_VERSION:=2.8 PKG_RELEASE:=1 -PKG_SOURCE:=cryptography-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/c/cryptography +PYPI_NAME:=cryptography PKG_HASH:=3cda1f0ed8747339bbdf71b9f38ca74c7b592f24f65cdb3ab3765e4b02871651 PKG_LICENSE:=Apache-2.0 BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.APACHE LICENSE.BSD PKG_MAINTAINER:=Jeffery To , Alexandru Ardelean -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-cryptography-$(PKG_VERSION) PKG_BUILD_DEPENDS:=libffi/host HOST_PYTHON_PACKAGE_BUILD_DEPENDS:="cffi>=1.8,!=1.11.3" HOST_PYTHON3_PACKAGE_BUILD_DEPENDS:="cffi>=1.8,!=1.11.3" +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-cryptography/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-curl/Makefile b/lang/python/python-curl/Makefile index c6aba22c..9ca4845f 100644 --- a/lang/python/python-curl/Makefile +++ b/lang/python/python-curl/Makefile @@ -5,25 +5,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pycurl -PKG_VERSION:=7.43.0.3 +PKG_VERSION:=7.43.0.5 PKG_RELEASE:=1 -PKG_SOURCE:=pycurl-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pycurl -PKG_HASH:=6f08330c5cf79fa8ef68b9912b9901db7ffd34b63e225dce74db56bb21deda8e +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=ec7dd291545842295b7b56c12c90ffad2976cc7070c98d7b1517b7b6cd5994b3 PKG_MAINTAINER:=Waldemar Konik PKG_LICENSE:=LGPL-2.1 PKG_LICENSE_FILES:=COPYING-LGPL -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-curl-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-curl/Default CATEGORY:=Languages SECTION:=lang diff --git a/lang/python/python-curl/patches/0001-Add-locking-support-to-wolfSSL.patch b/lang/python/python-curl/patches/0001-Add-locking-support-to-wolfSSL.patch deleted file mode 100644 index 585139e2..00000000 --- a/lang/python/python-curl/patches/0001-Add-locking-support-to-wolfSSL.patch +++ /dev/null @@ -1,128 +0,0 @@ -From 9b400b32eb3673ab525f12f41a2ff3e4e3bfcccb Mon Sep 17 00:00:00 2001 -From: Eneas U de Queiroz -Date: Fri, 28 Jun 2019 11:05:20 -0300 -Subject: [PATCH] Add locking support to wolfSSL - -This takes advantage of wolfSSL openssl compatibility layer, so all -that that's needed are library detection, and inclusion of specific -headers. -WolfSSL must be built with --enable-opensslextra to enable the required -API, and that's being checked at build time, with a warning if disabled. - -Signed-off-by: Eneas U de Queiroz - -diff --git a/setup.py b/setup.py -index 3be0fcb..d4303b0 100644 ---- a/setup.py -+++ b/setup.py -@@ -143,6 +143,7 @@ class ExtensionConfiguration(object): - return { - '--with-openssl': self.using_openssl, - '--with-ssl': self.using_openssl, -+ '--with-wolfssl': self.using_wolfssl, - '--with-gnutls': self.using_gnutls, - '--with-nss': self.using_nss, - '--with-mbedtls': self.using_mbedtls, -@@ -163,7 +164,7 @@ class ExtensionConfiguration(object): - - if 'PYCURL_SSL_LIBRARY' in os.environ: - ssl_lib = os.environ['PYCURL_SSL_LIBRARY'] -- if ssl_lib in ['openssl', 'gnutls', 'nss', 'mbedtls']: -+ if ssl_lib in ['openssl', 'wolfssl', 'gnutls', 'nss', 'mbedtls']: - ssl_lib_detected = ssl_lib - getattr(self, 'using_%s' % ssl_lib)() - else: -@@ -188,6 +189,10 @@ class ExtensionConfiguration(object): - self.using_openssl() - ssl_lib_detected = 'openssl' - break -+ if arg[2:] == 'wolfssl': -+ self.using_wolfssl() -+ ssl_lib_detected = 'wolfssl' -+ break - if arg[2:] == 'gnutls': - self.using_gnutls() - ssl_lib_detected = 'gnutls' -@@ -506,6 +511,11 @@ manually. For other SSL backends please ignore this message.''') - self.libraries.append('ssl') - self.define_macros.append(('HAVE_CURL_SSL', 1)) - -+ def using_wolfssl(self): -+ self.define_macros.append(('HAVE_CURL_WOLFSSL', 1)) -+ self.libraries.append('wolfssl') -+ self.define_macros.append(('HAVE_CURL_SSL', 1)) -+ - def using_gnutls(self): - self.define_macros.append(('HAVE_CURL_GNUTLS', 1)) - self.libraries.append('gnutls') -@@ -572,6 +582,7 @@ def strip_pycurl_options(argv): - PRETTY_SSL_LIBS = { - # setup.py may be detecting BoringSSL properly, need to test - 'openssl': 'OpenSSL/LibreSSL/BoringSSL', -+ 'wolfssl': 'wolfSSL', - 'gnutls': 'GnuTLS', - 'nss': 'NSS', - 'mbedtls': 'mbedTLS', -@@ -902,6 +913,7 @@ PycURL Unix options: - --with-gnutls libcurl is linked against GnuTLS - --with-nss libcurl is linked against NSS - --with-mbedtls libcurl is linked against mbedTLS -+ --with-wolfssl libcurl is linked against wolfSSL - ''' - - windows_help = '''\ -diff --git a/src/module.c b/src/module.c -index 909cdfe..23387ec 100644 ---- a/src/module.c -+++ b/src/module.c -@@ -351,6 +351,8 @@ initpycurl(void) - } else if (!strncmp(vi->ssl_version, "OpenSSL/", 8) || !strncmp(vi->ssl_version, "LibreSSL/", 9) || - !strncmp(vi->ssl_version, "BoringSSL", 9)) { - runtime_ssl_lib = "openssl"; -+ } else if (!strncmp(vi->ssl_version, "wolfSSL/", 8)) { -+ runtime_ssl_lib = "wolfssl"; - } else if (!strncmp(vi->ssl_version, "GnuTLS/", 7)) { - runtime_ssl_lib = "gnutls"; - } else if (!strncmp(vi->ssl_version, "NSS/", 4)) { -diff --git a/src/pycurl.h b/src/pycurl.h -index 2294cb8..092387f 100644 ---- a/src/pycurl.h -+++ b/src/pycurl.h -@@ -164,6 +164,28 @@ pycurl_inet_ntop (int family, void *addr, char *string, size_t string_size); - # include - # include - # define COMPILE_SSL_LIB "openssl" -+# elif defined(HAVE_CURL_WOLFSSL) -+# include -+# if defined(OPENSSL_EXTRA) -+# define HAVE_CURL_OPENSSL -+# define PYCURL_NEED_SSL_TSL -+# define PYCURL_NEED_OPENSSL_TSL -+# include -+# include -+# else -+# ifdef _MSC_VER -+# pragma message(\ -+ "libcurl was compiled with wolfSSL, but the library was built without " \ -+ "--enable-opensslextra; thus no SSL crypto locking callbacks will be set, " \ -+ "which may cause random crashes on SSL requests") -+# else -+# warning \ -+ "libcurl was compiled with wolfSSL, but the library was built without " \ -+ "--enable-opensslextra; thus no SSL crypto locking callbacks will be set, " \ -+ "which may cause random crashes on SSL requests" -+# endif -+# endif -+# define COMPILE_SSL_LIB "wolfssl" - # elif defined(HAVE_CURL_GNUTLS) - # include - # if GNUTLS_VERSION_NUMBER <= 0x020b00 -@@ -195,7 +217,7 @@ pycurl_inet_ntop (int family, void *addr, char *string, size_t string_size); - /* since we have no crypto callbacks for other ssl backends, - * no reason to require users match those */ - # define COMPILE_SSL_LIB "none/other" --# endif /* HAVE_CURL_OPENSSL || HAVE_CURL_GNUTLS || HAVE_CURL_NSS || HAVE_CURL_MBEDTLS */ -+# endif /* HAVE_CURL_OPENSSL || HAVE_CURL_WOLFSSL || HAVE_CURL_GNUTLS || HAVE_CURL_NSS || HAVE_CURL_MBEDTLS */ - #else - # define COMPILE_SSL_LIB "none/other" - #endif /* HAVE_CURL_SSL */ diff --git a/lang/python/python-dateutil/Makefile b/lang/python/python-dateutil/Makefile index c90291c8..8b5601ea 100644 --- a/lang/python/python-dateutil/Makefile +++ b/lang/python/python-dateutil/Makefile @@ -8,23 +8,20 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-dateutil -PKG_VERSION:=2.8.0 +PKG_VERSION:=2.8.1 PKG_RELEASE:=1 PKG_LICENSE:=BSD-2-Clause -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/python-dateutil -PKG_HASH:=c89805f6f4d64db21ed966fda138f8a5ed7a4fdbc1a8ee329ce1b74e3c74da9e -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-dateutil-$(PKG_VERSION) +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=73ebfe9dbf22e832286dafa60473e4cd239f8592f699aa5adaf10050e6e1823c PKG_MAINTAINER:=Alexandru Ardelean +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-dateutil/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-defusedxml/Makefile b/lang/python/python-defusedxml/Makefile index b5971ad8..2057e0fa 100644 --- a/lang/python/python-defusedxml/Makefile +++ b/lang/python/python-defusedxml/Makefile @@ -13,18 +13,14 @@ PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=Python-2.0 PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=defusedxml-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/defusedxml +PYPI_NAME:=defusedxml PKG_HASH:=f684034d135af4c6cbb949b8a4d2ed61634515257a67299e5f940fbaa34377f5 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-defusedxml-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-defusedxml/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-docutils/Makefile b/lang/python/python-docutils/Makefile index 23500a57..060ef552 100644 --- a/lang/python/python-docutils/Makefile +++ b/lang/python/python-docutils/Makefile @@ -4,20 +4,17 @@ PKG_NAME:=docutils PKG_VERSION:=0.14 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/docutils +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-docutils-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-docutils/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-dpkt/Makefile b/lang/python/python-dpkt/Makefile index f9f20184..1ca49080 100644 --- a/lang/python/python-dpkt/Makefile +++ b/lang/python/python-dpkt/Makefile @@ -11,15 +11,14 @@ PKG_NAME:=python-dpkt PKG_VERSION:=1.9.2 PKG_RELEASE:=1 -PKG_SOURCE:=dpkt-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/d/dpkt +PYPI_NAME:=dpkt PKG_HASH:=52a92ecd5ca04d5bd852bb11cb2eac4bbe38b42a7c472e0d950eeb9f82a81e54 -PKG_BUILD_DIR:=$(BUILD_DIR)/dpkt-$(PKG_VERSION) PKG_MAINTAINER:=Andrew McConachie PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk diff --git a/lang/python/python-egenix-mx-base/Makefile b/lang/python/python-egenix-mx-base/Makefile index d93035a0..dfb669b3 100644 --- a/lang/python/python-egenix-mx-base/Makefile +++ b/lang/python/python-egenix-mx-base/Makefile @@ -9,28 +9,28 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-egenix-mx-base PKG_VERSION:=3.2.9 -PKG_RELEASE:=2 -PKG_MAINTAINER:=Dmitry Trefilov -PKG_LICENSE:=eGenix.com Public License 1.1.0 -PKG_LICENSE_FILES:=LICENSE COPYRIGHT +PKG_RELEASE:=4 PKG_SOURCE:=egenix-mx-base-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://downloads.egenix.com/python PKG_HASH:=1c6b67688e7a231c6c1da09b7a6a2210745c3f2507bdda70e2639faedbf68977 - PKG_BUILD_DIR:=$(BUILD_DIR)/egenix-mx-base-$(PKG_VERSION) -PKG_BUILD_DEPENDS:=python + +PKG_MAINTAINER:=Dmitry Trefilov +PKG_LICENSE:=eGenix +PKG_LICENSE_FILES:=LICENSE COPYRIGHT include $(INCLUDE_DIR)/package.mk include ../python-package.mk define Package/python-egenix-mx-base - SUBMENU:=Python SECTION:=lang CATEGORY:=Languages - DEPENDS:=+USE_EGLIBC:librt +USE_UCLIBC:librt +python TITLE:=Egenix mxBase + SUBMENU:=Python URL:=https://www.egenix.com/products/python/mxBase/ + DEPENDS:=+python-light + VARIANT:=python endef define Package/python-egenix-mx-base/description @@ -40,16 +40,8 @@ define Package/python-egenix-mx-base/description date/time processing and high speed data types. endef -define Build/Compile - $(call Build/Compile/PyMod,,install --prefix="$(PKG_INSTALL_DIR)/usr") -endef - -define PyPackage/python-egenix-mx-base/install - $(INSTALL_DIR) $(1)$(PYTHON_PKG_DIR) - $(CP) \ - $(PKG_INSTALL_DIR)$(PYTHON_PKG_DIR)/* \ - $(1)$(PYTHON_PKG_DIR) -endef +PYTHON_PKG_SETUP_ARGS:= $(eval $(call PyPackage,python-egenix-mx-base)) $(eval $(call BuildPackage,python-egenix-mx-base)) +$(eval $(call BuildPackage,python-egenix-mx-base-src)) diff --git a/lang/python/python-enum34/Makefile b/lang/python/python-enum34/Makefile index 8f4cd71c..f988e2fc 100644 --- a/lang/python/python-enum34/Makefile +++ b/lang/python/python-enum34/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-enum34 -PKG_VERSION:=1.1.6 -PKG_RELEASE:=4 +PKG_VERSION:=1.1.10 +PKG_RELEASE:=1 -PKG_SOURCE:=enum34-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/e/enum34 -PKG_HASH:=8ad8c4783bf61ded74527bffb48ed9b54166685e4230386a9ed9b1279e2df5b1 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-enum34-$(PKG_VERSION) +PYPI_NAME:=enum34 +PKG_HASH:=cce6a7477ed816bd2542d03d53db9f0db935dd013b70f336a95c73979289f248 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=enum/LICENSE PKG_MAINTAINER:=Jeffery To PKG_CPE_ID:=cpe:/a:python:enum34 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-enum34/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-enum34/patches/001-omit-docs.patch b/lang/python/python-enum34/patches/001-omit-docs.patch index cff6c522..85faa0e8 100644 --- a/lang/python/python-enum34/patches/001-omit-docs.patch +++ b/lang/python/python-enum34/patches/001-omit-docs.patch @@ -1,10 +1,9 @@ -diff -r f24487b45cd0 setup.py ---- a/setup.py Sun May 15 20:28:23 2016 -0700 -+++ b/setup.py Wed Jul 27 22:49:13 2016 +0800 -@@ -63,15 +63,6 @@ - version='1.1.6', +--- a/setup.py ++++ b/setup.py +@@ -71,15 +71,6 @@ data = dict( + version='1.1.10', url='https://bitbucket.org/stoneleaf/enum34', - packages=['enum'], + packages=packages, - package_data={ - 'enum' : [ - 'LICENSE', diff --git a/lang/python/python-et_xmlfile/Makefile b/lang/python/python-et_xmlfile/Makefile index d9af063c..426337d6 100644 --- a/lang/python/python-et_xmlfile/Makefile +++ b/lang/python/python-et_xmlfile/Makefile @@ -12,18 +12,14 @@ PKG_RELEASE:=1 PKG_MAINTAINER:=Alexandru Ardelean , Eneas U de Queiroz PKG_LICENSE:=MIT -PKG_SOURCE:=et_xmlfile-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/e/et_xmlfile +PYPI_NAME:=et_xmlfile PKG_HASH:=614d9722d572f6246302c4491846d2c393c199cfa4edc9af593437691683335b -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-et_xmlfile-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-et_xmlfile/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-evdev/Makefile b/lang/python/python-evdev/Makefile index 6f062d1c..2f7ad030 100644 --- a/lang/python/python-evdev/Makefile +++ b/lang/python/python-evdev/Makefile @@ -9,24 +9,20 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=python-evdev -PKG_VERSION:=1.2.0 +PKG_VERSION:=1.3.0 PKG_RELEASE:=1 PKG_LICENSE:=BSD-3-Clause PKG_MAINTAINER:=Paulo Costa , Alexandru Ardelean -PKG_SOURCE:=evdev-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/e/evdev -PKG_HASH:=b03f5e1be5b4a5327494a981b831d251a142b09e8778eda1a8b53eba91100166 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-evdev-$(PKG_VERSION) +PYPI_NAME:=evdev +PKG_HASH:=b1c649b4fed7252711011da235782b2c260b32e004058d62473471e5cd30634d +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-evdev/Default SUBMENU:=Python SECTION:=lang @@ -74,5 +70,8 @@ PYTHON_PKG_SETUP_GLOBAL_ARGS:=$(PYTHON3_PKG_SETUP_GLOBAL_ARGS) $(eval $(call PyPackage,python-evdev)) $(eval $(call BuildPackage,python-evdev)) +$(eval $(call BuildPackage,python-evdev-src)) + $(eval $(call Py3Package,python3-evdev)) $(eval $(call BuildPackage,python3-evdev)) +$(eval $(call BuildPackage,python3-evdev-src)) diff --git a/lang/python/python3-flask-login/Makefile b/lang/python/python-flask-login/Makefile similarity index 76% rename from lang/python/python3-flask-login/Makefile rename to lang/python/python-flask-login/Makefile index 67df225a..cc7b06c2 100644 --- a/lang/python/python3-flask-login/Makefile +++ b/lang/python/python-flask-login/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2019 CZ.NIC z.s.p.o. (http://www.nic.cz/) +# Copyright (C) 2019-2020 CZ.NIC z.s.p.o. (http://www.nic.cz/) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,18 +8,18 @@ include $(TOPDIR)/rules.mk -PKG_NAME:=Flask-Login -PKG_VERSION:=0.4.1 +PKG_NAME:=python-flask-login +PKG_VERSION:=0.5.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/f/flask-login/ -PKG_HASH:=c815c1ac7b3e35e2081685e389a665f2c74d7e077cb93cecabaea352da4752ec +PYPI_NAME:=Flask-Login +PKG_HASH:=6d33aef15b5bcead780acc339464aae8a6e28f13c90d8b1cf9de8b549d1c0b4b PKG_MAINTAINER:=Jan Pavlinec PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-futures/Makefile b/lang/python/python-futures/Makefile index b8b19f5d..ba56053a 100644 --- a/lang/python/python-futures/Makefile +++ b/lang/python/python-futures/Makefile @@ -4,19 +4,16 @@ PKG_NAME:=futures PKG_VERSION:=3.2.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/f/futures +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=9ec02aa7d674acb8618afb127e27fde7fc68994c0437ad759fa094a574adb265 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-futures-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-futures SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-gmpy2/Makefile b/lang/python/python-gmpy2/Makefile index 4d730f87..81f602c7 100644 --- a/lang/python/python-gmpy2/Makefile +++ b/lang/python/python-gmpy2/Makefile @@ -11,22 +11,19 @@ PKG_NAME:=python-gmpy2 PKG_VERSION:=2.0.8 PKG_RELEASE:=4 -PKG_SOURCE:=gmpy2-$(PKG_VERSION).zip -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/g/gmpy2 +PYPI_NAME:=gmpy2 +PYPI_SOURCE_EXT:=zip PKG_HASH:=dd233e3288b90f21b0bb384bcc7a7e73557bb112ccf0032ad52aa614eb373d3f -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-gmpy2-$(PKG_VERSION) - PKG_LICENSE:=LGPL-3.0-or-later PKG_LICENSE_FILES:=COPYING.LESSER PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=unzip -q -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE); mv -f $(PKG_BUILD_DIR)/gmpy2-$(PKG_VERSION)/* $(PKG_BUILD_DIR) - PYTHON_PKG_SETUP_ARGS:=--nompfr PYTHON3_PKG_SETUP_ARGS:=--nompfr diff --git a/lang/python/python-gnupg/Makefile b/lang/python/python-gnupg/Makefile index 8511b394..54a827e9 100644 --- a/lang/python/python-gnupg/Makefile +++ b/lang/python/python-gnupg/Makefile @@ -8,8 +8,7 @@ PKG_NAME:=python-gnupg PKG_VERSION:=0.4.4 PKG_RELEASE:=2 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/python-gnupg +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=45daf020b370bda13a1429c859fcdff0b766c0576844211446f9266cae97fb0e PKG_LICENSE:=GPL-3.0-or-later @@ -17,9 +16,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Daniel Golle PKG_CPE_ID:=cpe:/a:python-gnupg_project:python-gnupg -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION) -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk diff --git a/lang/python/python-hyperlink/Makefile b/lang/python/python-hyperlink/Makefile index fafe5b0f..869fc5a9 100644 --- a/lang/python/python-hyperlink/Makefile +++ b/lang/python/python-hyperlink/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-hyperlink PKG_VERSION:=19.0.0 PKG_RELEASE:=1 -PKG_SOURCE:=hyperlink-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/h/hyperlink +PYPI_NAME:=hyperlink PKG_HASH:=4288e34705da077fada1111a24a0aa08bb1e76699c9ce49876af722441845654 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-hyperlink-$(PKG_VERSION) - PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-hyperlink/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-idna/Makefile b/lang/python/python-idna/Makefile index d54b91d2..57b6d7ab 100644 --- a/lang/python/python-idna/Makefile +++ b/lang/python/python-idna/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-idna -PKG_VERSION:=2.8 -PKG_RELEASE:=2 +PKG_VERSION:=2.9 +PKG_RELEASE:=1 -PKG_SOURCE:=idna-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/i/idna -PKG_HASH:=c357b3f628cf53ae2c4c05627ecc484553142ca23264e593d327bcde5e9c3407 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-idna-$(PKG_VERSION) +PYPI_NAME:=idna +PKG_HASH:=7588d1c14ae4c77d74036e8c22ff447b26d0fde8f007354fd48a7814db15b7cb PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.rst PKG_MAINTAINER:=Jeffery To , Alexandru Ardelean +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-idna/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-ifaddr/Makefile b/lang/python/python-ifaddr/Makefile index 14fb960b..9c65f691 100644 --- a/lang/python/python-ifaddr/Makefile +++ b/lang/python/python-ifaddr/Makefile @@ -11,16 +11,14 @@ PKG_NAME:=python-ifaddr PKG_VERSION:=0.1.6 PKG_RELEASE:=1 -PKG_SOURCE:=ifaddr-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/i/ifaddr/ +PYPI_NAME:=ifaddr PKG_HASH:=c19c64882a7ad51a394451dabcbbed72e98b5625ec1e79789924d5ea3e3ecb93 -PKG_BUILD_DIR:=$(BUILD_DIR)/ifaddr-$(PKG_VERSION) - PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE.txt +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-importlib-metadata/Makefile b/lang/python/python-importlib-metadata/Makefile deleted file mode 100644 index b16b0ce4..00000000 --- a/lang/python/python-importlib-metadata/Makefile +++ /dev/null @@ -1,40 +0,0 @@ -include $(TOPDIR)/rules.mk - -PKG_NAME:=python-importlib_metadata -PKG_VERSION:=0.19 -PKG_RELEASE:=1 - -PKG_SOURCE:=importlib_metadata-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/i/importlib_metadata -PKG_HASH:=23d3d873e008a513952355379d93cbcab874c58f4f034ff657c7a87422fa64e8 - -PKG_BUILD_DIR:=$(BUILD_DIR)/importlib_metadata-$(PKG_VERSION) - -PKG_MAINTAINER:=Paul Spooren -PKG_LICENSE:=Apache-2.0 -PKG_LICENSE_FILES:=LICENSE - -include $(INCLUDE_DIR)/package.mk -include ../python3-package.mk - -define Package/python3-importlib-metadata - SECTION:=lang - CATEGORY:=Languages - SUBMENU:=Python - TITLE:=Read metadata from Python packages - URL:=https://gitlab.com/python-devs/importlib_metadata - DEPENDS=+python3-light +python3-zipp - VARIANT:=python3 -endef - -PYTHON3_PKG_SETUP_VARS:= \ - PKG_VERSION="$(PKG_VERSION)" - -define Package/python3-importlib-metadata/description - importlib_metadata is a library to access the metadata for a Python package. - It is intended to be ported to Python 3.8. -endef - -$(eval $(call Py3Package,python3-importlib-metadata)) -$(eval $(call BuildPackage,python3-importlib-metadata)) -$(eval $(call BuildPackage,python3-importlib-metadata-src)) diff --git a/lang/python/python-importlib-metadata/patches/001-fix-scm-version.patch b/lang/python/python-importlib-metadata/patches/001-fix-scm-version.patch deleted file mode 100644 index 89663b04..00000000 --- a/lang/python/python-importlib-metadata/patches/001-fix-scm-version.patch +++ /dev/null @@ -1,8 +0,0 @@ ---- a/setup.py -+++ b/setup.py -@@ -1,3 +1,4 @@ - from setuptools import setup -+import os - --setup(use_scm_version=True) -+setup(version=os.getenv('PKG_VERSION')) diff --git a/lang/python/python-incremental/Makefile b/lang/python/python-incremental/Makefile index db0ce103..65cc4f71 100644 --- a/lang/python/python-incremental/Makefile +++ b/lang/python/python-incremental/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-incremental PKG_VERSION:=17.5.0 PKG_RELEASE:=1 -PKG_SOURCE:=incremental-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/i/incremental +PYPI_NAME:=incremental PKG_HASH:=7b751696aaf36eebfab537e458929e194460051ccad279c72b755a167eebd4b3 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-incremental-$(PKG_VERSION) - PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-incremental/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-influxdb/Makefile b/lang/python/python-influxdb/Makefile index 221db928..3f7d5f5a 100644 --- a/lang/python/python-influxdb/Makefile +++ b/lang/python/python-influxdb/Makefile @@ -9,12 +9,11 @@ PKG_VERSION:=5.2.2 PKG_RELEASE:=1 PKG_MAINTAINER:=Karel Kočí -PKG_SOURCE_URL:=https://pypi.python.org/packages/source/i/influxdb/ -PKG_SOURCE:=influxdb-$(PKG_VERSION).tar.gz +PYPI_NAME:=influxdb PKG_HASH:=afeff28953a91b4ea1aebf9b5b8258a4488d0e49e2471db15ea43fd2c8533143 PKG_LICENSE:=MIT -PKG_BUILD_DIR:=$(BUILD_DIR)/influxdb-$(PKG_VERSION) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-intelhex/Makefile b/lang/python/python-intelhex/Makefile index 4f9619bc..bccb044f 100644 --- a/lang/python/python-intelhex/Makefile +++ b/lang/python/python-intelhex/Makefile @@ -8,15 +8,15 @@ PKG_NAME:=python-intelhex PKG_VERSION:=2.2.1 PKG_RELEASE:=1 -PKG_SOURCE:=intelhex-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/i/intelhex/ +PYPI_NAME:=IntelHex +PYPI_SOURCE_NAME:=intelhex PKG_HASH:=009d8511e0d50639230c39af9607deee771cf026f67ef7507a8c3fd4fa927832 -PKG_BUILD_DIR:=$(BUILD_DIR)/intelhex-$(PKG_VERSION) PKG_MAINTAINER:=Karel Kočí PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.txt +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-ipaddress/Makefile b/lang/python/python-ipaddress/Makefile index d78a35bc..664076be 100644 --- a/lang/python/python-ipaddress/Makefile +++ b/lang/python/python-ipaddress/Makefile @@ -11,20 +11,16 @@ PKG_NAME:=python-ipaddress PKG_VERSION:=1.0.23 PKG_RELEASE:=1 -PKG_SOURCE:=ipaddress-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/i/ipaddress +PYPI_NAME:=ipaddress PKG_HASH:=b7f8e0369580bb4a24d5ba1d7cc29660a4a6987763faf1d8a8046830e020e7e2 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-ipaddress-$(PKG_VERSION) - PKG_LICENSE:=Python-2.0 PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-ipaddress/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-jdcal/Makefile b/lang/python/python-jdcal/Makefile index e43c70aa..b674c822 100644 --- a/lang/python/python-jdcal/Makefile +++ b/lang/python/python-jdcal/Makefile @@ -13,18 +13,14 @@ PKG_MAINTAINER:=Alexandru Ardelean , Eneas U de Queiroz PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=LICENSE.txt -PKG_SOURCE:=jdcal-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/j/jdcal +PYPI_NAME:=jdcal PKG_HASH:=472872e096eb8df219c23f2689fc336668bdb43d194094b5cc1707e1640acfc8 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-jdcal-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-jdcal/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-jmespath/Makefile b/lang/python/python-jmespath/Makefile index ce11ca7b..e4d1494f 100644 --- a/lang/python/python-jmespath/Makefile +++ b/lang/python/python-jmespath/Makefile @@ -4,20 +4,17 @@ PKG_NAME:=jmespath PKG_VERSION:=0.9.3 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/j/jmespath +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=6a81d4c9aa62caf061cb517b4d9ad1dd300374cd4706997aff9cd6aedd61fc64 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-jmespath-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-jmespath/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-jsonpath-ng/Makefile b/lang/python/python-jsonpath-ng/Makefile index 468fce3a..7059c27c 100644 --- a/lang/python/python-jsonpath-ng/Makefile +++ b/lang/python/python-jsonpath-ng/Makefile @@ -9,11 +9,10 @@ PKG_VERSION:=1.4.3 PKG_RELEASE:=1 PKG_MAINTAINER:=Karel Kočí -PKG_SOURCE_URL:=https://pypi.python.org/packages/source/j/jsonpath-ng/ -PKG_SOURCE:=jsonpath-ng-$(PKG_VERSION).tar.gz +PYPI_NAME:=jsonpath-ng PKG_HASH:=b1fc75b877e9b2f46845a455fbdcfb0f0d9c727c45c19a745d02db620a9ef0be -PKG_BUILD_DIR:=$(BUILD_DIR)/jsonpath-ng-$(PKG_VERSION) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-ldap/Makefile b/lang/python/python-ldap/Makefile index 958c82cf..78080285 100644 --- a/lang/python/python-ldap/Makefile +++ b/lang/python/python-ldap/Makefile @@ -14,10 +14,10 @@ PKG_MAINTAINER:=Dmitry Trefilov PKG_LICENSE:=Python-style PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/python-ldap +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=41975e79406502c092732c57ef0c2c2eb318d91e8e765f81f5d4ab6c1db727c5 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk diff --git a/lang/python/python-libmodbus/Makefile b/lang/python/python-libmodbus/Makefile new file mode 100644 index 00000000..2f393f44 --- /dev/null +++ b/lang/python/python-libmodbus/Makefile @@ -0,0 +1,58 @@ +include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/kernel.mk + +PKG_NAME:=python-libmodbus +PKG_VERSION:=0.5.0 +PKG_RELEASE:=1 + +PKG_LICENSE:=BSD-3-Clause +PKG_MAINTAINER:=Daniel Golle + +PYPI_NAME:=pylibmodbus +PKG_HASH:=80f837304ffa8476145ea643f6b98aa94b205013a96f1e5173d7bdc776426aee + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python-package.mk +include ../python3-package.mk + +define Package/python-libmodbus/Default + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + URL:=https://pypi.org/project/pylibmodbus +endef + +define Package/python-libmodbus +$(call Package/python-libmodbus/Default) + TITLE:=python-libmodbus + DEPENDS:=+libmodbus \ + +PACKAGE_python-libmodbus:python-light \ + +PACKAGE_python-libmodbus:python-cffi + VARIANT:=python +endef + +define Package/python3-libmodbus +$(call Package/python-libmodbus/Default) + TITLE:=pylibmodbus + DEPENDS:=+libmodbus \ + +PACKAGE_python3-libmodbus:python3-light \ + +PACKAGE_python3-libmodbus:python3-cffi + VARIANT:=python3 +endef + +define Package/python-libmodbus/description + Python Interface for libmodbus written with CFFI. +endef + +define Package/python3-libmodbus/description +$(call Package/python-libmodbus/description) +. +(Variant for Python3) +endef + +$(eval $(call PyPackage,python-libmodbus)) +$(eval $(call BuildPackage,python-libmodbus)) + +$(eval $(call Py3Package,python3-libmodbus)) +$(eval $(call BuildPackage,python3-libmodbus)) diff --git a/lang/python/python-lxml/Makefile b/lang/python/python-lxml/Makefile index cb9f4024..611168de 100644 --- a/lang/python/python-lxml/Makefile +++ b/lang/python/python-lxml/Makefile @@ -8,21 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-lxml -PKG_VERSION:=4.4.1 +PKG_VERSION:=4.4.2 PKG_RELEASE:=1 -PKG_SOURCE:=lxml-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/l/lxml -PKG_HASH:=c81cb40bff373ab7a7446d6bbca0190bccc5be3448b47b51d729e37799bb5692 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-lxml-$(PKG_VERSION) -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) +PYPI_NAME:=lxml +PKG_HASH:=eff69ddbf3ad86375c344339371168640951c302450c5d3e9936e98d6459db06 PKG_LICENSE:=BSD PKG_LICENSE_FILES:=LICENSES.txt PKG_MAINTAINER:=Alexandru Ardelean PKG_CPE_ID:=cpe:/a:lxml:lxml +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk @@ -90,6 +87,8 @@ endef $(eval $(call PyPackage,python-lxml)) $(eval $(call BuildPackage,python-lxml)) +$(eval $(call BuildPackage,python-lxml-src)) $(eval $(call Py3Package,python3-lxml)) $(eval $(call BuildPackage,python3-lxml)) +$(eval $(call BuildPackage,python3-lxml-src)) diff --git a/lang/python/python-markdown/Makefile b/lang/python/python-markdown/Makefile index 06baa3a2..90f80d45 100644 --- a/lang/python/python-markdown/Makefile +++ b/lang/python/python-markdown/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# Copyright (C) 2019-2O20 CZ.NIC, z. s. p. o. (https://www.nic.cz/) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,19 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-markdown -PKG_VERSION:=3.1.1 +PKG_VERSION:=3.2.1 PKG_RELEASE:=1 -PKG_SOURCE:=Markdown-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/m/markdown/ -PKG_HASH:=2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a - -PKG_BUILD_DIR:=$(BUILD_DIR)/Markdown-$(PKG_VERSION) +PYPI_NAME:=Markdown +PKG_HASH:=90fee683eeabe1a92e149f7ba74e5ccdc81cd397bd6c516d93a8da0ef90b6902 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.md +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-more-itertools/Makefile b/lang/python/python-more-itertools/Makefile new file mode 100644 index 00000000..895aed57 --- /dev/null +++ b/lang/python/python-more-itertools/Makefile @@ -0,0 +1,42 @@ +# +# Copyright (C) 2019-2020 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-more-itertools +PKG_VERSION:=8.2.0 +PKG_RELEASE:=1 + +PYPI_NAME:=more-itertools +PKG_HASH:=b1ddb932186d8a6ac451e1d95844b382f55e12686d51ca0c68b6f61f2ab7a507 + +PKG_MAINTAINER:=Jan Pavlinec +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-more-itertools + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=More routines for operating on iterables, beyond itertools + URL:=https://github.com/erikrose/more-itertools + DEPENDS:=+python3-light + VARIANT:=python3 +endef + +define Package/python3-more-itertools/description + more-itertools library collects additional building blocks, + recipes, and routines for working with Python iterables. +endef + +$(eval $(call Py3Package,python3-more-itertools)) +$(eval $(call BuildPackage,python3-more-itertools)) +$(eval $(call BuildPackage,python3-more-itertools-src)) diff --git a/lang/python/python-multidict/Makefile b/lang/python/python-multidict/Makefile index 971c382d..fee85601 100644 --- a/lang/python/python-multidict/Makefile +++ b/lang/python/python-multidict/Makefile @@ -11,14 +11,14 @@ PKG_NAME:=multidict PKG_VERSION:=4.5.2 PKG_RELEASE:=1 -PKG_SOURCE:=multidict-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/m/multidict/ +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=024b8129695a952ebd93373e45b5d341dbb87c17ce49637b34000093f243dd4f PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-mysql/Makefile b/lang/python/python-mysql/Makefile deleted file mode 100644 index 3ad98165..00000000 --- a/lang/python/python-mysql/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# -# Copyright (C) 2007-2018 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=python-mysql -PKG_VERSION:=1.3.14 -PKG_RELEASE:=2 -PKG_LICENSE:=GPL-2.0 - -PKG_SOURCE:=mysqlclient-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/m/mysqlclient -PKG_HASH:=3981ae9ce545901a36a8b7aed76ed02960a429f75dc53b7ad77fb2f9ab7cd56b -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-mysql-$(PKG_VERSION) -PKG_MAINTAINER:=Alexandru Ardelean - -include $(INCLUDE_DIR)/package.mk -include ../python-package.mk -include ../python3-package.mk -# python-mysql needs iconv -include $(INCLUDE_DIR)/nls.mk - -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - -define Package/python-mysql/Default - SUBMENU:=Python - SECTION:=lang - CATEGORY:=Languages - URL:=https://pypi.python.org/project/mysqlclient -endef - -define Package/python-mysql - $(call Package/python-mysql/Default) - TITLE:=MySQL database adapter for Python - DEPENDS:=+PACKAGE_python-mysql:python +libmysqlclient - VARIANT:=python -endef - -define Package/python3-mysql - $(call Package/python-mysql/Default) - TITLE:=MySQL database adapter for Python3 - DEPENDS:=+PACKAGE_python3-mysql:python3 +libmysqlclient - VARIANT:=python3 -endef - -define Package/python-mysql/description - MySQLdb is an thread-compatible interface to the popular MySQL database - server that provides the Python database API. -endef - -define Package/python3-mysql/description -$(call Package/python-mysql/description) -. -(Variant for Python3) -endef - -$(eval $(call PyPackage,python-mysql)) -$(eval $(call BuildPackage,python-mysql)) - -$(eval $(call Py3Package,python3-mysql)) -$(eval $(call BuildPackage,python3-mysql)) diff --git a/lang/python/python-mysqlclient/Makefile b/lang/python/python-mysqlclient/Makefile new file mode 100644 index 00000000..47f4a1a5 --- /dev/null +++ b/lang/python/python-mysqlclient/Makefile @@ -0,0 +1,64 @@ +# +# Copyright (C) 2007-2018 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-mysqlclient +PKG_VERSION:=1.4.6 +PKG_RELEASE:=1 +PKG_LICENSE:=GPL-2.0 + +PYPI_NAME:=mysqlclient +PKG_HASH:=f3fdaa9a38752a3b214a6fe79d7cae3653731a53e577821f9187e67cbecb2e16 +PKG_MAINTAINER:=Alexandru Ardelean + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python-package.mk +include ../python3-package.mk +# python-mysqlclient needs iconv +include $(INCLUDE_DIR)/nls.mk + +define Package/python-mysqlclient/Default + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + URL:=https://mysqlclient.readthedocs.io/ +endef + +define Package/python-mysqlclient + $(call Package/python-mysqlclient/Default) + TITLE:=MySQL database adapter for Python + DEPENDS:=+PACKAGE_python-mysqlclient:python +libmysqlclient + VARIANT:=python +endef + +define Package/python3-mysqlclient + $(call Package/python-mysqlclient/Default) + TITLE:=MySQL database adapter for Python3 + DEPENDS:=+PACKAGE_python3-mysqlclient:python3 +libmysqlclient + VARIANT:=python3 +endef + +define Package/python-mysqlclient/description + MySQLdb is an thread-compatible interface to the popular MySQL database + server that provides the Python database API. +endef + +define Package/python3-mysqlclient/description +$(call Package/python-mysqlclient/description) +. +(Variant for Python3) +endef + +$(eval $(call PyPackage,python-mysqlclient)) +$(eval $(call BuildPackage,python-mysqlclient)) +$(eval $(call BuildPackage,python-mysqlclient-src)) + +$(eval $(call Py3Package,python3-mysqlclient)) +$(eval $(call BuildPackage,python3-mysqlclient)) +$(eval $(call BuildPackage,python3-mysqlclient-src)) diff --git a/lang/python/python-netdisco/Makefile b/lang/python/python-netdisco/Makefile index fdcee517..9c5ae54d 100644 --- a/lang/python/python-netdisco/Makefile +++ b/lang/python/python-netdisco/Makefile @@ -11,16 +11,14 @@ PKG_NAME:=python-netdisco PKG_VERSION:=2.6.0 PKG_RELEASE:=1 -PKG_SOURCE:=netdisco-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/n/netdisco +PYPI_NAME:=netdisco PKG_HASH:=2b3aca14a1807712a053f11fd80dc251dd821ee4899aefece515287981817762 -PKG_BUILD_DIR:=$(BUILD_DIR)/netdisco-$(PKG_VERSION) - PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE.md +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-oauthlib/Makefile b/lang/python/python-oauthlib/Makefile index 6376cdf5..ae157406 100644 --- a/lang/python/python-oauthlib/Makefile +++ b/lang/python/python-oauthlib/Makefile @@ -13,17 +13,14 @@ PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=oauthlib-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/o/oauthlib +PYPI_NAME:=oauthlib PKG_HASH:=bee41cc35fcca6e988463cacc3bcb8a96224f470ca547e697b604cc697b2f889 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-oauthlib-$(PKG_VERSION) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-oauthlib/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-package-install.sh b/lang/python/python-package-install.sh index 2ca2abc1..337727af 100644 --- a/lang/python/python-package-install.sh +++ b/lang/python/python-package-install.sh @@ -54,8 +54,6 @@ python="$4" mode="$5" filespec="$6" -SED="${SED:-sed -e}" - find "$src_dir" -name "*.exe" -delete process_filespec "$src_dir" "$dst_dir" "$filespec" || { @@ -63,12 +61,6 @@ process_filespec "$src_dir" "$dst_dir" "$filespec" || { exit 1 } -usr_bin_dir="$dst_dir/usr/bin" - -if [ -d "$usr_bin_dir" ] ; then - $SED "1"'!'"b;s,^#"'!'".*python.*,#"'!'"/usr/bin/python${ver}," -i --follow-symlinks $usr_bin_dir/* -fi - if [ "$mode" == "sources" ] ; then # Copy only python source files find "$dst_dir" -not -type d -not -name "*.py" -delete @@ -77,8 +69,9 @@ if [ "$mode" == "sources" ] ; then exit 0 fi -legacy= -[ "$ver" == "3" ] && legacy="-b" +if [ "$ver" == "3" ] ; then + legacy="-b" +fi # default max recursion is 10 max_recursion_level=20 diff --git a/lang/python/python-package.mk b/lang/python/python-package.mk index 9bd0b9aa..019f4f02 100644 --- a/lang/python/python-package.mk +++ b/lang/python/python-package.mk @@ -35,6 +35,10 @@ ifdef CONFIG_USE_MIPS16 TARGET_CFLAGS += -mno-mips16 -mno-interlink-mips16 endif +define PyShebang +$(SED) "1"'!'"b;s,^#"'!'".*python.*,#"'!'"/usr/bin/python2," -i --follow-symlinks $(1) +endef + define PyPackage define Package/$(1)-src @@ -74,11 +78,13 @@ define PyPackage define Package/$(1)/install $$(call PyPackage/$(1)/install,$$(1)) - SED="$(SED)" \ $(SHELL) $(python_mk_path)python-package-install.sh "2" \ "$(PKG_INSTALL_DIR)" "$$(1)" \ "$(HOST_PYTHON_BIN)" "$$(2)" \ - "$$$$$$$$$$(call shvar,PyPackage/$(1)/filespec)" + "$$$$$$$$$$(call shvar,PyPackage/$(1)/filespec)" && \ + if [ -d "$$(1)/usr/bin" ]; then \ + $(call PyShebang,$$(1)/usr/bin/*) ; \ + fi endef define Package/$(1)-src/install diff --git a/lang/python/python-paho-mqtt/Makefile b/lang/python/python-paho-mqtt/Makefile index 1988f9b1..51540292 100644 --- a/lang/python/python-paho-mqtt/Makefile +++ b/lang/python/python-paho-mqtt/Makefile @@ -5,16 +5,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-paho-mqtt -PKG_VERSION:=1.4.0 +PKG_VERSION:=1.5.0 PKG_RELEASE:=1 -PKG_LICENSE:=Eclipse Public License v1.0 / Eclipse Distribution License v1.0 + PKG_MAINTAINER:=Josef Schlehofer , Alexandru Ardelean +PKG_LICENSE:=EPL-1.0 Eclipse Distribution License v1.0 +PKG_LICENSE_FILES:=epl-v10 edl-v10 -PKG_SOURCE:=paho-mqtt-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/25/63/db25e62979c2a716a74950c9ed658dce431b5cb01fde29eb6cba9489a904 -PKG_HASH:=e440a052b46d222e184be3be38676378722072fcd4dfd2c8f509fb861a7b0b79 -PKG_BUILD_DIR:=$(BUILD_DIR)/paho-mqtt-$(PKG_VERSION) +PYPI_NAME:=paho-mqtt +PKG_HASH:=e3d286198baaea195c8b3bc221941d25a3ab0e1507fc1779bdb7473806394be4 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-parsley/Makefile b/lang/python/python-parsley/Makefile index 83df1138..39fed358 100644 --- a/lang/python/python-parsley/Makefile +++ b/lang/python/python-parsley/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-parsley PKG_VERSION:=1.3 PKG_RELEASE:=4 -PKG_SOURCE:=Parsley-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/P/Parsley +PYPI_NAME:=Parsley PKG_HASH:=9444278d47161d5f2be76a767809a3cbe6db4db822f46a4fd7481d4057208d41 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-parsley-$(PKG_VERSION) - PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - PYTHON_PKG_SETUP_ARGS:= PYTHON3_PKG_SETUP_ARGS:= diff --git a/lang/python/python-pcapy/Makefile b/lang/python/python-pcapy/Makefile index 24c2f7c1..5389146e 100644 --- a/lang/python/python-pcapy/Makefile +++ b/lang/python/python-pcapy/Makefile @@ -11,14 +11,13 @@ PKG_NAME:=python-pcapy PKG_VERSION:=0.11.4 PKG_RELEASE:=2 -PKG_SOURCE:=pcapy-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pcapy +PYPI_NAME:=pcapy PKG_HASH:=aa239913678d7ba116e66057a37f914de7726aecd11d00db470127df115c4e78 -PKG_BUILD_DIR:=$(BUILD_DIR)/pcapy-$(PKG_VERSION) PKG_MAINTAINER:=Andrew McConachie PKG_LICENSE:=Apache-1.1 +include ../pypi.mk include $(INCLUDE_DIR)/uclibc++.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk diff --git a/lang/python/python-ply/Makefile b/lang/python/python-ply/Makefile index a728e15c..ea6457d7 100644 --- a/lang/python/python-ply/Makefile +++ b/lang/python/python-ply/Makefile @@ -11,23 +11,18 @@ PKG_NAME:=python-ply PKG_VERSION:=3.11 PKG_RELEASE:=1 -PKG_SOURCE:=ply-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://www.dabeaz.com/ply \ - https://files.pythonhosted.org/packages/source/p/ply +PYPI_NAME:=ply PKG_HASH:=00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-ply-$(PKG_VERSION) - PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=README.md PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-ply/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-psycopg2/Makefile b/lang/python/python-psycopg2/Makefile index 1aa02469..b67d29ef 100644 --- a/lang/python/python-psycopg2/Makefile +++ b/lang/python/python-psycopg2/Makefile @@ -11,10 +11,8 @@ PKG_NAME:=python-psycopg2 PKG_VERSION:=2.7.6.1 PKG_RELEASE:=2 -PKG_SOURCE:=psycopg2-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/psycopg2 +PYPI_NAME:=psycopg2 PKG_HASH:=27959abe64ca1fc6d8cd11a71a1f421d8287831a3262bd4cacd43bbf43cc3c82 -PKG_BUILD_DIR:=$(BUILD_DIR)/psycopg2-$(PKG_VERSION) PKG_MAINTAINER:=Dmitry Trefilov PKG_LICENSE:=LGPL-3.0-or-later @@ -22,6 +20,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_BUILD_DEPENDS:=python/host +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk diff --git a/lang/python/python-py/Makefile b/lang/python/python-py/Makefile new file mode 100644 index 00000000..d6264fe1 --- /dev/null +++ b/lang/python/python-py/Makefile @@ -0,0 +1,43 @@ +# +# Copyright (C) 2019-2020 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-py +PKG_VERSION:=1.8.1 +PKG_RELEASE:=1 + +PYPI_NAME:=py +PKG_HASH:=5e27081401262157467ad6e7f851b7aa402c5852dbcb3dae06768434de5752aa + +PKG_MAINTAINER:=Jan Pavlinec +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +HOST_PYTHON3_PACKAGE_BUILD_DEPENDS:=setuptools-scm + +define Package/python3-py + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=py + URL:=https://github.com/pytest-dev/py + DEPENDS:=+python3-light + VARIANT:=python3 +endef + +define Package/python3-py/description + Library with cross-python path, ini-parsing, io, code, log facilities +endef + +$(eval $(call Py3Package,python3-py)) +$(eval $(call BuildPackage,python3-py)) +$(eval $(call BuildPackage,python3-py-src)) diff --git a/lang/python/python-pyasn1-modules/Makefile b/lang/python/python-pyasn1-modules/Makefile index 96719948..5261bece 100644 --- a/lang/python/python-pyasn1-modules/Makefile +++ b/lang/python/python-pyasn1-modules/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-pyasn1-modules -PKG_VERSION:=0.2.7 +PKG_VERSION:=0.2.8 PKG_RELEASE:=1 -PKG_SOURCE:=pyasn1-modules-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyasn1-modules -PKG_HASH:=0c35a52e00b672f832e5846826f1fb7507907f7d52fba6faa9e3c4cbe874fe4b +PYPI_NAME:=pyasn1-modules +PKG_HASH:=905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=LICENSE.txt PKG_MAINTAINER:=Jeffery To , Alexandru Ardelean -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pyasn1-modules-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pyasn1-modules/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-pyasn1/Makefile b/lang/python/python-pyasn1/Makefile index 6222d929..3ba9073c 100644 --- a/lang/python/python-pyasn1/Makefile +++ b/lang/python/python-pyasn1/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-pyasn1 -PKG_VERSION:=0.4.7 +PKG_VERSION:=0.4.8 PKG_RELEASE:=1 -PKG_SOURCE:=pyasn1-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyasn1 -PKG_HASH:=a9495356ca1d66ed197a0f72b41eb1823cf7ea8b5bd07191673e8147aecf8604 +PYPI_NAME:=pyasn1 +PKG_HASH:=aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=LICENSE.txt PKG_MAINTAINER:=Jeffery To , Alexandru Ardelean -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pyasn1-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pyasn1/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-pycparser/Makefile b/lang/python/python-pycparser/Makefile index 77932a04..19cf88c1 100644 --- a/lang/python/python-pycparser/Makefile +++ b/lang/python/python-pycparser/Makefile @@ -8,14 +8,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-pycparser -PKG_VERSION:=2.19 -PKG_RELEASE:=2 +PKG_VERSION:=2.20 +PKG_RELEASE:=1 -PKG_SOURCE:=pycparser-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pycparser -PKG_HASH:=a988718abfad80b6b157acce7bf130a30876d27603738ac39f140993246b25b3 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pycparser-$(PKG_VERSION) +PYPI_NAME:=pycparser +PKG_HASH:=2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE @@ -24,12 +21,11 @@ PKG_MAINTAINER:=Jeffery To HOST_PYTHON_PACKAGE_BUILD_DEPENDS:="ply==3.10" HOST_PYTHON3_PACKAGE_BUILD_DEPENDS:="ply==3.10" +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pycparser/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-pyopenssl/Makefile b/lang/python/python-pyopenssl/Makefile index 5bfc8cc8..53dccc30 100644 --- a/lang/python/python-pyopenssl/Makefile +++ b/lang/python/python-pyopenssl/Makefile @@ -8,26 +8,22 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-pyopenssl -PKG_VERSION:=19.0.0 -PKG_RELEASE:=2 +PKG_VERSION:=19.1.0 +PKG_RELEASE:=1 -PKG_SOURCE:=pyOpenSSL-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyOpenSSL -PKG_HASH:=aeca66338f6de19d1aa46ed634c3b9ae519a64b458f8468aec688e7e3c20f200 +PYPI_NAME:=pyOpenSSL +PKG_HASH:=9a24494b2602aaf402be5c9e30a0b82d4a5c67528fe8fb475e3f3bc00dd69507 PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To , Alexandru Ardelean PKG_CPE_ID:=cpe:/a:pyopenssl_project:pyopenssl -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pyopenssl-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pyopenssl/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-pyotp/Makefile b/lang/python/python-pyotp/Makefile index b41ce93c..e04a92f7 100644 --- a/lang/python/python-pyotp/Makefile +++ b/lang/python/python-pyotp/Makefile @@ -8,17 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pyotp -PKG_VERSION:=2.2.7 +PKG_VERSION:=2.3.0 PKG_RELEASE:=1 -PKG_SOURCE:=pyotp-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyotp -PKG_HASH:=be0ffeabddaa5ee53e7204e7740da842d070cf69168247a3d0c08541b84de602 +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=fc537e8acd985c5cbf51e11b7d53c42276fee017a73aec7c07380695671ca1a1 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-pyparsing/Makefile b/lang/python/python-pyparsing/Makefile new file mode 100644 index 00000000..55313639 --- /dev/null +++ b/lang/python/python-pyparsing/Makefile @@ -0,0 +1,46 @@ +# +# Copyright (C) 2019-2020 CZ.NIC z.s.p.o. (http://www.nic.cz/) +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-pyparsing +PKG_VERSION:=2.4.6 +PKG_RELEASE:=1 + +PYPI_NAME:=pyparsing +PKG_HASH:=4c830582a84fb022400b85429791bc551f1f4871c33f23e44f353119e92f969f + +PKG_MAINTAINER:=Jan Pavlinec +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-pyparsing + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=Library for constructing grammar directly in python + URL:=https://github.com/pyparsing/pyparsing/ + DEPENDS:=+python3-light + VARIANT:=python3 +endef + +define Package/python3-pyparsing/description + The pyparsing module is an alternative approach to creating + and executing simple grammars, vs. the traditional lex/yacc + approach, or the use of regular expressions. + The pyparsing module provides a library of classes that + client code uses to construct the grammar directly in Python code. +endef + +$(eval $(call Py3Package,python3-pyparsing)) +$(eval $(call BuildPackage,python3-pyparsing)) +$(eval $(call BuildPackage,python3-pyparsing-src)) diff --git a/lang/python/python-pyptlib/Makefile b/lang/python/python-pyptlib/Makefile index d2e7f574..9c0403ab 100644 --- a/lang/python/python-pyptlib/Makefile +++ b/lang/python/python-pyptlib/Makefile @@ -11,21 +11,17 @@ PKG_NAME:=python-pyptlib PKG_VERSION:=0.0.6 PKG_RELEASE:=3 -PKG_SOURCE:=pyptlib-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyptlib +PYPI_NAME:=pyptlib PKG_HASH:=b98472e3d9e8f4689d3913ca8f89afa5e6cc5383dcd8686987606166f9dac607 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pyptlib-$(PKG_VERSION) - PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pyptlib/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-pyrsistent/Makefile b/lang/python/python-pyrsistent/Makefile index 0e7a1341..9121a7fe 100644 --- a/lang/python/python-pyrsistent/Makefile +++ b/lang/python/python-pyrsistent/Makefile @@ -8,18 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-pyrsistent -PKG_VERSION:=0.15.3 +PKG_VERSION:=0.15.4 PKG_RELEASE:=1 -PKG_SOURCE:=pyrsistent-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyrsistent/ -PKG_HASH:=50cffebc87ca91b9d4be2dcc2e479272bcb466b5a0487b6c271f7ddea6917e14 -PKG_BUILD_DIR:=$(BUILD_DIR)/pyrsistent-$(PKG_VERSION) +PYPI_NAME:=pyrsistent +PKG_HASH:=34b47fa169d6006b32e99d4b3c4031f155e6e68ebcc107d6454852e8e0ee6533 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE.mit +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-pyserial/Makefile b/lang/python/python-pyserial/Makefile index 8a25c115..ca80e6c4 100644 --- a/lang/python/python-pyserial/Makefile +++ b/lang/python/python-pyserial/Makefile @@ -11,21 +11,17 @@ PKG_NAME:=python-pyserial PKG_VERSION:=3.4 PKG_RELEASE:=1 -PKG_SOURCE:=pyserial-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://pypi.python.org/packages/cc/74/11b04703ec416717b247d789103277269d567db575d2fd88f25d9767fe3d/ +PYPI_NAME:=pyserial PKG_HASH:=6e2d401fdee0eab996cf734e67773a0143b932772ca8b42451440cfed942c627 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pyserial-$(PKG_VERSION) - PKG_LICENSE:=BSD PKG_MAINTAINER:=Micke Prag +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pyserial/Default SECTION:=lang-python CATEGORY:=Languages diff --git a/lang/python/python-pytz/Makefile b/lang/python/python-pytz/Makefile index a90a80f6..bdff0ac5 100644 --- a/lang/python/python-pytz/Makefile +++ b/lang/python/python-pytz/Makefile @@ -8,29 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-pytz -PKG_VERSION:=2019.2 +PKG_VERSION:=2019.3 PKG_RELEASE:=1 -PKG_SOURCE:=pytz-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pytz -PKG_HASH:=26c0b32e437e54a18161324a2fca3c4b9846b74a8dccddd843113109e1116b32 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-pytz-$(PKG_VERSION) +PYPI_NAME:=pytz +PKG_HASH:=b02c06db6cf09c12dd25137e563b31700d3b80fcc4ad23abb7a315f2789819be PKG_MAINTAINER:=Alexandru Ardelean PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE.txt -HOST_BUILD_DEPENDS:=python/host - -include $(INCLUDE_DIR)/host-build.mk +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) -HOST_UNPACK:=$(HOST_TAR) -C $(HOST_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-pytz/Default SUBMENU:=Python SECTION:=lang @@ -62,14 +54,6 @@ $(call Package/python-pytz/description) (Variant for Python3) endef -define Host/Compile - $(call Build/Compile/HostPyMod,,install --prefix="" --root="$(STAGING_DIR_HOSTPKG)") -endef - -Host/Install:= - -$(eval $(call HostBuild)) - $(eval $(call PyPackage,python-pytz)) $(eval $(call BuildPackage,python-pytz)) $(eval $(call BuildPackage,python-pytz-src)) diff --git a/lang/python/python-qrcode/Makefile b/lang/python/python-qrcode/Makefile index b67fdf62..63c08db3 100644 --- a/lang/python/python-qrcode/Makefile +++ b/lang/python/python-qrcode/Makefile @@ -9,22 +9,18 @@ PKG_NAME:=python-qrcode PKG_VERSION:=6.1 PKG_RELEASE:=2 -PKG_SOURCE:=qrcode-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/q/qrcode/ +PYPI_NAME:=qrcode PKG_HASH:=505253854f607f2abf4d16092c61d4e9d511a3b4392e60bff957a68592b04369 PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-qrcode-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-qrcode/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-rcssmin/Makefile b/lang/python/python-rcssmin/Makefile index f1e4477f..2a812920 100644 --- a/lang/python/python-rcssmin/Makefile +++ b/lang/python/python-rcssmin/Makefile @@ -13,18 +13,14 @@ PKG_MAINTAINER:=Alexandru Ardelean , Eneas U de Queiroz PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=rcssmin-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/r/rcssmin +PYPI_NAME:=rcssmin PKG_HASH:=ca87b695d3d7864157773a61263e5abb96006e9ff0e021eff90cbe0e1ba18270 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-rcssmin-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-rcssmin/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-requests-oauthlib/Makefile b/lang/python/python-requests-oauthlib/Makefile index a12ff2e3..30b00d61 100644 --- a/lang/python/python-requests-oauthlib/Makefile +++ b/lang/python/python-requests-oauthlib/Makefile @@ -6,25 +6,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-requests-oauthlib -PKG_VERSION:=1.2.0 -PKG_RELEASE:=2 +PKG_VERSION:=1.3.0 +PKG_RELEASE:=1 -PKG_MAINTAINER:=Eneas U de Queiroz +PKG_MAINTAINER:=Eneas U de Queiroz PKG_LICENSE:=ISC PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=requests-oauthlib-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/r/requests-oauthlib -PKG_HASH:=bd6533330e8748e94bf0b214775fed487d309b8b8fe823dc45641ebcd9a32f57 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-requests-oauthlib-$(PKG_VERSION) +PYPI_NAME:=requests-oauthlib +PKG_HASH:=b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-requests-oauthlib/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-requests/Makefile b/lang/python/python-requests/Makefile index a34fd162..d7573ed9 100644 --- a/lang/python/python-requests/Makefile +++ b/lang/python/python-requests/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-requests -PKG_VERSION:=2.22.0 +PKG_VERSION:=2.23.0 PKG_RELEASE:=1 PKG_MAINTAINER:=Josef Schlehofer , Alexandru Ardelean @@ -16,18 +16,14 @@ PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE PKG_CPE_ID:=cpe:/a:python-requests:requests -PKG_SOURCE:=requests-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/r/requests -PKG_HASH:=11e007a8a2aa0323f5a921e9e6a2d7e4e67d9877e85773fba9ba6419025cbeb4 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-requests-$(PKG_VERSION) +PYPI_NAME:=requests +PKG_HASH:=b3f43d496c6daba4493e7c431722aeb7dbc6288f52a6e04e7b6023b0247817e6 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-requests/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-rsa/Makefile b/lang/python/python-rsa/Makefile index 5bd94fc7..9bdca772 100644 --- a/lang/python/python-rsa/Makefile +++ b/lang/python/python-rsa/Makefile @@ -4,20 +4,17 @@ PKG_NAME:=rsa PKG_VERSION:=4.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/r/rsa +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-rsa-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-rsa/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-s3transfer/Makefile b/lang/python/python-s3transfer/Makefile index 255b5b67..5ed85e9d 100644 --- a/lang/python/python-s3transfer/Makefile +++ b/lang/python/python-s3transfer/Makefile @@ -4,20 +4,17 @@ PKG_NAME:=s3transfer PKG_VERSION:=0.2.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/s/s3transfer +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=f23d5cb7d862b104401d9021fc82e5fa0e0cf57b7660a1331425aab0c691d021 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-s3transfer-$(PKG_VERSION) PKG_MAINTAINER:=Daniel Danzberger PKG_LICENSE:=MIT +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-s3transfer/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-schedule/Makefile b/lang/python/python-schedule/Makefile new file mode 100644 index 00000000..c7e4b6ee --- /dev/null +++ b/lang/python/python-schedule/Makefile @@ -0,0 +1,43 @@ +# +# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-schedule +PKG_VERSION:=0.6.0 +PKG_RELEASE:=1 + +PYPI_NAME:=schedule +PKG_HASH:=f9fb5181283de4db6e701d476dd01b6a3dd81c38462a54991ddbb9d26db857c9 + +PKG_MAINTAINER:=Josef Schlehofer +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE.txt + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-schedule + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=Job scheduling for humans + URL:=https://github.com/dbader/schedule + DEPENDS:=+python3-light +python3-logging + VARIANT:=python3 +endef + +define Package/python3-schedule/description + An in-process scheduler for periodic jobs that uses the builder pattern for configuration. + The Schedule lets you run Python functions (or any other callable) + periodically at predetermined intervals using a simple, human-friendly syntax. +endef + +$(eval $(call Py3Package,python3-schedule)) +$(eval $(call BuildPackage,python3-schedule)) +$(eval $(call BuildPackage,python3-schedule-src)) diff --git a/lang/python/python-sentry-sdk/Makefile b/lang/python/python-sentry-sdk/Makefile index 2100b78e..34391662 100644 --- a/lang/python/python-sentry-sdk/Makefile +++ b/lang/python/python-sentry-sdk/Makefile @@ -8,18 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-sentry-sdk -PKG_VERSION:=0.12.2 +PKG_VERSION:=0.13.5 PKG_RELEASE:=1 -PKG_SOURCE:=sentry-sdk-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/s/sentry-sdk/ -PKG_HASH:=2529ab6f93914d01bcd80b1b16c15a025902350ab19af2033aa5ff797c1600ad -PKG_BUILD_DIR:=$(BUILD_DIR)/sentry-sdk-$(PKG_VERSION) +PYPI_NAME:=sentry-sdk +PKG_HASH:=c6b919623e488134a728f16326c6f0bcdab7e3f59e7f4c472a90eea4d6d8fe82 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-service-identity/Makefile b/lang/python/python-service-identity/Makefile index 4015827c..dc99d4b7 100644 --- a/lang/python/python-service-identity/Makefile +++ b/lang/python/python-service-identity/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-service-identity PKG_VERSION:=18.1.0 PKG_RELEASE:=1 -PKG_SOURCE:=service_identity-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/s/service_identity +PYPI_NAME:=service_identity PKG_HASH:=0858a54aabc5b459d1aafa8a518ed2081a285087f349fe3e55197989232e2e2d -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-service-identity-$(PKG_VERSION) - PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-service-identity/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-simplejson/Makefile b/lang/python/python-simplejson/Makefile index a9752002..d8a2558f 100644 --- a/lang/python/python-simplejson/Makefile +++ b/lang/python/python-simplejson/Makefile @@ -8,22 +8,19 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-simplejson -PKG_VERSION:=3.16.0 -PKG_RELEASE:=2 +PKG_VERSION:=3.17.0 +PKG_RELEASE:=1 PKG_LICENSE:=MIT PKG_CPE_ID:=cpe:/a:simplejson_project:simplejson -PKG_SOURCE:=simplejson-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/s/simplejson -PKG_HASH:=b1f329139ba647a9548aa05fb95d046b4a677643070dc2afc05fa2e975d09ca5 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-simplejson-$(PKG_VERSION) +PYPI_NAME:=simplejson +PKG_HASH:=2b4b2b738b3b99819a17feaf118265d0753d5536049ea570b3c43b51c4701e81 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-simplejson/Default SUBMENU:=Python SECTION:=lang @@ -56,6 +53,16 @@ $(call Package/python-simplejson/description) (Variant for Python3) endef +define PyPackage/python-simplejson/filespec ++|$(PYTHON_PKG_DIR) +-|$(PYTHON_PKG_DIR)/simplejson/tests +endef + +define Py3Package/python3-simplejson/filespec ++|$(PYTHON3_PKG_DIR) +-|$(PYTHON3_PKG_DIR)/simplejson/tests +endef + $(eval $(call PyPackage,python-simplejson)) $(eval $(call BuildPackage,python-simplejson)) $(eval $(call BuildPackage,python-simplejson-src)) diff --git a/lang/python/python-six/Makefile b/lang/python/python-six/Makefile index b58c7b84..4125139d 100644 --- a/lang/python/python-six/Makefile +++ b/lang/python/python-six/Makefile @@ -8,14 +8,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-six -PKG_VERSION:=1.12.0 -PKG_RELEASE:=2 +PKG_VERSION:=1.14.0 +PKG_RELEASE:=1 -PKG_SOURCE:=six-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/s/six -PKG_HASH:=d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-six-$(PKG_VERSION) +PYPI_NAME:=six +PKG_HASH:=236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE @@ -23,14 +20,12 @@ PKG_MAINTAINER:=Jeffery To , Alexandru Ardelean PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-sqlalchemy/Makefile b/lang/python/python-sqlalchemy/Makefile index 451e8db5..f540fe3f 100644 --- a/lang/python/python-sqlalchemy/Makefile +++ b/lang/python/python-sqlalchemy/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# Copyright (C) 2019-2020 CZ.NIC, z. s. p. o. (https://www.nic.cz/) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,19 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-sqlalchemy -PKG_VERSION:=1.3.7 +PKG_VERSION:=1.3.13 PKG_RELEASE:=1 -PKG_SOURCE:=SQLAlchemy-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/S/SQLAlchemy/ -PKG_HASH:=0459bf0ea6478f3e904de074d65769a11d74cdc34438ab3159250c96d089aef0 -PKG_BUILD_DIR:=$(BUILD_DIR)/SQLAlchemy-$(PKG_VERSION) +PYPI_NAME:=SQLAlchemy +PKG_HASH:=64a7b71846db6423807e96820993fa12a03b89127d278290ca25c0b11ed7b4fb PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_CPE_ID:=cpe:/a:sqlalchemy:sqlalchemy +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-stem/Makefile b/lang/python/python-stem/Makefile new file mode 100644 index 00000000..46c0dce7 --- /dev/null +++ b/lang/python/python-stem/Makefile @@ -0,0 +1,37 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-stem +PKG_VERSION:=1.8.0 +PKG_RELEASE:=1 + +PYPI_NAME:=stem +PKG_HASH:=a0b48ea6224e95f22aa34c0bc3415f0eb4667ddeae3dfb5e32a6920c185568c2 + +PKG_MAINTAINER:=Javier Marcet +PKG_LICENSE:=LGPL-3.0-only +PKG_LICENSE_FILES:=LICENSE + +PYTHON3_PKG_SETUP_ARGS:= + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-stem + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=A controller library for Tor + URL:=https://stem.torproject.org/ + DEPENDS:=+python3 + VARIANT:=python3 +endef + +define Package/python3-stem/description + Stem is a Python controller library for Tor. With it you can use Tor's control + protocol to script against the Tor process, or build things such as Nyx. +endef + +$(eval $(call Py3Package,python3-stem)) +$(eval $(call BuildPackage,python3-stem)) +$(eval $(call BuildPackage,python3-stem-src)) diff --git a/lang/python/python-twisted/Makefile b/lang/python/python-twisted/Makefile index ebff973f..e91743d7 100644 --- a/lang/python/python-twisted/Makefile +++ b/lang/python/python-twisted/Makefile @@ -8,14 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-twisted -PKG_VERSION:=19.7.0 +PKG_VERSION:=20.3.0 PKG_RELEASE:=1 -PKG_SOURCE:=Twisted-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/T/Twisted -PKG_HASH:=d5db93026568f60cacdc0615fcd21d46f694a6bfad0ef3ff53cde2b4bb85a39d +PYPI_NAME:=Twisted +PYPI_SOURCE_EXT:=tar.bz2 +PKG_HASH:=d72c55b5d56e176563b91d11952d13b01af8725c623e498db5507b6614fc1e10 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-twisted-$(PKG_VERSION) PKG_BUILD_DEPENDS:=libtirpc PKG_LICENSE:=MIT @@ -23,12 +22,11 @@ PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Jeffery To PKG_CPE_ID:=cpe:/a:twistedmatrix:twisted +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xjf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-twisted/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-twisted/patches/001-omit-tkconch.patch b/lang/python/python-twisted/patches/001-omit-tkconch.patch index 67a37bc1..4f376ed4 100644 --- a/lang/python/python-twisted/patches/001-omit-tkconch.patch +++ b/lang/python/python-twisted/patches/001-omit-tkconch.patch @@ -1,6 +1,6 @@ --- a/src/twisted/python/_setup.py +++ b/src/twisted/python/_setup.py -@@ -149,7 +149,6 @@ _CONSOLE_SCRIPTS = [ +@@ -151,7 +151,6 @@ _CONSOLE_SCRIPTS = [ "conch = twisted.conch.scripts.conch:run", "mailmail = twisted.mail.scripts.mailmail:run", "pyhtmlizer = twisted.scripts.htmlizer:run", diff --git a/lang/python/python-twisted/patches/002-omit-tests.patch b/lang/python/python-twisted/patches/002-omit-tests.patch index 51adbbdf..71501df1 100644 --- a/lang/python/python-twisted/patches/002-omit-tests.patch +++ b/lang/python/python-twisted/patches/002-omit-tests.patch @@ -1,6 +1,6 @@ --- a/src/twisted/python/_setup.py +++ b/src/twisted/python/_setup.py -@@ -175,11 +175,6 @@ class ConditionalExtension(Extension, ob +@@ -177,11 +177,6 @@ class ConditionalExtension(Extension, ob # The C extensions used for Twisted. _EXTENSIONS = [ ConditionalExtension( @@ -12,12 +12,12 @@ "twisted.internet.iocpreactor.iocpsupport", sources=[ "src/twisted/internet/iocpreactor/iocpsupport/iocpsupport.c", -@@ -284,12 +279,11 @@ def getSetupArgs(extensions=_EXTENSIONS, - "incremental >= 16.10.1", - "Automat >= 0.3.0", - "hyperlink >= 17.1.1", -- "PyHamcrest >= 1.9.0", - "attrs >= 17.4.0", +@@ -275,12 +270,11 @@ def getSetupArgs(extensions=_EXTENSIONS, + # PyHamcrest 1.10.0 is Python 3 only, but lacks package metadata that + # says so. This condition can be dropped when Twisted drops support for + # Python 2.7. +- "PyHamcrest >= 1.9.0, != 1.10.0", + "attrs >= 19.2.0", ] arguments.update(dict( @@ -26,7 +26,7 @@ use_incremental=True, setup_requires=["incremental >= 16.10.1"], install_requires=requirements, -@@ -299,7 +293,7 @@ def getSetupArgs(extensions=_EXTENSIONS, +@@ -290,7 +284,7 @@ def getSetupArgs(extensions=_EXTENSIONS, cmdclass=command_classes, include_package_data=True, exclude_package_data={ diff --git a/lang/python/python-txsocksx/Makefile b/lang/python/python-txsocksx/Makefile index 2bc606ea..9a0e2db7 100644 --- a/lang/python/python-txsocksx/Makefile +++ b/lang/python/python-txsocksx/Makefile @@ -11,21 +11,17 @@ PKG_NAME:=python-txsocksx PKG_VERSION:=1.15.0.2 PKG_RELEASE:=4 -PKG_SOURCE:=txsocksx-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/t/txsocksx +PYPI_NAME:=txsocksx PKG_HASH:=4f79b5225ce29709bfcee45e6f726e65b70fd6f1399d1898e54303dbd6f8065f -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-txsocksx-$(PKG_VERSION) - PKG_LICENSE:=ISC PKG_LICENSE_FILES:=COPYING PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - PYTHON_PKG_SETUP_VARS:= \ PKG_VERSION="$(PKG_VERSION)" diff --git a/lang/python/python-urllib3/Makefile b/lang/python/python-urllib3/Makefile index 747501ba..7802c1ab 100644 --- a/lang/python/python-urllib3/Makefile +++ b/lang/python/python-urllib3/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-urllib3 -PKG_VERSION:=1.25.3 +PKG_VERSION:=1.25.7 PKG_RELEASE:=1 PKG_MAINTAINER:=Josef Schlehofer @@ -16,18 +16,14 @@ PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE.txt PKG_CPE_ID:=cpe:/a:urllib3_project:urllib3 -PKG_SOURCE:=urllib3-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/u/urllib3 -PKG_HASH:=dbe59173209418ae49d485b87d1681aefa36252ee85884c31346debd19463232 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-urllib3-$(PKG_VERSION) +PYPI_NAME:=urllib3 +PKG_HASH:=f3c5fd51747d450d4dcf6f923c81f78f811aab8205fda64b0aba34a4e48b0745 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-urllib3/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/python-voluptuous-serialize/Makefile b/lang/python/python-voluptuous-serialize/Makefile index e955868d..8f73d473 100644 --- a/lang/python/python-voluptuous-serialize/Makefile +++ b/lang/python/python-voluptuous-serialize/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# Copyright (C) 2019-2020 CZ.NIC, z. s. p. o. (https://www.nic.cz/) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,17 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=voluptuous-serialize -PKG_VERSION:=2.2.0 +PKG_VERSION:=2.3.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/v/voluptuous-serialize/ -PKG_HASH:=8b31660c7efdba0eb97ba65390b63cc62cc99ae3cd25d00e1873b183b38ef13d +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=740cd00ce2ecf0f3345d550163fdd2f20de2e0a60c3c678450e68314c2f592f5 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=COPYING +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -35,7 +35,7 @@ define Package/python3-voluptuous-serialize endef define Package/python3-voluptuous-serialize/description -Convert Voluptuous schemas to dictionaries so they can be serialized. + Convert Voluptuous schemas to dictionaries so they can be serialized. endef $(eval $(call Py3Package,python3-voluptuous-serialize)) diff --git a/lang/python/python-voluptuous/Makefile b/lang/python/python-voluptuous/Makefile index 3485d8bd..910f82a5 100644 --- a/lang/python/python-voluptuous/Makefile +++ b/lang/python/python-voluptuous/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=python-voluptuous PKG_VERSION:=0.11.7 PKG_RELEASE:=1 -PKG_SOURCE:=voluptuous-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/v/voluptuous/ +PYPI_NAME:=voluptuous PKG_HASH:=2abc341dbc740c5e2302c7f9b8e2e243194fb4772585b991931cb5b22e9bf456 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-voluptuous-$(PKG_VERSION) - PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=COPYING PKG_MAINTAINER:=Josef Schlehofer +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-voluptuous/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-wcwidth/Makefile b/lang/python/python-wcwidth/Makefile new file mode 100644 index 00000000..2c873146 --- /dev/null +++ b/lang/python/python-wcwidth/Makefile @@ -0,0 +1,42 @@ +# +# Copyright (C) 2019-2020 CZ.NIC z.s.p.o. (http://www.nic.cz/) +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-wcwidth +PKG_VERSION:=0.1.8 +PKG_RELEASE:=1 + +PYPI_NAME:=wcwidth +PKG_HASH:=f28b3e8a6483e5d49e7f8949ac1a78314e740333ae305b4ba5defd3e74fb37a8 + +PKG_MAINTAINER:=Jan Pavlinec +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE.txt + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-wcwidth + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=Terminal width calculation library + URL:=https://github.com/jquast/wcwidth + DEPENDS:=+python3-light + VARIANT:=python3 +endef + +define Package/python3-wcwidth/description + Python library that measures the width of unicode strings rendered to a terminal +endef + +$(eval $(call Py3Package,python3-wcwidth)) +$(eval $(call BuildPackage,python3-wcwidth)) +$(eval $(call BuildPackage,python3-wcwidth-src)) diff --git a/lang/python/python-yaml/Makefile b/lang/python/python-yaml/Makefile index 3a78d955..46eaeaeb 100644 --- a/lang/python/python-yaml/Makefile +++ b/lang/python/python-yaml/Makefile @@ -8,26 +8,22 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-yaml -PKG_VERSION:=5.1.2 +PKG_VERSION:=5.3 PKG_RELEASE:=1 -PKG_SOURCE:=PyYAML-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/P/PyYAML -PKG_HASH:=01adf0b6c6f61bd11af6e10ca52b7d4057dd0be0343eb9283c878cf3af56aee4 +PYPI_NAME:=PyYAML +PKG_HASH:=e9f45bd5b92c7974e59bcd2dcc8631a6b6cc380a904725fce7bc08872e691615 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_CPE_ID:=cpe:/a:pyyaml_project:pyyaml -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-PyYAML-$(PKG_VERSION) - +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-yaml/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-yarl/Makefile b/lang/python/python-yarl/Makefile index d0aed33f..08ac4382 100644 --- a/lang/python/python-yarl/Makefile +++ b/lang/python/python-yarl/Makefile @@ -11,14 +11,14 @@ PKG_NAME:=yarl PKG_VERSION:=1.3.0 PKG_RELEASE:=1 -PKG_SOURCE:=yarl-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/y/yarl/ +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=024ecdc12bc02b321bc66b41327f930d1c2c543fa9a561b39861da9388ba7aa9 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python-zeroconf/Makefile b/lang/python/python-zeroconf/Makefile index 20e3aeac..8c629474 100644 --- a/lang/python/python-zeroconf/Makefile +++ b/lang/python/python-zeroconf/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2019 CZ.NIC, z. s. p. o. (https://www.nic.cz/) +# Copyright (C) 2019-2020 CZ.NIC, z. s. p. o. (https://www.nic.cz/) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,19 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-zeroconf -PKG_VERSION:=0.23.0 +PKG_VERSION:=0.24.4 PKG_RELEASE:=1 -PKG_SOURCE:=zeroconf-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://pypi.python.org/packages/source/z/zeroconf/ -PKG_HASH:=e0c333b967c48f8b2e5cc94a1d4d28893023fb06dfd797ee384a94cdd1d0eef5 - -PKG_BUILD_DIR:=$(BUILD_DIR)/zeroconf-$(PKG_VERSION) +PYPI_NAME:=zeroconf +PKG_HASH:=f66d38f16026097572939ab78b1f46a97f556bca415491eb0fd094d0b5827dfe PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=COPYING +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python3-zipp/Makefile b/lang/python/python-zipp/Makefile similarity index 64% rename from lang/python/python3-zipp/Makefile rename to lang/python/python-zipp/Makefile index 151d4479..a76c4fab 100644 --- a/lang/python/python3-zipp/Makefile +++ b/lang/python/python-zipp/Makefile @@ -1,17 +1,17 @@ include $(TOPDIR)/rules.mk -PKG_NAME:=zipp -PKG_VERSION:=0.5.2 +PKG_NAME:=python-zipp +PKG_VERSION:=3.1.0 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/z/zipp/ -PKG_HASH:=4970c3758f4e89a7857a973b1e2a5d75bcdc47794442f2e2dd4fe8e0466e809a +PYPI_NAME:=zipp +PKG_HASH:=c599e4d75c98f6798c509911d08a22e6c021d074469042177c8c86fb92eefd96 -PKG_MAINTAINER:=Paul Spooren +PKG_MAINTAINER:=Jan Pavlinec PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -25,8 +25,7 @@ define Package/python3-zipp VARIANT:=python3 endef -PYTHON3_PKG_SETUP_VARS:= \ - PKG_VERSION="$(PKG_VERSION)" +HOST_PYTHON3_PACKAGE_BUILD_DEPENDS:="setuptools_scm[toml] >= 3.4.1" define Package/python3-zipp/description Backport of pathlib-compatible object wrapper for zip files diff --git a/lang/python/python-zope-interface/Makefile b/lang/python/python-zope-interface/Makefile index 6912398f..06bda571 100644 --- a/lang/python/python-zope-interface/Makefile +++ b/lang/python/python-zope-interface/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-zope-interface -PKG_VERSION:=4.6.0 +PKG_VERSION:=5.0.1 PKG_RELEASE:=1 -PKG_SOURCE:=zope.interface-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/z/zope.interface -PKG_HASH:=1b3d0dcabc7c90b470e59e38a9acaa361be43b3a6ea644c0063951964717f0e5 - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-zope-interface-$(PKG_VERSION) +PYPI_NAME:=zope.interface +PKG_HASH:=dd0bc4016ec9ffa6d327bf3ba2f044c3ff376880661e5cc38c622e1ae023076f PKG_LICENSE:=ZPL-2.1 PKG_LICENSE_FILES:=LICENSE.txt PKG_MAINTAINER:=Jeffery To +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-zope-interface/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/python-zope-interface/patches/001-omit-tests.patch b/lang/python/python-zope-interface/patches/001-omit-tests.patch index 256d39b9..40aed6e2 100644 --- a/lang/python/python-zope-interface/patches/001-omit-tests.patch +++ b/lang/python/python-zope-interface/patches/001-omit-tests.patch @@ -1,15 +1,15 @@ --- a/setup.py +++ b/setup.py -@@ -122,7 +122,7 @@ setup(name='zope.interface', - "Framework :: Zope :: 3", - "Topic :: Software Development :: Libraries :: Python Modules", +@@ -125,7 +125,7 @@ setup(name='zope.interface', + "Framework :: Zope :: 3", + "Topic :: Software Development :: Libraries :: Python Modules", ], - packages=find_packages('src'), + packages=find_packages('src', exclude=["*.tests", "*.tests.*"]), package_dir={'': 'src'}, namespace_packages=["zope"], cmdclass={ -@@ -130,6 +130,7 @@ setup(name='zope.interface', +@@ -133,6 +133,7 @@ setup(name='zope.interface', }, test_suite='zope.interface.tests', include_package_data=True, diff --git a/lang/python/python/Makefile b/lang/python/python/Makefile index c0214f31..c90617fc 100644 --- a/lang/python/python/Makefile +++ b/lang/python/python/Makefile @@ -12,7 +12,7 @@ include ../python-version.mk PKG_NAME:=python PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO) -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION) @@ -39,6 +39,7 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/Python-$(PKG_VERSION) HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/Python-$(PKG_VERSION) PKG_CONFIG_DEPENDS:= \ + CONFIG_PACKAGE_python-pkg-resources \ CONFIG_PACKAGE_python-setuptools CONFIG_PACKAGE_python-pip \ CONFIG_PYTHON_BLUETOOTH_SUPPORT @@ -169,6 +170,14 @@ define Build/Prepare endef ifdef CONFIG_PACKAGE_python-setuptools +PYTHON_SETUPTOOLS_BUILD:=1 +endif + +ifdef CONFIG_PACKAGE_python-pkg-resources +PYTHON_SETUPTOOLS_BUILD:=1 +endif + +ifeq ($(PYTHON_SETUPTOOLS_BUILD),1) define Build/Compile/python-setuptools $(HOST_PYTHON_PIP) \ --disable-pip-version-check \ diff --git a/lang/python/python/files/python-package-pkg-resources.mk b/lang/python/python/files/python-package-pkg-resources.mk new file mode 100644 index 00000000..f0e819b5 --- /dev/null +++ b/lang/python/python/files/python-package-pkg-resources.mk @@ -0,0 +1,28 @@ +# +# Copyright (C) 2019 Alexandru Ardelean +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-pkg-resources +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) pkg_resources module (part of etuptools) + VERSION:=$(PYTHON_SETUPTOOLS_VERSION)-$(PYTHON_SETUPTOOLS_PKG_RELEASE) + LICENSE:=MIT + LICENSE_FILES:=LICENSE +# CPE_ID:=cpe:/a:python:setuptools # not currently handled this way by uscan + DEPENDS:=+python +endef + +define PyPackage/python-pkg-resources/install + $(INSTALL_DIR) $(1)/usr/lib/python$(PYTHON_VERSION)/site-packages + $(CP) \ + $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON_VERSION)/site-packages/pkg_resources \ + $(1)/usr/lib/python$(PYTHON_VERSION)/site-packages +endef + +$(eval $(call PyBasePackage,python-pkg-resources, \ + , \ + DO_NOT_ADD_TO_PACKAGE_DEPENDS \ +)) diff --git a/lang/python/python/files/python-package-setuptools.mk b/lang/python/python/files/python-package-setuptools.mk index 95951ece..305a515b 100644 --- a/lang/python/python/files/python-package-setuptools.mk +++ b/lang/python/python/files/python-package-setuptools.mk @@ -12,14 +12,13 @@ $(call Package/python/Default) LICENSE:=MIT LICENSE_FILES:=LICENSE # CPE_ID:=cpe:/a:python:setuptools # not currently handled this way by uscan - DEPENDS:=+python + DEPENDS:=+python +python-pkg-resources endef define PyPackage/python-setuptools/install $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/python$(PYTHON_VERSION)/site-packages $(CP) $(PKG_BUILD_DIR)/install-setuptools/usr/bin/* $(1)/usr/bin $(CP) \ - $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON_VERSION)/site-packages/pkg_resources \ $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON_VERSION)/site-packages/setuptools \ $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON_VERSION)/site-packages/setuptools-$(PYTHON_SETUPTOOLS_VERSION).dist-info \ $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON_VERSION)/site-packages/easy_install.py \ diff --git a/lang/python/python/patches/025-utime.patch b/lang/python/python/patches/025-utime.patch new file mode 100644 index 00000000..20d0310d --- /dev/null +++ b/lang/python/python/patches/025-utime.patch @@ -0,0 +1,11 @@ +--- a/Modules/posixmodule.c ++++ b/Modules/posixmodule.c +@@ -3070,7 +3070,7 @@ done: + if (arg == Py_None) { + /* optional time values not given */ + Py_BEGIN_ALLOW_THREADS +- res = utime(path, NULL); ++ res = utimes(path, NULL); + Py_END_ALLOW_THREADS + } + else if (!PyTuple_Check(arg) || PyTuple_Size(arg) != 2) { diff --git a/lang/python/python/patches/026-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch b/lang/python/python/patches/026-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch new file mode 100644 index 00000000..c72748d0 --- /dev/null +++ b/lang/python/python/patches/026-bpo-34585-Dont-do-runtime-test-to-get-float-byte-order-GH-9085.patch @@ -0,0 +1,209 @@ +From 2a9c3805ddedf282881ef7811a561c70b74f80b1 Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Wed, 19 Sep 2018 07:25:48 +0100 +Subject: [PATCH] closes bpo-34585: Don't do runtime test to get float byte + order. (GH-9085) + +Currently configure.ac uses AC_RUN_IFELSE to determine the byte order of doubles, but this silently fails under cross compilation and Python doesn't do floats properly. + +Instead, steal a macro from autoconf-archive which compiles code using magic doubles (which encode to ASCII) and grep for the representation in the binary. + +RFC because this doesn't yet handle the weird ancient ARMv4 OABI 'mixed-endian' encoding properly. This encoding is ancient and I don't believe the union of "Python 3.8 users" and "OABI users" has anything in. Should the support for this just be dropped too? Alternatively, someone will need to find an OABI toolchain to verify the encoding of the magic double. +--- + .../2018-09-18-16-28-31.bpo-34585.CGMu0h.rst | 3 + + configure.ac | 76 +++-------------- + m4/ax_c_float_words_bigendian.m4 | 83 +++++++++++++++++++ + 3 files changed, 99 insertions(+), 63 deletions(-) + create mode 100644 Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst + create mode 100644 m4/ax_c_float_words_bigendian.m4 + +diff --git a/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst b/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst +new file mode 100644 +index 0000000000000..01318e6e46a32 +--- /dev/null ++++ b/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst +@@ -0,0 +1,3 @@ ++Check for floating-point byte order in configure.ac using compilation tests ++instead of executing code, so that these checks work in cross-compiled ++builds. +diff --git a/configure.ac b/configure.ac +index 03638f8ae9bc7..96331ec221be2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -4206,74 +4206,24 @@ fi + # * Check for various properties of floating point * + # ************************************************** + +-AC_MSG_CHECKING(whether C doubles are little-endian IEEE 754 binary64) +-AC_CACHE_VAL(ac_cv_little_endian_double, [ +-AC_RUN_IFELSE([AC_LANG_SOURCE([[ +-#include +-int main() { +- double x = 9006104071832581.0; +- if (memcmp(&x, "\x05\x04\x03\x02\x01\xff\x3f\x43", 8) == 0) +- return 0; +- else +- return 1; +-} +-]])], +-[ac_cv_little_endian_double=yes], +-[ac_cv_little_endian_double=no], +-[ac_cv_little_endian_double=no])]) +-AC_MSG_RESULT($ac_cv_little_endian_double) +-if test "$ac_cv_little_endian_double" = yes +-then +- AC_DEFINE(DOUBLE_IS_LITTLE_ENDIAN_IEEE754, 1, +- [Define if C doubles are 64-bit IEEE 754 binary format, stored +- with the least significant byte first]) +-fi +- +-AC_MSG_CHECKING(whether C doubles are big-endian IEEE 754 binary64) +-AC_CACHE_VAL(ac_cv_big_endian_double, [ +-AC_RUN_IFELSE([AC_LANG_SOURCE([[ +-#include +-int main() { +- double x = 9006104071832581.0; +- if (memcmp(&x, "\x43\x3f\xff\x01\x02\x03\x04\x05", 8) == 0) +- return 0; +- else +- return 1; +-} +-]])], +-[ac_cv_big_endian_double=yes], +-[ac_cv_big_endian_double=no], +-[ac_cv_big_endian_double=no])]) +-AC_MSG_RESULT($ac_cv_big_endian_double) +-if test "$ac_cv_big_endian_double" = yes ++AX_C_FLOAT_WORDS_BIGENDIAN ++if test "$ax_cv_c_float_words_bigendian" = "yes" + then + AC_DEFINE(DOUBLE_IS_BIG_ENDIAN_IEEE754, 1, + [Define if C doubles are 64-bit IEEE 754 binary format, stored + with the most significant byte first]) +-fi +- +-# Some ARM platforms use a mixed-endian representation for doubles. +-# While Python doesn't currently have full support for these platforms +-# (see e.g., issue 1762561), we can at least make sure that float <-> string +-# conversions work. +-AC_MSG_CHECKING(whether C doubles are ARM mixed-endian IEEE 754 binary64) +-AC_CACHE_VAL(ac_cv_mixed_endian_double, [ +-AC_RUN_IFELSE([AC_LANG_SOURCE([[ +-#include +-int main() { +- double x = 9006104071832581.0; +- if (memcmp(&x, "\x01\xff\x3f\x43\x05\x04\x03\x02", 8) == 0) +- return 0; +- else +- return 1; +-} +-]])], +-[ac_cv_mixed_endian_double=yes], +-[ac_cv_mixed_endian_double=no], +-[ac_cv_mixed_endian_double=no])]) +-AC_MSG_RESULT($ac_cv_mixed_endian_double) +-if test "$ac_cv_mixed_endian_double" = yes ++elif test "$ax_cv_c_float_words_bigendian" = "no" + then ++ AC_DEFINE(DOUBLE_IS_LITTLE_ENDIAN_IEEE754, 1, ++ [Define if C doubles are 64-bit IEEE 754 binary format, stored ++ with the least significant byte first]) ++else ++ # Some ARM platforms use a mixed-endian representation for doubles. ++ # While Python doesn't currently have full support for these platforms ++ # (see e.g., issue 1762561), we can at least make sure that float <-> string ++ # conversions work. ++ # FLOAT_WORDS_BIGENDIAN doesnt actually detect this case, but if it's not big ++ # or little, then it must be this? + AC_DEFINE(DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754, 1, + [Define if C doubles are 64-bit IEEE 754 binary format, stored + in ARM mixed-endian order (byte order 45670123)]) +diff --git a/m4/ax_c_float_words_bigendian.m4 b/m4/ax_c_float_words_bigendian.m4 +new file mode 100644 +index 0000000000000..216b90d803187 +--- /dev/null ++++ b/m4/ax_c_float_words_bigendian.m4 +@@ -0,0 +1,83 @@ ++# =============================================================================== ++# https://www.gnu.org/software/autoconf-archive/ax_c_float_words_bigendian.html ++# =============================================================================== ++# ++# SYNOPSIS ++# ++# AX_C_FLOAT_WORDS_BIGENDIAN([ACTION-IF-TRUE], [ACTION-IF-FALSE], [ACTION-IF-UNKNOWN]) ++# ++# DESCRIPTION ++# ++# Checks the ordering of words within a multi-word float. This check is ++# necessary because on some systems (e.g. certain ARM systems), the float ++# word ordering can be different from the byte ordering. In a multi-word ++# float context, "big-endian" implies that the word containing the sign ++# bit is found in the memory location with the lowest address. This ++# implementation was inspired by the AC_C_BIGENDIAN macro in autoconf. ++# ++# The endianness is detected by first compiling C code that contains a ++# special double float value, then grepping the resulting object file for ++# certain strings of ASCII values. The double is specially crafted to have ++# a binary representation that corresponds with a simple string. In this ++# implementation, the string "noonsees" was selected because the ++# individual word values ("noon" and "sees") are palindromes, thus making ++# this test byte-order agnostic. If grep finds the string "noonsees" in ++# the object file, the target platform stores float words in big-endian ++# order. If grep finds "seesnoon", float words are in little-endian order. ++# If neither value is found, the user is instructed to specify the ++# ordering. ++# ++# LICENSE ++# ++# Copyright (c) 2008 Daniel Amelang ++# ++# Copying and distribution of this file, with or without modification, are ++# permitted in any medium without royalty provided the copyright notice ++# and this notice are preserved. This file is offered as-is, without any ++# warranty. ++ ++#serial 11 ++ ++AC_DEFUN([AX_C_FLOAT_WORDS_BIGENDIAN], ++ [AC_CACHE_CHECK(whether float word ordering is bigendian, ++ ax_cv_c_float_words_bigendian, [ ++ ++ax_cv_c_float_words_bigendian=unknown ++AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ ++ ++double d = 90904234967036810337470478905505011476211692735615632014797120844053488865816695273723469097858056257517020191247487429516932130503560650002327564517570778480236724525140520121371739201496540132640109977779420565776568942592.0; ++ ++]])], [ ++ ++if grep noonsees conftest.$ac_objext >/dev/null ; then ++ ax_cv_c_float_words_bigendian=yes ++fi ++if grep seesnoon conftest.$ac_objext >/dev/null ; then ++ if test "$ax_cv_c_float_words_bigendian" = unknown; then ++ ax_cv_c_float_words_bigendian=no ++ else ++ ax_cv_c_float_words_bigendian=unknown ++ fi ++fi ++ ++])]) ++ ++case $ax_cv_c_float_words_bigendian in ++ yes) ++ m4_default([$1], ++ [AC_DEFINE([FLOAT_WORDS_BIGENDIAN], 1, ++ [Define to 1 if your system stores words within floats ++ with the most significant word first])]) ;; ++ no) ++ $2 ;; ++ *) ++ m4_default([$3], ++ [AC_MSG_ERROR([ ++ ++Unknown float word ordering. You need to manually preset ++ax_cv_c_float_words_bigendian=no (or yes) according to your system. ++ ++ ])]) ;; ++esac ++ ++])# AX_C_FLOAT_WORDS_BIGENDIAN diff --git a/lang/python/python/patches/027-bpo-34585-run-autoconf-GH-9411-edited.patch b/lang/python/python/patches/027-bpo-34585-run-autoconf-GH-9411-edited.patch new file mode 100644 index 00000000..137ed9a2 --- /dev/null +++ b/lang/python/python/patches/027-bpo-34585-run-autoconf-GH-9411-edited.patch @@ -0,0 +1,218 @@ +From b3b8cb419e496629873fa7dda82a01863f58617a Mon Sep 17 00:00:00 2001 +From: Benjamin Peterson +Date: Tue, 18 Sep 2018 23:49:05 -0700 +Subject: [PATCH] run autoconf (GH-9411) + +Follow up to 2a9c3805ddedf282881ef7811a561c70b74f80b1 (bpo-34585). +--- + aclocal.m4 | 1 + + configure | 146 ++++++++++++++++---------------------------------- + pyconfig.h.in | 4 ++ + 3 files changed, 51 insertions(+), 100 deletions(-) + +diff --git a/aclocal.m4 b/aclocal.m4 +index 6a24d8e6b9c00..030e6877de9f7 100644 +--- a/aclocal.m4 ++++ b/aclocal.m4 +@@ -288,3 +288,4 @@ AS_VAR_COPY([$1], [pkg_cv_][$1]) + AS_VAR_IF([$1], [""], [$5], [$4])dnl + ])dnl PKG_CHECK_VAR + ++m4_include([m4/ax_c_float_words_bigendian.m4]) +diff --git a/configure b/configure +index 7b0c734b5e25e..38546d6ca7b40 100755 +--- a/configure ++++ b/configure +@@ -13853,131 +13853,77 @@ fi + # * Check for various properties of floating point * + # ************************************************** + +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C doubles are little-endian IEEE 754 binary64" >&5 +-$as_echo_n "checking whether C doubles are little-endian IEEE 754 binary64... " >&6; } +-if ${ac_cv_little_endian_double+:} false; then : ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether float word ordering is bigendian" >&5 ++$as_echo_n "checking whether float word ordering is bigendian... " >&6; } ++if ${ax_cv_c_float_words_bigendian+:} false; then : + $as_echo_n "(cached) " >&6 + else + +-if test "$cross_compiling" = yes; then : +- ac_cv_little_endian_double=no +-else +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++ ++ax_cv_c_float_words_bigendian=unknown ++cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + +-#include +-int main() { +- double x = 9006104071832581.0; +- if (memcmp(&x, "\x05\x04\x03\x02\x01\xff\x3f\x43", 8) == 0) +- return 0; +- else +- return 1; +-} + +-_ACEOF +-if ac_fn_c_try_run "$LINENO"; then : +- ac_cv_little_endian_double=yes +-else +- ac_cv_little_endian_double=no +-fi +-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ +- conftest.$ac_objext conftest.beam conftest.$ac_ext +-fi ++double d = 90904234967036810337470478905505011476211692735615632014797120844053488865816695273723469097858056257517020191247487429516932130503560650002327564517570778480236724525140520121371739201496540132640109977779420565776568942592.0; + +-fi + +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_little_endian_double" >&5 +-$as_echo "$ac_cv_little_endian_double" >&6; } +-if test "$ac_cv_little_endian_double" = yes +-then ++_ACEOF ++if ac_fn_c_try_compile "$LINENO"; then : + +-$as_echo "#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1" >>confdefs.h + ++if grep noonsees conftest.$ac_objext >/dev/null ; then ++ ax_cv_c_float_words_bigendian=yes ++fi ++if grep seesnoon conftest.$ac_objext >/dev/null ; then ++ if test "$ax_cv_c_float_words_bigendian" = unknown; then ++ ax_cv_c_float_words_bigendian=no ++ else ++ ax_cv_c_float_words_bigendian=unknown ++ fi + fi + +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C doubles are big-endian IEEE 754 binary64" >&5 +-$as_echo_n "checking whether C doubles are big-endian IEEE 754 binary64... " >&6; } +-if ${ac_cv_big_endian_double+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- +-if test "$cross_compiling" = yes; then : +- ac_cv_big_endian_double=no +-else +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +- +-#include +-int main() { +- double x = 9006104071832581.0; +- if (memcmp(&x, "\x43\x3f\xff\x01\x02\x03\x04\x05", 8) == 0) +- return 0; +- else +- return 1; +-} + +-_ACEOF +-if ac_fn_c_try_run "$LINENO"; then : +- ac_cv_big_endian_double=yes +-else +- ac_cv_big_endian_double=no + fi +-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ +- conftest.$ac_objext conftest.beam conftest.$ac_ext ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_c_float_words_bigendian" >&5 ++$as_echo "$ax_cv_c_float_words_bigendian" >&6; } + +-fi ++case $ax_cv_c_float_words_bigendian in ++ yes) + +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_big_endian_double" >&5 +-$as_echo "$ac_cv_big_endian_double" >&6; } +-if test "$ac_cv_big_endian_double" = yes +-then ++$as_echo "#define FLOAT_WORDS_BIGENDIAN 1" >>confdefs.h ++ ;; ++ no) ++ ;; ++ *) ++ as_fn_error $? " + +-$as_echo "#define DOUBLE_IS_BIG_ENDIAN_IEEE754 1" >>confdefs.h ++Unknown float word ordering. You need to manually preset ++ax_cv_c_float_words_bigendian=no (or yes) according to your system. + +-fi ++ " "$LINENO" 5 ;; ++esac + +-# Some ARM platforms use a mixed-endian representation for doubles. +-# While Python doesn't currently have full support for these platforms +-# (see e.g., issue 1762561), we can at least make sure that float <-> string +-# conversions work. +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C doubles are ARM mixed-endian IEEE 754 binary64" >&5 +-$as_echo_n "checking whether C doubles are ARM mixed-endian IEEE 754 binary64... " >&6; } +-if ${ac_cv_mixed_endian_double+:} false; then : +- $as_echo_n "(cached) " >&6 +-else + +-if test "$cross_compiling" = yes; then : +- ac_cv_mixed_endian_double=no +-else +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ ++if test "$ax_cv_c_float_words_bigendian" = "yes" ++then + +-#include +-int main() { +- double x = 9006104071832581.0; +- if (memcmp(&x, "\x01\xff\x3f\x43\x05\x04\x03\x02", 8) == 0) +- return 0; +- else +- return 1; +-} ++$as_echo "#define DOUBLE_IS_BIG_ENDIAN_IEEE754 1" >>confdefs.h + +-_ACEOF +-if ac_fn_c_try_run "$LINENO"; then : +- ac_cv_mixed_endian_double=yes +-else +- ac_cv_mixed_endian_double=no +-fi +-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ +- conftest.$ac_objext conftest.beam conftest.$ac_ext +-fi ++elif test "$ax_cv_c_float_words_bigendian" = "no" ++then + +-fi ++$as_echo "#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1" >>confdefs.h + +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_mixed_endian_double" >&5 +-$as_echo "$ac_cv_mixed_endian_double" >&6; } +-if test "$ac_cv_mixed_endian_double" = yes +-then ++else ++ # Some ARM platforms use a mixed-endian representation for doubles. ++ # While Python doesn't currently have full support for these platforms ++ # (see e.g., issue 1762561), we can at least make sure that float <-> string ++ # conversions work. ++ # FLOAT_WORDS_BIGENDIAN doesnt actually detect this case, but if it's not big ++ # or little, then it must be this? + + $as_echo "#define DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 1" >>confdefs.h + +diff --git a/pyconfig.h.in b/pyconfig.h.in +index 360f79994fafe..41e0479cad2e3 100644 +--- a/pyconfig.h.in ++++ b/pyconfig.h.in +@@ -30,6 +30,10 @@ + /* Define if --enable-ipv6 is specified */ + #undef ENABLE_IPV6 + ++/* Define to 1 if your system stores words within floats with the most ++ significant word first */ ++#undef FLOAT_WORDS_BIGENDIAN ++ + /* Define if flock needs to be linked with bsd library. */ + #undef FLOCK_NEEDS_LIBBSD + diff --git a/lang/python/python3-asgiref/Makefile b/lang/python/python3-asgiref/Makefile new file mode 100644 index 00000000..9c1078a3 --- /dev/null +++ b/lang/python/python3-asgiref/Makefile @@ -0,0 +1,35 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=asgiref +PKG_VERSION:=3.2.5 +PKG_RELEASE:=1 + +PYPI_NAME:=asgiref +PKG_HASH:=c8f49dd3b42edcc51d09dd2eea8a92b3cfc987ff7e6486be734b4d0cbfd5d315 + +PKG_MAINTAINER:=Peter Stadler +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-asgiref + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Standard for Python asynchronous web apps and servers. + URL:=https://asgi.readthedocs.io/en/latest/ + DEPENDS:=+python3-light +python3-logging +python3-asyncio + VARIANT:=python3 +endef + +define Package/python3-asgiref/description + ASGI is a standard for Python asynchronous web apps and servers to communicate + with each other, and positioned as an asynchronous successor to WSGI. +endef + +$(eval $(call Py3Package,python3-asgiref)) +$(eval $(call BuildPackage,python3-asgiref)) +$(eval $(call BuildPackage,python3-asgiref-src)) diff --git a/lang/python/python3-bottle/Makefile b/lang/python/python3-bottle/Makefile index a6c099e2..5fc5bd0a 100644 --- a/lang/python/python3-bottle/Makefile +++ b/lang/python/python3-bottle/Makefile @@ -11,16 +11,15 @@ PKG_NAME:=python3-bottle PKG_VERSION:=0.12.17 PKG_RELEASE:=1 -PKG_SOURCE:=bottle-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/b/bottle +PYPI_NAME:=bottle PKG_HASH:=e9eaa412a60cc3d42ceb42f58d15864d9ed1b92e9d630b8130c871c5bb16107c -PKG_BUILD_DIR:=$(BUILD_DIR)/bottle-$(PKG_VERSION) PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE PKG_CPE_ID:=cpe:/a:bottlepy:bottle +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python3-django-cors-headers/Makefile b/lang/python/python3-django-cors-headers/Makefile new file mode 100644 index 00000000..b7d87782 --- /dev/null +++ b/lang/python/python3-django-cors-headers/Makefile @@ -0,0 +1,34 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=django-cors-headers +PKG_VERSION:=3.2.1 +PKG_RELEASE:=2 + +PYPI_NAME:=django-cors-headers +PKG_HASH:=a5960addecc04527ab26617e51b8ed42f0adab4594b24bb0f3c33e2bd3857c3f + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Peter Stadler + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-django-cors-headers + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS). + URL:=https://github.com/ottoyiu/django-cors-headers + DEPENDS:=+django +python3-urllib +python3-light + VARIANT:=python3 +endef + +define Package/python3-django-cors-headers/description + Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS). +endef + +$(eval $(call Py3Package,python3-django-cors-headers)) +$(eval $(call BuildPackage,python3-django-cors-headers)) +$(eval $(call BuildPackage,python3-django-cors-headers-src)) diff --git a/lang/python/python3-django-etesync-journal/Makefile b/lang/python/python3-django-etesync-journal/Makefile new file mode 100644 index 00000000..9c9787ba --- /dev/null +++ b/lang/python/python3-django-etesync-journal/Makefile @@ -0,0 +1,34 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=django-etesync-journal +PKG_VERSION:=1.2.0 +PKG_RELEASE:=2 + +PYPI_NAME:=django-etesync-journal +PKG_HASH:=1b481f592217186482be9faee686f0c132790db4177deb1f5152b73e99ac6338 + +PKG_LICENSE:=AGPL-3.0-only +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Peter Stadler + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-django-etesync-journal + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=The server side implementation of the EteSync protocol. + URL:=https://www.etesync.com/ + DEPENDS:=+django +python3-django-restframework +python3-light + VARIANT:=python3 +endef + +define Package/python3-django-etesync-journal/description + The reusable django app that implements the server side of the EteSync protocol. +endef + +$(eval $(call Py3Package,python3-django-etesync-journal)) +$(eval $(call BuildPackage,python3-django-etesync-journal)) +$(eval $(call BuildPackage,python3-django-etesync-journal-src)) diff --git a/lang/python/python3-drf-nested-routers/Makefile b/lang/python/python3-drf-nested-routers/Makefile new file mode 100644 index 00000000..3a42067d --- /dev/null +++ b/lang/python/python3-drf-nested-routers/Makefile @@ -0,0 +1,39 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=drf-nested-routers +PKG_VERSION:=0.91 +PKG_RELEASE:=2 + +PYPI_NAME:=drf-nested-routers +PKG_HASH:=46e5c3abc15c782cafafd7d75028e8f9121bbc6228e3599bbb48a3daa4585034 + +PKG_LICENSE:=Apache-2.0 +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Peter Stadler + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-drf-nested-routers + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Nested resources for the Django Rest Framework + URL:=https://github.com/alanjds/drf-nested-routers + DEPENDS:=+python3-django-restframework +django +python3-light + VARIANT:=python3 +endef + +define Package/python3-drf-nested-routers/description + Nested resources for the Django Rest Framework +endef + +define Py3Package/python3-drf-nested-routers/filespec ++|$(PYTHON3_PKG_DIR) +-|$(PYTHON3_PKG_DIR)/rest_framework_nested/runtests +endef + +$(eval $(call Py3Package,python3-drf-nested-routers)) +$(eval $(call BuildPackage,python3-drf-nested-routers)) +$(eval $(call BuildPackage,python3-drf-nested-routers-src)) diff --git a/lang/python/python3-maxminddb/Makefile b/lang/python/python3-maxminddb/Makefile index 00d3340e..7d96da49 100644 --- a/lang/python/python3-maxminddb/Makefile +++ b/lang/python/python3-maxminddb/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2019 CZ.NIC z.s.p.o. (http://www.nic.cz/) +# Copyright (C) 2019-2020 CZ.NIC z.s.p.o. (http://www.nic.cz/) # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,17 +9,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=maxminddb -PKG_VERSION:=1.4.1 +PKG_VERSION:=1.5.2 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/m/maxminddb/ -PKG_HASH:=df1451bcd848199905ac0de4631b3d02d6a655ad28ba5e5a4ca29a23358db712 +PYPI_NAME:=$(PKG_NAME) +PKG_HASH:=d0ce131d901eb11669996b49a59f410efd3da2c6dbe2c0094fe2fef8d85b6336 PKG_MAINTAINER:=Jan Pavlinec PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk diff --git a/lang/python/python3-netifaces/Makefile b/lang/python/python3-netifaces/Makefile index eac04cc0..11f1da33 100644 --- a/lang/python/python3-netifaces/Makefile +++ b/lang/python/python3-netifaces/Makefile @@ -11,16 +11,14 @@ PKG_NAME:=python3-netifaces PKG_VERSION:=0.10.9 PKG_RELEASE:=1 -PKG_SOURCE:=netifaces-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/n/netifaces/ +PYPI_NAME:=netifaces PKG_HASH:=2dee9ffdd16292878336a58d04a20f0ffe95555465fee7c9bd23b3490ef2abf3 -PKG_BUILD_DIR:=$(BUILD_DIR)/netifaces-$(PKG_VERSION) - PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -38,6 +36,6 @@ define Package/python3-netifaces/description Portable network interface information. endef -$(eval $(call Py3Package,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-netifaces)) +$(eval $(call BuildPackage,python3-netifaces)) +$(eval $(call BuildPackage,python3-netifaces-src)) diff --git a/lang/python/python3-package.mk b/lang/python/python3-package.mk index e1429008..d20d1980 100644 --- a/lang/python/python3-package.mk +++ b/lang/python/python3-package.mk @@ -34,6 +34,10 @@ ifdef CONFIG_USE_MIPS16 TARGET_CFLAGS += -mno-mips16 -mno-interlink-mips16 endif +define Py3Shebang +$(SED) "1"'!'"b;s,^#"'!'".*python.*,#"'!'"/usr/bin/python3," -i --follow-symlinks $(1) +endef + define Py3Package define Package/$(1)-src @@ -73,12 +77,14 @@ define Py3Package define Package/$(1)/install $$(call Py3Package/$(1)/install,$$(1)) - SED="$(SED)" \ $(SHELL) $(python3_mk_path)python-package-install.sh "3" \ "$(PKG_INSTALL_DIR)" "$$(1)" \ "$(HOST_PYTHON3_BIN)" "$$(2)" \ - "$$$$$$$$$$(call shvar,Py3Package/$(1)/filespec)" - endef + "$$$$$$$$$$(call shvar,Py3Package/$(1)/filespec)" && \ + if [ -d "$$(1)/usr/bin" ]; then \ + $(call Py3Shebang,$$(1)/usr/bin/*) ; \ + fi + endef define Package/$(1)-src/install $$(call Package/$(1)/install,$$(1),sources) diff --git a/lang/python/python3-pyroute2/Makefile b/lang/python/python3-pyroute2/Makefile index 1488e6dc..9430655f 100644 --- a/lang/python/python3-pyroute2/Makefile +++ b/lang/python/python3-pyroute2/Makefile @@ -8,19 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python3-pyroute2 -PKG_VERSION:=0.5.6 +PKG_VERSION:=0.5.7 PKG_RELEASE:=1 -PKG_SOURCE:=pyroute2-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/p/pyroute2 -PKG_HASH:=deae0e6191a04c3ee213c6fae6ed779602ef5da5ca5e2fa533f27bc04326bfbe - -PKG_BUILD_DIR:=$(BUILD_DIR)/pyroute2-$(PKG_VERSION) +PYPI_NAME:=pyroute2 +PKG_HASH:=963fce07da2841456d39e3b932b071f6de28d23dadfae014022d67a752916f98 PKG_MAINTAINER:=Martin Matějek PKG_LICENSE:=GPL-2.0-or-later Apache-2.0 PKG_LICENSE_FILES:=LICENSE.GPL.v2 LICENSE.Apache.v2 +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -48,6 +46,6 @@ endef PYTHON3_PKG_SETUP_ARGS:= -$(eval $(call Py3Package,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-pyroute2)) +$(eval $(call BuildPackage,python3-pyroute2)) +$(eval $(call BuildPackage,python3-pyroute2-src)) diff --git a/lang/python/python3-speedtest-cli/Makefile b/lang/python/python3-speedtest-cli/Makefile new file mode 100644 index 00000000..ec531164 --- /dev/null +++ b/lang/python/python3-speedtest-cli/Makefile @@ -0,0 +1,35 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=python3-speedtest-cli +PKG_VERSION:=2.1.2 +PKG_RELEASE:=1 + +PYPI_NAME:=speedtest-cli +PKG_HASH:=cf1d386222f94c324e3125ba9a0d187e46d4a13dca08c023bdb9a23096be2e54 + +PKG_MAINTAINER:=Jaymin Patel +PKG_LICENSE:=Apache-2.0 +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-speedtest-cli + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=Python + TITLE:=Command line interface for testing internet bandwidth using speedtest.net + URL:=https://github.com/sivel/speedtest-cli + DEPENDS:=+python3-light +python3-pkg-resources +python3-xml +python3-email \ + +python3-urllib +python3-codecs +python3-openssl + VARIANT:=python3 +endef + +define Package/python3-speedtest-cli/description + Command line interface for testing internet bandwidth using speedtest.net +endef + +$(eval $(call Py3Package,python3-speedtest-cli)) +$(eval $(call BuildPackage,python3-speedtest-cli)) +$(eval $(call BuildPackage,python3-speedtest-cli-src)) diff --git a/lang/python/python3-sqlparse/Makefile b/lang/python/python3-sqlparse/Makefile new file mode 100644 index 00000000..c7d38625 --- /dev/null +++ b/lang/python/python3-sqlparse/Makefile @@ -0,0 +1,40 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=sqlparse +PKG_VERSION:=0.3.1 +PKG_RELEASE:=1 + +PYPI_NAME:=sqlparse +PKG_HASH:=e162203737712307dfe78860cc56c8da8a852ab2ee33750e33aeadf38d12c548 + +PKG_MAINTAINER:=Peter Stadler +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE + +include ../pypi.mk +include $(INCLUDE_DIR)/package.mk +include ../python3-package.mk + +define Package/python3-sqlparse + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Non-validating SQL parser module. + URL:=https://github.com/andialbrecht/sqlparse + DEPENDS:=+python3-light + VARIANT:=python3 +endef + +define Package/python3-sqlparse/description + A non-validating SQL parser module. It provides support for parsing, splitting and formatting SQL statements. +endef + +define Py3Package/python3-sqlparse/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/$(PYTHON3_PKG_DIR)/sqlparse/__main__.py \ + $(1)/usr/bin/sqlformat +endef + +$(eval $(call Py3Package,python3-sqlparse)) +$(eval $(call BuildPackage,python3-sqlparse)) +$(eval $(call BuildPackage,python3-sqlparse-src)) diff --git a/lang/python/python3-unidecode/Makefile b/lang/python/python3-unidecode/Makefile index caac0165..044990f8 100644 --- a/lang/python/python3-unidecode/Makefile +++ b/lang/python/python3-unidecode/Makefile @@ -8,19 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python3-unidecode -PKG_VERSION:=1.0.23 +PKG_VERSION:=1.1.1 PKG_RELEASE:=1 -PKG_SOURCE:=Unidecode-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/u/unidecode/ -PKG_HASH:=8b85354be8fd0c0e10adbf0675f6dc2310e56fda43fa8fe049123b6c475e52fb - -PKG_BUILD_DIR:=$(BUILD_DIR)/Unidecode-$(PKG_VERSION) +PYPI_NAME:=Unidecode +PKG_HASH:=2b6aab710c2a1647e928e36d69c21e76b453cd455f4e2621000e54b2a9b8cce8 PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk @@ -35,9 +33,9 @@ define Package/python3-unidecode endef define Package/python-unidecode/description -Unidecode, lossy ASCII transliterations of Unicode text + Unidecode, lossy ASCII transliterations of Unicode text endef -$(eval $(call Py3Package,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME)-src)) +$(eval $(call Py3Package,python3-unidecode)) +$(eval $(call BuildPackage,python3-unidecode)) +$(eval $(call BuildPackage,python3-unidecode-src)) diff --git a/lang/python/python3-version.mk b/lang/python/python3-version.mk index 97f96246..120c0837 100644 --- a/lang/python/python3-version.mk +++ b/lang/python/python3-version.mk @@ -7,8 +7,8 @@ # Note: keep in sync with setuptools & pip PYTHON3_VERSION_MAJOR:=3 -PYTHON3_VERSION_MINOR:=7 -PYTHON3_VERSION_MICRO:=5 +PYTHON3_VERSION_MINOR:=8 +PYTHON3_VERSION_MICRO:=2 PYTHON3_VERSION:=$(PYTHON3_VERSION_MAJOR).$(PYTHON3_VERSION_MINOR) diff --git a/lang/python/python3-zipp/patches/001-fix-scm-version.patch b/lang/python/python3-zipp/patches/001-fix-scm-version.patch deleted file mode 100644 index 1be22cd9..00000000 --- a/lang/python/python3-zipp/patches/001-fix-scm-version.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/setup.py -+++ b/setup.py -@@ -1,6 +1,7 @@ - #!/usr/bin/env python - - import setuptools -+import os - - if __name__ == "__main__": -- setuptools.setup(use_scm_version=True) -+ setuptools.setup(version=os.getenv('PKG_VERSION')) diff --git a/lang/python/python3/Makefile b/lang/python/python3/Makefile index a83a3cd3..b47530bf 100644 --- a/lang/python/python3/Makefile +++ b/lang/python/python3/Makefile @@ -19,7 +19,7 @@ PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO) PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION) -PKG_HASH:=e85a76ea9f3d6c485ec1780fca4e500725a4a7bbc63c78ebc44170de9b619d94 +PKG_HASH:=2646e7dc233362f59714c6193017bb2d6f7b38d6ab4a0cb5fbac5c36c4d845df PKG_MAINTAINER:=Alexandru Ardelean , Jeffery To PKG_LICENSE:=Python/2.0 @@ -41,6 +41,7 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/Python-$(PKG_VERSION) HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/Python-$(PKG_VERSION) PKG_CONFIG_DEPENDS:= \ + CONFIG_PACKAGE_python3-pkg-resources \ CONFIG_PACKAGE_python3-setuptools CONFIG_PACKAGE_python3-pip \ CONFIG_PYTHON3_BLUETOOTH_SUPPORT @@ -128,8 +129,7 @@ endef MAKE_FLAGS+=\ CROSS_COMPILE=yes \ - LD="$(TARGET_CC)" \ - PGEN=pgen3 + LD="$(TARGET_CC)" EXTRA_CFLAGS+= \ -DNDEBUG -fno-inline @@ -172,6 +172,14 @@ define Build/Prepare endef ifdef CONFIG_PACKAGE_python3-setuptools +PYTHON3_SETUPTOOLS_BUILD:=1 +endif + +ifdef CONFIG_PACKAGE_python3-pkg-resources +PYTHON3_SETUPTOOLS_BUILD:=1 +endif + +ifeq ($(PYTHON3_SETUPTOOLS_BUILD),1) define Build/Compile/python3-setuptools $(HOST_PYTHON3_PIP) \ --disable-pip-version-check \ @@ -313,7 +321,7 @@ define Host/Configure endef define Host/Compile - +$(HOST_MAKE_VARS) $(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) python Parser/pgen + +$(HOST_MAKE_VARS) $(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) python +$(HOST_MAKE_VARS) $(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) sharedmods endef @@ -335,8 +343,6 @@ define Host/Install $(HOST_PYTHON3_PKG_DIR)/.pip_installed_* ) $(MAKE) -C $(HOST_BUILD_DIR) install - $(INSTALL_DIR) $(HOST_PYTHON3_DIR)/bin/ - $(INSTALL_BIN) $(HOST_BUILD_DIR)/Parser/pgen $(HOST_PYTHON3_DIR)/bin/pgen3 $(if $(wildcard $(HOST_PYTHON3_PKG_DIR)/.setuptools_installed_$(PYTHON3_SETUPTOOLS_VERSION)-$(PYTHON3_SETUPTOOLS_PKG_RELEASE)),, $(call HostPatchDir,$(HOST_PYTHON3_PKG_DIR),./patches-setuptools,) touch $(HOST_PYTHON3_PKG_DIR)/.setuptools_installed_$(PYTHON3_SETUPTOOLS_VERSION)-$(PYTHON3_SETUPTOOLS_PKG_RELEASE) diff --git a/lang/python/python3/files/python3-package-pkg-resources.mk b/lang/python/python3/files/python3-package-pkg-resources.mk new file mode 100644 index 00000000..592fe2c8 --- /dev/null +++ b/lang/python/python3/files/python3-package-pkg-resources.mk @@ -0,0 +1,30 @@ +# +# Copyright (C) 2019 Alexandru Ardelean +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-pkg-resources +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) pkg_resources module (part of setuptools) + VERSION:=$(PYTHON3_SETUPTOOLS_VERSION)-$(PYTHON3_SETUPTOOLS_PKG_RELEASE) + LICENSE:=MIT + LICENSE_FILES:=LICENSE +# CPE_ID:=cpe:/a:python:setuptools # not currently handled this way by uscan + DEPENDS:=+python3 +endef + +define Py3Package/python3-pkg-resources/install + $(INSTALL_DIR) $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages + $(CP) \ + $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/pkg_resources \ + $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages + find $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages/ -path '*/__pycache__/*' -delete + find $(1)/usr/lib/python$(PYTHON3_VERSION)/site-packages/ -type d -name __pycache__ -delete +endef + +$(eval $(call Py3BasePackage,python3-pkg-resources, \ + , \ + DO_NOT_ADD_TO_PACKAGE_DEPENDS \ +)) diff --git a/lang/python/python3/files/python3-package-setuptools.mk b/lang/python/python3/files/python3-package-setuptools.mk index b3ccce89..64a86b81 100644 --- a/lang/python/python3/files/python3-package-setuptools.mk +++ b/lang/python/python3/files/python3-package-setuptools.mk @@ -12,7 +12,7 @@ $(call Package/python3/Default) LICENSE:=MIT LICENSE_FILES:=LICENSE # CPE_ID:=cpe:/a:python:setuptools # not currently handled this way by uscan - DEPENDS:=+python3 + DEPENDS:=+python3 +python3-pkg-resources endef define Py3Package/python3-setuptools/install @@ -20,7 +20,6 @@ define Py3Package/python3-setuptools/install $(CP) $(PKG_BUILD_DIR)/install-setuptools/usr/bin/easy_install-* $(1)/usr/bin $(LN) easy_install-$(PYTHON3_VERSION) $(1)/usr/bin/easy_install-3 $(CP) \ - $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/pkg_resources \ $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/setuptools \ $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/setuptools-$(PYTHON3_SETUPTOOLS_VERSION).dist-info \ $(PKG_BUILD_DIR)/install-setuptools/usr/lib/python$(PYTHON3_VERSION)/site-packages/easy_install.py \ diff --git a/lang/python/python3/files/python3-package-xml.mk b/lang/python/python3/files/python3-package-xml.mk index 4893fa93..84b2ce05 100644 --- a/lang/python/python3/files/python3-package-xml.mk +++ b/lang/python/python3/files/python3-package-xml.mk @@ -8,7 +8,7 @@ define Package/python3-xml $(call Package/python3/Default) TITLE:=Python $(PYTHON3_VERSION) xml libs - DEPENDS:=+python3-light + DEPENDS:=+python3-light +python3-urllib endef $(eval $(call Py3BasePackage,python3-xml, \ diff --git a/lang/python/python3/patches/001-enable-zlib.patch b/lang/python/python3/patches/001-enable-zlib.patch index 287b147d..9a93eb26 100644 --- a/lang/python/python3/patches/001-enable-zlib.patch +++ b/lang/python/python3/patches/001-enable-zlib.patch @@ -1,15 +1,6 @@ -From 6eeab87bc852481e599325549c854b701bf2e39f Mon Sep 17 00:00:00 2001 -From: Alexandru Ardelean -Date: Thu, 25 Sep 2014 18:18:29 +0300 -Subject: [PATCH] enable zlib - ---- - Modules/Setup.dist | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/Modules/Setup.dist -+++ b/Modules/Setup.dist -@@ -335,7 +335,7 @@ _symtable symtablemodule.c +--- a/Modules/Setup ++++ b/Modules/Setup +@@ -334,7 +334,7 @@ _symtable symtablemodule.c # Andrew Kuchling's zlib module. # This require zlib 1.1.3 (or later). # See http://www.gzip.org/zlib/ diff --git a/lang/python/python3/patches/003-do-not-run-distutils-tests.patch b/lang/python/python3/patches/003-do-not-run-distutils-tests.patch index d8f478d4..4784ba22 100644 --- a/lang/python/python3/patches/003-do-not-run-distutils-tests.patch +++ b/lang/python/python3/patches/003-do-not-run-distutils-tests.patch @@ -1,6 +1,6 @@ --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1400,6 +1400,7 @@ libinstall: build_all $(srcdir)/Modules/ +@@ -1451,6 +1451,7 @@ libinstall: build_all $(srcdir)/Modules/ $(INSTALL_DATA) `cat pybuilddir.txt`/_sysconfigdata_$(ABIFLAGS)_$(MACHDEP)_$(MULTIARCH).py \ $(DESTDIR)$(LIBDEST); \ $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt @@ -8,11 +8,11 @@ if test -d $(DESTDIR)$(LIBDEST)/distutils/tests; then \ $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ $(DESTDIR)$(LIBDEST)/distutils/tests ; \ -@@ -1435,6 +1436,7 @@ libinstall: build_all $(srcdir)/Modules/ +@@ -1486,6 +1487,7 @@ libinstall: build_all $(srcdir)/Modules/ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt +endif - python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh - @ # Substitution happens here, as the completely-expanded BINDIR + # bpo-21536: Misc/python-config.sh is generated in the build directory + # from $(srcdir)Misc/python-config.sh.in. diff --git a/lang/python/python3/patches/004-do-not-write-bytes-codes.patch b/lang/python/python3/patches/004-do-not-write-bytes-codes.patch index eb66443a..a67f5533 100644 --- a/lang/python/python3/patches/004-do-not-write-bytes-codes.patch +++ b/lang/python/python3/patches/004-do-not-write-bytes-codes.patch @@ -1,5 +1,5 @@ ---- a/Python/pylifecycle.c -+++ b/Python/pylifecycle.c +--- a/Python/initconfig.c ++++ b/Python/initconfig.c @@ -120,7 +120,7 @@ int Py_NoSiteFlag = 0; /* Suppress 'impo int Py_BytesWarningFlag = 0; /* Warn on str(bytes) and str(buffer) */ int Py_FrozenFlag = 0; /* Needed by getpath.c */ diff --git a/lang/python/python3/patches/006-do-not-add-multiarch-paths-when-cross-compiling.patch b/lang/python/python3/patches/006-do-not-add-multiarch-paths-when-cross-compiling.patch new file mode 100644 index 00000000..16ef86ab --- /dev/null +++ b/lang/python/python3/patches/006-do-not-add-multiarch-paths-when-cross-compiling.patch @@ -0,0 +1,12 @@ +--- a/setup.py ++++ b/setup.py +@@ -654,7 +654,8 @@ class PyBuildExt(build_ext): + # only change this for cross builds for 3.3, issues on Mageia + if CROSS_COMPILING: + self.add_cross_compiling_paths() +- self.add_multiarch_paths() ++ else: ++ self.add_multiarch_paths() + self.add_ldflags_cppflags() + + def init_inc_lib_dirs(self): diff --git a/lang/python/python3/patches/006-remove-multi-arch-and-local-paths.patch b/lang/python/python3/patches/006-remove-multi-arch-and-local-paths.patch deleted file mode 100644 index c4914f27..00000000 --- a/lang/python/python3/patches/006-remove-multi-arch-and-local-paths.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- a/setup.py -+++ b/setup.py -@@ -581,16 +581,9 @@ class PyBuildExt(build_ext): - os.unlink(tmpfile) - - def detect_modules(self): -- # Ensure that /usr/local is always used, but the local build -- # directories (i.e. '.' and 'Include') must be first. See issue -- # 10520. -- if not cross_compiling: -- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') -- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') - # only change this for cross builds for 3.3, issues on Mageia - if cross_compiling: - self.add_gcc_paths() -- self.add_multiarch_paths() - - # Add paths specified in the environment variables LDFLAGS and - # CPPFLAGS for header and library files. diff --git a/lang/python/python3/patches/008-distutils-use-python-sysroot.patch b/lang/python/python3/patches/008-distutils-use-python-sysroot.patch index f218c46d..751f9d79 100644 --- a/lang/python/python3/patches/008-distutils-use-python-sysroot.patch +++ b/lang/python/python3/patches/008-distutils-use-python-sysroot.patch @@ -36,8 +36,8 @@ Signed-off-by: Thomas Petazzoni self.library_dirs.append('.') --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -17,10 +17,17 @@ import sys - from .errors import DistutilsPlatformError +@@ -18,10 +18,17 @@ from .errors import DistutilsPlatformErr + from .util import get_platform, get_host_platform # These are needed in a couple of spots, so just compute them once. -PREFIX = os.path.normpath(sys.prefix) diff --git a/lang/python/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch b/lang/python/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch index 12544b2d..b3da28a6 100644 --- a/lang/python/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch +++ b/lang/python/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch @@ -1,10 +1,10 @@ --- a/setup.py +++ b/setup.py -@@ -591,8 +591,9 @@ class PyBuildExt(build_ext): +@@ -631,8 +631,9 @@ class PyBuildExt(build_ext): # directly since an inconsistently reproducible issue comes up where # the environment variable is not set even though the value were passed # into configure and stored in the Makefile (issue found on OS X 10.3). -+ rt_lib_dirs = [] if cross_compiling else self.compiler.runtime_library_dirs ++ rt_lib_dirs = [] if CROSS_COMPILING else self.compiler.runtime_library_dirs for env_var, arg_name, dir_list in ( - ('LDFLAGS', '-R', self.compiler.runtime_library_dirs), + ('LDFLAGS', '-R', rt_lib_dirs), diff --git a/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch b/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch index 5a907b0f..503159d6 100644 --- a/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch +++ b/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch @@ -1,6 +1,6 @@ --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -754,6 +754,16 @@ regen-all: regen-opcode regen-opcode-tar +@@ -735,6 +735,16 @@ regen-all: regen-opcode regen-opcode-tar ############################################################################ # Special rules for object files @@ -17,8 +17,8 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \ $(OBJECT_OBJS) \ $(PYTHON_OBJS) \ -@@ -761,6 +771,8 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \ - $(MODOBJS) \ +@@ -743,6 +753,8 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \ + $(DTRACE_OBJS) \ $(srcdir)/Modules/getbuildinfo.c $(CC) -c $(PY_CORE_CFLAGS) \ + -DDATE="\"$(BUILD_DATE)\"" \ diff --git a/lang/python/python3/patches/014-remove-platform-so-suffix.patch b/lang/python/python3/patches/014-remove-platform-so-suffix.patch index 321be4ec..cc6a8511 100644 --- a/lang/python/python3/patches/014-remove-platform-so-suffix.patch +++ b/lang/python/python3/patches/014-remove-platform-so-suffix.patch @@ -1,6 +1,6 @@ --- a/configure +++ b/configure -@@ -15246,7 +15246,7 @@ $as_echo_n "checking ABIFLAGS... " >&6; +@@ -15142,7 +15142,7 @@ $as_echo_n "checking ABIFLAGS... " >&6; $as_echo "$ABIFLAGS" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking SOABI" >&5 $as_echo_n "checking SOABI... " >&6; } @@ -11,7 +11,7 @@ --- a/configure.ac +++ b/configure.ac -@@ -4739,7 +4739,7 @@ AC_SUBST(SOABI) +@@ -4633,7 +4633,7 @@ AC_SUBST(SOABI) AC_MSG_CHECKING(ABIFLAGS) AC_MSG_RESULT($ABIFLAGS) AC_MSG_CHECKING(SOABI) @@ -19,4 +19,4 @@ +SOABI='cpython-'`echo $VERSION | tr -d .` AC_MSG_RESULT($SOABI) - AC_SUBST(EXT_SUFFIX) + # Release and debug (Py_DEBUG) ABI are compatible, but not Py_TRACE_REFS ABI diff --git a/lang/python/python3/patches/015-abort-on-failed-modules.patch b/lang/python/python3/patches/015-abort-on-failed-modules.patch index effa0b1d..234ef6c5 100644 --- a/lang/python/python3/patches/015-abort-on-failed-modules.patch +++ b/lang/python/python3/patches/015-abort-on-failed-modules.patch @@ -1,10 +1,10 @@ --- a/setup.py +++ b/setup.py -@@ -398,6 +398,7 @@ class PyBuildExt(build_ext): +@@ -441,6 +441,7 @@ class PyBuildExt(build_ext): print("Failed to build these modules:") print_three_column(failed) print() -+ if cross_compiling: sys.exit(1) ++ if CROSS_COMPILING: sys.exit(1) if self.failed_on_import: failed = self.failed_on_import[:] diff --git a/lang/python/python3/patches/016-adjust-config-paths.patch b/lang/python/python3/patches/016-adjust-config-paths.patch index 3b913154..b8ea6ccf 100644 --- a/lang/python/python3/patches/016-adjust-config-paths.patch +++ b/lang/python/python3/patches/016-adjust-config-paths.patch @@ -1,6 +1,6 @@ --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -446,6 +446,7 @@ def _init_posix(): +@@ -445,6 +445,7 @@ def _init_posix(): platform=sys.platform, multiarch=getattr(sys.implementation, '_multiarch', ''), )) @@ -20,7 +20,7 @@ abi=sys.abiflags, --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1409,7 +1409,7 @@ libinstall: build_all $(srcdir)/Modules/ +@@ -1460,7 +1460,7 @@ libinstall: build_all $(srcdir)/Modules/ esac; \ done; \ done @@ -29,7 +29,7 @@ $(DESTDIR)$(LIBDEST); \ $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt ifeq (@COMPILE_ALL_TESTS@,yes) -@@ -1554,7 +1554,7 @@ sharedinstall: sharedmods +@@ -1618,7 +1618,7 @@ sharedinstall: sharedmods --install-scripts=$(BINDIR) \ --install-platlib=$(DESTSHARED) \ --root=$(DESTDIR)/ @@ -40,8 +40,8 @@ # Here are a couple of targets for MacOSX again, to install a full --- a/configure +++ b/configure -@@ -15265,7 +15265,7 @@ LDVERSION='$(VERSION)$(ABIFLAGS)' - $as_echo "$LDVERSION" >&6; } +@@ -15181,7 +15181,7 @@ else + fi -if test x$PLATFORM_TRIPLET = x; then @@ -51,7 +51,7 @@ LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}" --- a/configure.ac +++ b/configure.ac -@@ -4756,7 +4756,7 @@ AC_MSG_RESULT($LDVERSION) +@@ -4667,7 +4667,7 @@ fi dnl define LIBPL after ABIFLAGS and LDVERSION is defined. AC_SUBST(PY_ENABLE_SHARED) diff --git a/lang/python/python3/patches/020-ssl-module-emulate-tls-methods.patch b/lang/python/python3/patches/020-ssl-module-emulate-tls-methods.patch new file mode 100644 index 00000000..1edd215d --- /dev/null +++ b/lang/python/python3/patches/020-ssl-module-emulate-tls-methods.patch @@ -0,0 +1,223 @@ +From 991f0176e188227647bf4c993d8da81cf794b3ae Mon Sep 17 00:00:00 2001 +From: Christian Heimes +Date: Sun, 25 Feb 2018 20:03:07 +0100 +Subject: [PATCH] bpo-30008: SSL module: emulate tls methods + +OpenSSL 1.1 compatility: emulate version specific TLS methods with +SSL_CTX_set_min/max_proto_version(). +--- + .../2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst | 4 + + Modules/_ssl.c | 134 ++++++++++++++---- + 2 files changed, 108 insertions(+), 30 deletions(-) + create mode 100644 Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst + +diff --git a/Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst b/Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst +new file mode 100644 +index 000000000000..e0a08464a1e1 +--- /dev/null ++++ b/Misc/NEWS.d/next/Library/2018-02-25-20-05-51.bpo-30008.6Bmyhr.rst +@@ -0,0 +1,4 @@ ++The ssl module no longer uses function that are deprecated since OpenSSL ++1.1.0. The version specific TLS methods are emulated with TLS_method() plus ++SSL_CTX_set_min/max_proto_version(). Pseudo random numbers are generated ++with RAND_bytes(). +diff --git a/Modules/_ssl.c b/Modules/_ssl.c +index f50823e6947a..827026e3bf5c 100644 +--- a/Modules/_ssl.c ++++ b/Modules/_ssl.c +@@ -45,14 +45,6 @@ static PySocketModule_APIObject PySocketModule; + #include + #endif + +-/* Don't warn about deprecated functions */ +-#ifdef __GNUC__ +-#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +-#endif +-#ifdef __clang__ +-#pragma clang diagnostic ignored "-Wdeprecated-declarations" +-#endif +- + /* Include OpenSSL header files */ + #include "openssl/rsa.h" + #include "openssl/crypto.h" +@@ -205,6 +197,7 @@ static void _PySSLFixErrno(void) { + #ifndef PY_OPENSSL_1_1_API + /* OpenSSL 1.1 API shims for OpenSSL < 1.1.0 and LibreSSL < 2.7.0 */ + ++#define ASN1_STRING_get0_data ASN1_STRING_data + #define TLS_method SSLv23_method + #define TLS_client_method SSLv23_client_method + #define TLS_server_method SSLv23_server_method +@@ -896,7 +889,7 @@ _ssl_configure_hostname(PySSLSocket *self, const char* server_hostname) + goto error; + } + } else { +- if (!X509_VERIFY_PARAM_set1_ip(param, ASN1_STRING_data(ip), ++ if (!X509_VERIFY_PARAM_set1_ip(param, ASN1_STRING_get0_data(ip), + ASN1_STRING_length(ip))) { + _setSSLError(NULL, 0, __FILE__, __LINE__); + goto error; +@@ -1372,8 +1365,9 @@ _get_peer_alt_names (X509 *certificate) { + goto fail; + } + PyTuple_SET_ITEM(t, 0, v); +- v = PyUnicode_FromStringAndSize((char *)ASN1_STRING_data(as), +- ASN1_STRING_length(as)); ++ v = PyUnicode_FromStringAndSize( ++ (char *)ASN1_STRING_get0_data(as), ++ ASN1_STRING_length(as)); + if (v == NULL) { + Py_DECREF(t); + goto fail; +@@ -3031,44 +3025,124 @@ _ssl__SSLContext_impl(PyTypeObject *type, int proto_version) + long options; + SSL_CTX *ctx = NULL; + X509_VERIFY_PARAM *params; +- int result; ++ int result = 0; + #if defined(SSL_MODE_RELEASE_BUFFERS) + unsigned long libver; + #endif + + PySSL_BEGIN_ALLOW_THREADS +- if (proto_version == PY_SSL_VERSION_TLS1) ++ switch (proto_version) { ++#if OPENSSL_VERSION_NUMBER <= 0x10100000L ++ /* OpenSSL < 1.1.0 or not LibreSSL ++ * Use old-style methods for OpenSSL 1.0.2 ++ */ ++#if defined(SSL2_VERSION) && !defined(OPENSSL_NO_SSL2) ++ case PY_SSL_VERSION_SSL2: ++ ctx = SSL_CTX_new(SSLv2_method()); ++ break; ++#endif ++#if defined(SSL3_VERSION) && !defined(OPENSSL_NO_SSL3) ++ case PY_SSL_VERSION_SSL3: ++ ctx = SSL_CTX_new(SSLv3_method()); ++ break; ++#endif ++#if defined(TLS1_VERSION) && !defined(OPENSSL_NO_TLS1) ++ case PY_SSL_VERSION_TLS1: + ctx = SSL_CTX_new(TLSv1_method()); +-#if HAVE_TLSv1_2 +- else if (proto_version == PY_SSL_VERSION_TLS1_1) ++ break; ++#endif ++#if defined(TLS1_1_VERSION) && !defined(OPENSSL_NO_TLS1_1) ++ case PY_SSL_VERSION_TLS1_1: + ctx = SSL_CTX_new(TLSv1_1_method()); +- else if (proto_version == PY_SSL_VERSION_TLS1_2) ++ break; ++#endif ++#if defined(TLS1_2_VERSION) && !defined(OPENSSL_NO_TLS1_2) ++ case PY_SSL_VERSION_TLS1_2: + ctx = SSL_CTX_new(TLSv1_2_method()); ++ break; + #endif +-#ifndef OPENSSL_NO_SSL3 +- else if (proto_version == PY_SSL_VERSION_SSL3) +- ctx = SSL_CTX_new(SSLv3_method()); ++#else ++ /* OpenSSL >= 1.1 or LibreSSL ++ * create context with TLS_method for all protocols ++ * no SSLv2_method in OpenSSL 1.1. ++ */ ++#if defined(SSL3_VERSION) && !defined(OPENSSL_NO_SSL3) ++ case PY_SSL_VERSION_SSL3: ++ ctx = SSL_CTX_new(TLS_method()); ++ if (ctx != NULL) { ++ /* OpenSSL 1.1.0 sets SSL_OP_NO_SSLv3 for TLS_method by default */ ++ SSL_CTX_clear_options(ctx, SSL_OP_NO_SSLv3); ++ if (!SSL_CTX_set_min_proto_version(ctx, SSL3_VERSION)) ++ result = -2; ++ if (!SSL_CTX_set_max_proto_version(ctx, SSL3_VERSION)) ++ result = -2; ++ } ++ break; + #endif +-#ifndef OPENSSL_NO_SSL2 +- else if (proto_version == PY_SSL_VERSION_SSL2) +- ctx = SSL_CTX_new(SSLv2_method()); ++#if defined(TLS1_VERSION) && !defined(OPENSSL_NO_TLS1) ++ case PY_SSL_VERSION_TLS1: ++ ctx = SSL_CTX_new(TLS_method()); ++ if (ctx != NULL) { ++ SSL_CTX_clear_options(ctx, SSL_OP_NO_TLSv1); ++ if (!SSL_CTX_set_min_proto_version(ctx, TLS1_VERSION)) ++ result = -2; ++ if (!SSL_CTX_set_max_proto_version(ctx, TLS1_VERSION)) ++ result = -2; ++ } ++ break; ++#endif ++#if defined(TLS1_1_VERSION) && !defined(OPENSSL_NO_TLS1_1) ++ case PY_SSL_VERSION_TLS1_1: ++ ctx = SSL_CTX_new(TLS_method()); ++ if (ctx != NULL) { ++ SSL_CTX_clear_options(ctx, SSL_OP_NO_TLSv1_1); ++ if (!SSL_CTX_set_min_proto_version(ctx, TLS1_1_VERSION)) ++ result = -2; ++ if (!SSL_CTX_set_max_proto_version(ctx, TLS1_1_VERSION)) ++ result = -2; ++ } ++ break; ++#endif ++#if defined(TLS1_2_VERSION) && !defined(OPENSSL_NO_TLS1_2) ++ case PY_SSL_VERSION_TLS1_2: ++ ctx = SSL_CTX_new(TLS_method()); ++ if (ctx != NULL) { ++ SSL_CTX_clear_options(ctx, SSL_OP_NO_TLSv1_2); ++ if (!SSL_CTX_set_min_proto_version(ctx, TLS1_2_VERSION)) ++ result = -2; ++ if (!SSL_CTX_set_max_proto_version(ctx, TLS1_2_VERSION)) ++ result = -2; ++ } ++ break; + #endif +- else if (proto_version == PY_SSL_VERSION_TLS) /* SSLv23 */ ++#endif /* OpenSSL >= 1.1 */ ++ case PY_SSL_VERSION_TLS: ++ /* SSLv23 */ + ctx = SSL_CTX_new(TLS_method()); +- else if (proto_version == PY_SSL_VERSION_TLS_CLIENT) ++ break; ++ case PY_SSL_VERSION_TLS_CLIENT: + ctx = SSL_CTX_new(TLS_client_method()); +- else if (proto_version == PY_SSL_VERSION_TLS_SERVER) ++ break; ++ case PY_SSL_VERSION_TLS_SERVER: + ctx = SSL_CTX_new(TLS_server_method()); +- else +- proto_version = -1; ++ break; ++ default: ++ result = -1; ++ break; ++ } + PySSL_END_ALLOW_THREADS + +- if (proto_version == -1) { ++ if (result == -1) { + PyErr_SetString(PyExc_ValueError, + "invalid protocol version"); + return NULL; + } +- if (ctx == NULL) { ++ else if (result == -2) { ++ PyErr_SetString(PyExc_ValueError, ++ "protocol configuration error"); ++ return NULL; ++ } ++ else if (ctx == NULL) { + _setSSLError(NULL, 0, __FILE__, __LINE__); + return NULL; + } +@@ -5241,7 +5315,7 @@ PySSL_RAND(int len, int pseudo) + if (bytes == NULL) + return NULL; + if (pseudo) { +- ok = RAND_pseudo_bytes((unsigned char*)PyBytes_AS_STRING(bytes), len); ++ ok = (_PyOS_URandom((unsigned char*)PyBytes_AS_STRING(bytes), len) == 0 ? 1 : 0); + if (ok == 0 || ok == 1) + return Py_BuildValue("NO", bytes, ok == 1 ? Py_True : Py_False); + } diff --git a/lang/python/python3/patches/021-openssl-deprecated.patch b/lang/python/python3/patches/021-openssl-deprecated.patch new file mode 100644 index 00000000..f73ce80c --- /dev/null +++ b/lang/python/python3/patches/021-openssl-deprecated.patch @@ -0,0 +1,63 @@ +--- a/Modules/_ssl.c ++++ b/Modules/_ssl.c +@@ -201,6 +202,11 @@ static void _PySSLFixErrno(void) { + #define TLS_method SSLv23_method + #define TLS_client_method SSLv23_client_method + #define TLS_server_method SSLv23_server_method ++#define X509_getm_notBefore X509_get_notBefore ++#define X509_getm_notAfter X509_get_notAfter ++#define OpenSSL_version_num SSLeay ++#define OpenSSL_version SSLeay_version ++#define OPENSSL_VERSION SSLEAY_VERSION + + static int X509_NAME_ENTRY_set(const X509_NAME_ENTRY *ne) + { +@@ -1677,7 +1683,7 @@ _decode_certificate(X509 *certificate) { + Py_DECREF(sn_obj); + + (void) BIO_reset(biobuf); +- notBefore = X509_get_notBefore(certificate); ++ notBefore = X509_getm_notBefore(certificate); + ASN1_TIME_print(biobuf, notBefore); + len = BIO_gets(biobuf, buf, sizeof(buf)-1); + if (len < 0) { +@@ -1694,7 +1700,7 @@ _decode_certificate(X509 *certificate) { + Py_DECREF(pnotBefore); + + (void) BIO_reset(biobuf); +- notAfter = X509_get_notAfter(certificate); ++ notAfter = X509_getm_notAfter(certificate); + ASN1_TIME_print(biobuf, notAfter); + len = BIO_gets(biobuf, buf, sizeof(buf)-1); + if (len < 0) { +@@ -3235,7 +3241,7 @@ _ssl__SSLContext_impl(PyTypeObject *type, int proto_version) + conservative and assume it wasn't fixed until release. We do this check + at runtime to avoid problems from the dynamic linker. + See #25672 for more on this. */ +- libver = SSLeay(); ++ libver = OpenSSL_version_num(); + if (!(libver >= 0x10001000UL && libver < 0x1000108fUL) && + !(libver >= 0x10000000UL && libver < 0x100000dfUL)) { + SSL_CTX_set_mode(self->ctx, SSL_MODE_RELEASE_BUFFERS); +@@ -6403,10 +6409,10 @@ PyInit__ssl(void) + return NULL; + + /* OpenSSL version */ +- /* SSLeay() gives us the version of the library linked against, ++ /* OpenSSL_version_num() gives us the version of the library linked against, + which could be different from the headers version. + */ +- libver = SSLeay(); ++ libver = OpenSSL_version_num(); + r = PyLong_FromUnsignedLong(libver); + if (r == NULL) + return NULL; +@@ -6416,7 +6422,7 @@ PyInit__ssl(void) + r = Py_BuildValue("IIIII", major, minor, fix, patch, status); + if (r == NULL || PyModule_AddObject(m, "OPENSSL_VERSION_INFO", r)) + return NULL; +- r = PyUnicode_FromString(SSLeay_version(SSLEAY_VERSION)); ++ r = PyUnicode_FromString(OpenSSL_version(OPENSSL_VERSION)); + if (r == NULL || PyModule_AddObject(m, "OPENSSL_VERSION", r)) + return NULL; + diff --git a/lang/python/ruamel-yaml/Makefile b/lang/python/ruamel-yaml/Makefile index 1368a5dc..bf8119f6 100644 --- a/lang/python/ruamel-yaml/Makefile +++ b/lang/python/ruamel-yaml/Makefile @@ -11,22 +11,18 @@ PKG_NAME:=ruamel-yaml PKG_VERSION:=0.15.100 PKG_RELEASE:=1 -PKG_SOURCE:=ruamel.yaml-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/r/ruamel.yaml/ +PYPI_NAME:=ruamel.yaml PKG_HASH:=8e42f3067a59e819935a2926e247170ed93c8f0b2ab64526f888e026854db2e4 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-ruamel.yaml-$(PKG_VERSION) - PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/ruamel-yaml/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/text-unidecode/Makefile b/lang/python/text-unidecode/Makefile index 86be7583..cb351c53 100644 --- a/lang/python/text-unidecode/Makefile +++ b/lang/python/text-unidecode/Makefile @@ -8,25 +8,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=python-text-unidecode -PKG_VERSION:=1.2 +PKG_VERSION:=1.3 PKG_RELEASE:=1 -PKG_SOURCE:=text-unidecode-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/t/text-unidecode/ -PKG_HASH:=5a1375bb2ba7968740508ae38d92e1f889a0832913cb1c447d5e2046061a396d - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-text-unidecode-$(PKG_VERSION) +PYPI_NAME:=text-unidecode +PKG_HASH:=bad6603bb14d279193107714b288be206cac565dfa49aa5b105294dd5c4aab93 PKG_LICENSE:=Artistic-1.0-cl8 PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Josef Schlehofer +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-text-unidecode/Default SECTION:=lang CATEGORY:=Languages diff --git a/lang/python/vobject/Makefile b/lang/python/vobject/Makefile index 3aa345b0..49e81e14 100644 --- a/lang/python/vobject/Makefile +++ b/lang/python/vobject/Makefile @@ -8,18 +8,15 @@ PKG_VERSION:=0.9.6.1 PKG_RELEASE:=1 PKG_LICENSE:=Apache-2.0 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/v/vobject +PYPI_NAME:=$(PKG_NAME) PKG_HASH:=96512aec74b90abb71f6b53898dd7fe47300cc940104c4f79148f0671f790101 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-vobject-$(PKG_VERSION) +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python-package.mk include ../python3-package.mk -PKG_UNPACK:=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE) - define Package/python-vobject/Default SUBMENU:=Python SECTION:=lang diff --git a/lang/python/xmltodict/Makefile b/lang/python/xmltodict/Makefile index 77beb2a5..78d9d6a5 100644 --- a/lang/python/xmltodict/Makefile +++ b/lang/python/xmltodict/Makefile @@ -11,16 +11,14 @@ PKG_NAME:=python-xmltodict PKG_VERSION:=0.12.0 PKG_RELEASE:=1 -PKG_SOURCE:=xmltodict-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/x/xmltodict/ +PYPI_NAME:=xmltodict PKG_HASH:=50d8c638ed7ecb88d90561beedbf720c9b4e851a9fa6c47ebd64e99d166d8a21 -PKG_BUILD_DIR:=$(BUILD_DIR)/xmltodict-$(PKG_VERSION) - PKG_MAINTAINER:=Josef Schlehofer PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE +include ../pypi.mk include $(INCLUDE_DIR)/package.mk include ../python3-package.mk