diff options
author | 2023-10-10 08:05:17 +0100 | |
---|---|---|
committer | 2023-10-10 08:05:17 +0100 | |
commit | af2e6e7b3048cdc16aa03d015cda02595cd820f0 (patch) | |
tree | 5e7846fee715b06b7dfaab44feebb85acb534d7d /dev-python | |
parent | dev-libs/hidapi: add 0.14.0 (diff) | |
download | gentoo-af2e6e7b3048cdc16aa03d015cda02595cd820f0.tar.gz gentoo-af2e6e7b3048cdc16aa03d015cda02595cd820f0.tar.bz2 gentoo-af2e6e7b3048cdc16aa03d015cda02595cd820f0.zip |
dev-python/hidapi: add 0.14.0
Closes: https://bugs.gentoo.org/898678
Closes: https://bugs.gentoo.org/908498
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-python')
-rw-r--r-- | dev-python/hidapi/Manifest | 1 | ||||
-rw-r--r-- | dev-python/hidapi/files/hidapi-0.14.0-cython3.patch | 134 | ||||
-rw-r--r-- | dev-python/hidapi/hidapi-0.14.0.ebuild | 34 |
3 files changed, 169 insertions, 0 deletions
diff --git a/dev-python/hidapi/Manifest b/dev-python/hidapi/Manifest index 6eb2b30285c8..a8ac2690b7c7 100644 --- a/dev-python/hidapi/Manifest +++ b/dev-python/hidapi/Manifest @@ -1 +1,2 @@ DIST hidapi-0.13.1.tar.gz 130169 BLAKE2B 127e622e4b85880f1c20ccb819b806c66357d8cfa6c15d370c13a6a0a3838ac6acf0673c7edbf5309a91f55051b6177800328b8f897ff43cd1e0af1b511c52a6 SHA512 8e6a7a6bf47e24f6f637cc036dc306518d893fc9fdf94639f626725e8f8767d7e85496d8db5f9f394d648ef5af4dd5ead0f0a6d452a019b5d9fa0716371febed +DIST hidapi-0.14.0.tar.gz 143052 BLAKE2B ebf3fb9608b1f18d9fa24aaa4bca7b2e5cbbbbcbdb6a33da41456f614d0cace556231bb8eb17c21e2a79a5292970cb37f7a46fb6cd1e82efb0a646cf8a942d2a SHA512 228fac22621e36a3108cefd418937a7ed0153e334e19999e947aad341a753d614877cd3f7add90d78037ebe9c7b3f6cbc42973a8e680188da14928311d317b17 diff --git a/dev-python/hidapi/files/hidapi-0.14.0-cython3.patch b/dev-python/hidapi/files/hidapi-0.14.0-cython3.patch new file mode 100644 index 000000000000..681f9a427934 --- /dev/null +++ b/dev-python/hidapi/files/hidapi-0.14.0-cython3.patch @@ -0,0 +1,134 @@ +https://bugs.gentoo.org/898678 + +1. https://github.com/trezor/cython-hidapi/commit/749da6931f57c4c30596de678125648ccfd6e1cd +2. https://github.com/trezor/cython-hidapi/pull/159 + +From 749da6931f57c4c30596de678125648ccfd6e1cd Mon Sep 17 00:00:00 2001 +From: Pavol Rusnak <pavol@rusnak.io> +Date: Thu, 20 Jul 2023 13:09:19 +0200 +Subject: [PATCH] Require Cython<3 instead of Cython + +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 7e3eb29c..4c311ba4 100755 +--- a/setup.py ++++ b/setup.py +@@ -136,6 +136,6 @@ def find_version(): + "Programming Language :: Python :: 3.9", + ], + ext_modules=modules, +- setup_requires=["Cython"], ++ setup_requires=["Cython<3"], + install_requires=["setuptools>=19.0"], + ) + +From 7dad82b125fdca5df83c00fc711151c35aaa5125 Mon Sep 17 00:00:00 2001 +From: Shawn Hoffman <godisgovernment@gmail.com> +Date: Mon, 11 Sep 2023 17:27:52 -0700 +Subject: [PATCH 1/4] use pyxdep file to locate chid.pxd + +--- + hid.pyxdep | 1 + + setup.py | 4 ++-- + 2 files changed, 3 insertions(+), 2 deletions(-) + create mode 100644 hid.pyxdep + +diff --git a/hid.pyxdep b/hid.pyxdep +new file mode 100644 +index 00000000..7480bc82 +--- /dev/null ++++ b/hid.pyxdep +@@ -0,0 +1 @@ ++chid.pxd +diff --git a/setup.py b/setup.py +index 4c311ba4..73066b06 100755 +--- a/setup.py ++++ b/setup.py +@@ -9,7 +9,7 @@ + hidapi_include = os.path.join(hidapi_topdir, "hidapi") + system_hidapi = 0 + libs = [] +-src = ["hid.pyx", "chid.pxd"] ++src = ["hid.pyx"] + + + def hidapi_src(platform): +@@ -42,7 +42,7 @@ def hidapi_src(platform): + ) + ) + libs = ["udev", "rt"] +- src = ["hidraw.pyx", "chid.pxd"] ++ src = ["hidraw.pyx"] + if system_hidapi == 1: + libs.append("hidapi-hidraw") + else: + +From 4c78f61c7815d1005023d69c42ae777cfee021c1 Mon Sep 17 00:00:00 2001 +From: Shawn Hoffman <godisgovernment@gmail.com> +Date: Mon, 11 Sep 2023 17:28:33 -0700 +Subject: [PATCH 2/4] specify language_level for cython + +--- + setup.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 73066b06..6a3e0af0 100755 +--- a/setup.py ++++ b/setup.py +@@ -1,5 +1,6 @@ + #!/usr/bin/python + from setuptools import setup, Extension ++from Cython.Build import cythonize + import os + import sys + import subprocess +@@ -135,7 +136,7 @@ def find_version(): + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + ], +- ext_modules=modules, ++ ext_modules=cythonize(modules, language_level=3), + setup_requires=["Cython<3"], + install_requires=["setuptools>=19.0"], + ) + +From d73b4cc6706d4220d28df866504e989ab616616a Mon Sep 17 00:00:00 2001 +From: Shawn Hoffman <godisgovernment@gmail.com> +Date: Mon, 11 Sep 2023 17:31:37 -0700 +Subject: [PATCH 3/4] use pyproject.toml allow using recent cython the + expectation is that one would use the `build` tool instead of invoking + setup.py. + +--- + pyproject.toml | 3 +++ + setup.py | 1 - + 3 files changed, 3 insertions(+), 2 deletions(-) + create mode 100644 pyproject.toml + delete mode 100644 requirements.txt + +diff --git a/pyproject.toml b/pyproject.toml +new file mode 100644 +index 00000000..c07b1d35 +--- /dev/null ++++ b/pyproject.toml +@@ -0,0 +1,3 @@ ++[build-system] ++requires = ["setuptools", "Cython"] ++build-backend = "setuptools.build_meta" +diff --git a/setup.py b/setup.py +index 6a3e0af0..9dcdb0ee 100755 +--- a/setup.py ++++ b/setup.py +@@ -137,6 +137,5 @@ def find_version(): + "Programming Language :: Python :: 3.9", + ], + ext_modules=cythonize(modules, language_level=3), +- setup_requires=["Cython<3"], + install_requires=["setuptools>=19.0"], + ) + + diff --git a/dev-python/hidapi/hidapi-0.14.0.ebuild b/dev-python/hidapi/hidapi-0.14.0.ebuild new file mode 100644 index 000000000000..890f3675ed06 --- /dev/null +++ b/dev-python/hidapi/hidapi-0.14.0.ebuild @@ -0,0 +1,34 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +PYTHON_COMPAT=( python3_{10..12} ) +DISTUTILS_USE_PEP517=setuptools +inherit distutils-r1 pypi + +DESCRIPTION="A Cython interface to HIDAPI library" +HOMEPAGE="https://github.com/trezor/cython-hidapi" + +LICENSE="|| ( BSD GPL-3 )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" + +DEPEND=">=dev-libs/hidapi-$(ver_cut 1-3)" +RDEPEND="${DEPEND}" +BDEPEND="dev-python/cython[${PYTHON_USEDEP}]" + +PATCHES=( + "${FILESDIR}"/${PN}-0.14.0-cython3.patch +) + +distutils_enable_tests pytest + +python_configure_all() { + DISTUTILS_ARGS=( --with-system-hidapi ) +} + +python_test() { + epytest tests.py +} |