summaryrefslogtreecommitdiff
path: root/dev-python/hidapi/files/hidapi-0.14.0-cython3.patch
blob: 681f9a427934e079491e613bc6fbd64bb8e50ec3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
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"],
 )