diff mbox series

[1/1] package/python-evdev: new package

Message ID 20230413092055.3438333-1-witold.lipieta@thaumatec.com
State Changes Requested
Headers show
Series [1/1] package/python-evdev: new package | expand

Commit Message

Witold Lipieta April 13, 2023, 9:20 a.m. UTC
evdev 1.6.1 https://pypi.org/project/evdev/

Signed-off-by: Witold Lipieta <witold.lipieta@thaumatec.com>
---
 package/Config.in                      |  1 +
 package/python-evdev/Config.in         |  7 +++++++
 package/python-evdev/python-evdev.hash |  5 +++++
 package/python-evdev/python-evdev.mk   | 18 ++++++++++++++++++
 4 files changed, 31 insertions(+)
 create mode 100644 package/python-evdev/Config.in
 create mode 100644 package/python-evdev/python-evdev.hash
 create mode 100644 package/python-evdev/python-evdev.mk

Comments

Yann E. MORIN April 14, 2023, 8:32 p.m. UTC | #1
Witold, All,

On 2023-04-13 11:20 +0200, Witold Lipieta spake thusly:
> evdev 1.6.1 https://pypi.org/project/evdev/
> 
> Signed-off-by: Witold Lipieta <witold.lipieta@thaumatec.com>
> ---
[--SNIP--]
> diff --git a/package/python-evdev/Config.in b/package/python-evdev/Config.in
> new file mode 100644
> index 0000000000..f6c021e694
> --- /dev/null
> +++ b/package/python-evdev/Config.in
> @@ -0,0 +1,7 @@
> +config BR2_PACKAGE_PYTHON_EVDEV
> +	bool "python-evdev"
> +	select BR2_PACKAGE_LIBEVDEV # runtime

I could not find where that dependency is used in the code. Can you
double check, please?

However, it uses input-event-codes.h, which was only included in linux
4.4, so it should depend on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4.

[--SNIP--]
> diff --git a/package/python-evdev/python-evdev.mk b/package/python-evdev/python-evdev.mk
> new file mode 100644
> index 0000000000..33fe071916
> --- /dev/null
> +++ b/package/python-evdev/python-evdev.mk
> @@ -0,0 +1,18 @@
> +################################################################################
> +#
> +# python-evdev
> +#
> +################################################################################
> +
> +PYTHON_EVDEV_VERSION = 1.6.1
> +PYTHON_EVDEV_SOURCE = evdev-$(PYTHON_EVDEV_VERSION).tar.gz
> +PYTHON_EVDEV_SITE = https://files.pythonhosted.org/packages/05/50/629b011a7f61cb2fca754ea8631575784bf8605a1ec4d6970a010bc54e2b
> +PYTHON_EVDEV_SETUP_TYPE = setuptools
> +PYTHON_EVDEV_LICENSE = Revised BSD License
> +PYTHON_EVDEV_LICENSE_FILES = LICENSE
> +
> +PYTHON_EVDEV_BUILD_OPTS = \
> +	build_ecodes \
> +	--evdev-headers $(STAGING_DIR)/usr/include/linux/input.h:$(STAGING_DIR)/usr/include/linux/input-event-codes.h

setup.py also lists /usr/include/linux/uinput.h, so maybe we want to
also include that?

Regards,
Yann E. MORIN.

> +$(eval $(python-package))
> -- 
> 2.34.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Witold Lipieta April 17, 2023, 1:02 p.m. UTC | #2
Thanks for the review, I will push updated patch soon

pt., 14 kwi 2023 o 22:32 Yann E. MORIN <yann.morin.1998@free.fr> napisaƂ(a):
>
> Witold, All,
>
> On 2023-04-13 11:20 +0200, Witold Lipieta spake thusly:
> > evdev 1.6.1 https://pypi.org/project/evdev/
> >
> > Signed-off-by: Witold Lipieta <witold.lipieta@thaumatec.com>
> > ---
> [--SNIP--]
> > diff --git a/package/python-evdev/Config.in b/package/python-evdev/Config.in
> > new file mode 100644
> > index 0000000000..f6c021e694
> > --- /dev/null
> > +++ b/package/python-evdev/Config.in
> > @@ -0,0 +1,7 @@
> > +config BR2_PACKAGE_PYTHON_EVDEV
> > +     bool "python-evdev"
> > +     select BR2_PACKAGE_LIBEVDEV # runtime
>
> I could not find where that dependency is used in the code. Can you
> double check, please?

Right, it was dependency in my application

> However, it uses input-event-codes.h, which was only included in linux
> 4.4, so it should depend on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4.

Good catch

> [--SNIP--]
> > diff --git a/package/python-evdev/python-evdev.mk b/package/python-evdev/python-evdev.mk
> > new file mode 100644
> > index 0000000000..33fe071916
> > --- /dev/null
> > +++ b/package/python-evdev/python-evdev.mk
> > @@ -0,0 +1,18 @@
> > +################################################################################
> > +#
> > +# python-evdev
> > +#
> > +################################################################################
> > +
> > +PYTHON_EVDEV_VERSION = 1.6.1
> > +PYTHON_EVDEV_SOURCE = evdev-$(PYTHON_EVDEV_VERSION).tar.gz
> > +PYTHON_EVDEV_SITE = https://files.pythonhosted.org/packages/05/50/629b011a7f61cb2fca754ea8631575784bf8605a1ec4d6970a010bc54e2b
> > +PYTHON_EVDEV_SETUP_TYPE = setuptools
> > +PYTHON_EVDEV_LICENSE = Revised BSD License
> > +PYTHON_EVDEV_LICENSE_FILES = LICENSE
> > +
> > +PYTHON_EVDEV_BUILD_OPTS = \
> > +     build_ecodes \
> > +     --evdev-headers $(STAGING_DIR)/usr/include/linux/input.h:$(STAGING_DIR)/usr/include/linux/input-event-codes.h
>
> setup.py also lists /usr/include/linux/uinput.h, so maybe we want to
> also include that?

Looks like instructions are not up to date in the docs, I will append
this path too.

> Regards,
> Yann E. MORIN.
>
> > +$(eval $(python-package))
> > --
> > 2.34.1
> >
> > _______________________________________________
> > buildroot mailing list
> > buildroot@buildroot.org
> > https://lists.buildroot.org/mailman/listinfo/buildroot
>
> --
> .-----------------.--------------------.------------------.--------------------.
> |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
> | +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
> '------------------------------^-------^------------------^--------------------'
diff mbox series

Patch

diff --git a/package/Config.in b/package/Config.in
index 760dda6ac1..eaac32a01a 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1049,6 +1049,7 @@  menu "External python modules"
 	source "package/python-engineio/Config.in"
 	source "package/python-entrypoints/Config.in"
 	source "package/python-esptool/Config.in"
+	source "package/python-evdev/Config.in"
 	source "package/python-falcon/Config.in"
 	source "package/python-filelock/Config.in"
 	source "package/python-fire/Config.in"
diff --git a/package/python-evdev/Config.in b/package/python-evdev/Config.in
new file mode 100644
index 0000000000..f6c021e694
--- /dev/null
+++ b/package/python-evdev/Config.in
@@ -0,0 +1,7 @@ 
+config BR2_PACKAGE_PYTHON_EVDEV
+	bool "python-evdev"
+	select BR2_PACKAGE_LIBEVDEV # runtime
+	help
+	  Bindings to the Linux input handling subsystem.
+
+	  https://github.com/gvalkov/python-evdev
diff --git a/package/python-evdev/python-evdev.hash b/package/python-evdev/python-evdev.hash
new file mode 100644
index 0000000000..9a6d0d07be
--- /dev/null
+++ b/package/python-evdev/python-evdev.hash
@@ -0,0 +1,5 @@ 
+# md5, sha256 from https://pypi.org/pypi/evdev/json
+md5  905b12ef6136b518ddf418d8d5b053e4  evdev-1.6.1.tar.gz
+sha256  299db8628cc73b237fc1cc57d3c2948faa0756e2a58b6194b5bf81dc2081f1e3  evdev-1.6.1.tar.gz
+# Locally computed sha256 checksums
+sha256  55fd76d7b3f90d312f161d318631b93c58a0e69d662d07c4f5aca2c6c9ecc85e  LICENSE
diff --git a/package/python-evdev/python-evdev.mk b/package/python-evdev/python-evdev.mk
new file mode 100644
index 0000000000..33fe071916
--- /dev/null
+++ b/package/python-evdev/python-evdev.mk
@@ -0,0 +1,18 @@ 
+################################################################################
+#
+# python-evdev
+#
+################################################################################
+
+PYTHON_EVDEV_VERSION = 1.6.1
+PYTHON_EVDEV_SOURCE = evdev-$(PYTHON_EVDEV_VERSION).tar.gz
+PYTHON_EVDEV_SITE = https://files.pythonhosted.org/packages/05/50/629b011a7f61cb2fca754ea8631575784bf8605a1ec4d6970a010bc54e2b
+PYTHON_EVDEV_SETUP_TYPE = setuptools
+PYTHON_EVDEV_LICENSE = Revised BSD License
+PYTHON_EVDEV_LICENSE_FILES = LICENSE
+
+PYTHON_EVDEV_BUILD_OPTS = \
+	build_ecodes \
+	--evdev-headers $(STAGING_DIR)/usr/include/linux/input.h:$(STAGING_DIR)/usr/include/linux/input-event-codes.h
+
+$(eval $(python-package))