Browse Source

package/python-rgbmatrix: new package

The "rgbmatrix" python module is the Python binding for
rpi-rgb-led-matrix, built from the same source repository.

Signed-off-by: J. Neuschäfer <j.neuschaefer@gmx.net>
[yann.morin.1998@free.fr:
  - add comment for propagated dependencies
  - add comment on missing dependencies
  - drop comment at end of _VERSION line
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
J. Neuschäfer 11 months ago
parent
commit
5cc0592bfe

+ 1 - 0
package/Config.in

@@ -1343,6 +1343,7 @@ menu "External python modules"
 	source "package/python-requests-oauthlib/Config.in"
 	source "package/python-requests-toolbelt/Config.in"
 	source "package/python-rfc3987/Config.in"
+	source "package/python-rgbmatrix/Config.in"
 	source "package/python-rpds-py/Config.in"
 	source "package/python-rpi-gpio/Config.in"
 	source "package/python-rpi-ws281x/Config.in"

+ 14 - 0
package/python-rgbmatrix/Config.in

@@ -0,0 +1,14 @@
+config BR2_PACKAGE_PYTHON_RGBMATRIX
+	bool "python-rgbmatrix"
+	depends on BR2_aarch64 || BR2_arm  # rpi-rgb-led-matrix
+	depends on BR2_INSTALL_LIBSTDCPP  # rpi-rgb-led-matrix
+	depends on BR2_TOOLCHAIN_HAS_THREADS  # rpi-rgb-led-matrix
+	depends on !BR2_STATIC_LIBS  # rpi-rgb-led-matrix
+	select BR2_PACKAGE_HOST_PYTHON_CYTHON
+	select BR2_PACKAGE_RPI_RGB_LED_MATRIX
+
+comment "python-rgbmatrix needs a toolchain w/ C++, threads, dynamic libraries"
+	depends on BR2_aarch64 || BR2_arm
+	depends on !BR2_INSTALL_LIBSTDCPP \
+		|| !BR2_TOOLCHAIN_HAS_THREADS \
+		|| BR2_STATIC_LIBS

+ 3 - 0
package/python-rgbmatrix/python-rgbmatrix.hash

@@ -0,0 +1,3 @@
+# Locally computed
+sha256  9a6da5b0ad730883a5fa18afc59b1297b4b05eb581c2c14ae50a3583296a4bed  python-rgbmatrix-f55736f7595bc028451658996eedea9742688bbc.tar.gz
+sha256  8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING

+ 24 - 0
package/python-rgbmatrix/python-rgbmatrix.mk

@@ -0,0 +1,24 @@
+################################################################################
+#
+# python-rgbmatrix
+#
+################################################################################
+
+# When updating the version, please also update rpi-rgb-led-matrix
+PYTHON_RGBMATRIX_VERSION = f55736f7595bc028451658996eedea9742688bbc  # 2024-08-18
+PYTHON_RGBMATRIX_SITE = $(call github,hzeller,rpi-rgb-led-matrix,$(PYTHON_RGBMATRIX_VERSION))
+PYTHON_RGBMATRIX_LICENSE = GPL-2.0
+PYTHON_RGBMATRIX_LICENSE_FILES = COPYING
+PYTHON_RGBMATRIX_INSTALL_STAGING = YES
+PYTHON_RGBMATRIX_SETUP_TYPE = setuptools
+PYTHON_RGBMATRIX_SUBDIR = bindings/python
+PYTHON_RGBMATRIX_DEPENDENCIES = host-python-cython rpi-rgb-led-matrix
+
+# Generate bindings with cython
+define PYTHON_RGBMATRIX_CYTHON
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)/bindings/python/rgbmatrix \
+		CYTHON=$(HOST_DIR)/bin/cython all
+endef
+PYTHON_RGBMATRIX_PRE_BUILD_HOOKS += PYTHON_RGBMATRIX_CYTHON
+
+$(eval $(python-package))

+ 1 - 0
package/rpi-rgb-led-matrix/rpi-rgb-led-matrix.mk

@@ -4,6 +4,7 @@
 #
 ################################################################################
 
+# When updating the version, please also update python-rgbmatrix
 RPI_RGB_LED_MATRIX_VERSION = f55736f7595bc028451658996eedea9742688bbc
 RPI_RGB_LED_MATRIX_SITE = $(call github,hzeller,rpi-rgb-led-matrix,$(RPI_RGB_LED_MATRIX_VERSION))
 RPI_RGB_LED_MATRIX_LICENSE = GPL-2.0