diff mbox series

[1/1] package/wiringX: add GPIO library wiringX

Message ID tencent_0D8E30000E63F8AF28CBDFCD8FFFBE122007@qq.com
State New
Headers show
Series [1/1] package/wiringX: add GPIO library wiringX | expand

Commit Message

Hanyuan Zhao Oct. 14, 2023, 3:11 p.m. UTC
wiringX is a cross-platform GPIO interface that allows
developers to control the GPIO of various platforms with
generic and uniform functions. By using wiringX, the same
code will run on all platforms supported by wiringX.

https://github.com/wiringX/wiringX

Signed-off-by: Hanyuan Zhao <hanyuan-z@qq.com>
---
 package/Config.in                             |  1 +
 ...ed-time-type-error-when-compiling-by.patch | 47 +++++++++++++++++++
 package/wiringx/Config.in                     | 18 +++++++
 package/wiringx/wiringx.hash                  |  3 ++
 package/wiringx/wiringx.mk                    | 12 +++++
 5 files changed, 81 insertions(+)
 create mode 100644 package/wiringx/0001-Fix-the-undeclared-time-type-error-when-compiling-by.patch
 create mode 100644 package/wiringx/Config.in
 create mode 100644 package/wiringx/wiringx.hash
 create mode 100644 package/wiringx/wiringx.mk
diff mbox series

Patch

diff --git a/package/Config.in b/package/Config.in
index 009f7ba186..b13f91263a 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -651,6 +651,7 @@  endmenu
 	source "package/wf111/Config.in"
 	source "package/wilc-driver/Config.in"
 	source "package/wipe/Config.in"
+	source "package/wiringx/Config.in"
 	source "package/xorriso/Config.in"
 	source "package/xr819-xradio/Config.in"
 endmenu
diff --git a/package/wiringx/0001-Fix-the-undeclared-time-type-error-when-compiling-by.patch b/package/wiringx/0001-Fix-the-undeclared-time-type-error-when-compiling-by.patch
new file mode 100644
index 0000000000..43f2afc7a3
--- /dev/null
+++ b/package/wiringx/0001-Fix-the-undeclared-time-type-error-when-compiling-by.patch
@@ -0,0 +1,47 @@ 
+From 3185311331f8fb90ce5dd9376e8b35bff4bb083f Mon Sep 17 00:00:00 2001
+From: Hanyuan Zhao <hanyuan-z@qq.com>
+Date: Sat, 14 Oct 2023 14:46:15 +0800
+Subject: [PATCH] Fix the undeclared time type error when compiling by
+ buildroot
+
+Signed-off-by: Hanyuan Zhao <hanyuan-z@qq.com>
+---
+ src/wiringx.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/wiringx.c b/src/wiringx.c
+index e831caa..b424c5b 100644
+--- a/src/wiringx.c
++++ b/src/wiringx.c
+@@ -119,8 +119,8 @@ static void delayMicrosecondsHard(unsigned int howLong) {
+ 	tLong.tv_sec  = howLong / 1000000;
+ 	tLong.tv_usec = howLong % 1000000;
+ #else
+-	tLong.tv_sec  = (__time_t)howLong / 1000000;
+-	tLong.tv_usec = (__suseconds_t)howLong % 1000000;
++	tLong.tv_sec  = (time_t)howLong / 1000000;
++	tLong.tv_usec = (suseconds_t)howLong % 1000000;
+ #endif
+ 	timeradd(&tNow, &tLong, &tEnd);
+ 
+@@ -135,7 +135,7 @@ EXPORT void delayMicroseconds(unsigned int howLong) {
+ 	long int uSecs = howLong % 1000000;
+ 	unsigned int wSecs = howLong / 1000000;
+ #else
+-	long int uSecs = (__time_t)howLong % 1000000;
++	long int uSecs = (time_t)howLong % 1000000;
+ 	unsigned int wSecs = howLong / 1000000;
+ #endif
+ 
+@@ -147,7 +147,7 @@ EXPORT void delayMicroseconds(unsigned int howLong) {
+ #ifdef _WIN32
+ 		sleeper.tv_sec = wSecs;
+ #else
+-		sleeper.tv_sec = (__time_t)wSecs;	
++		sleeper.tv_sec = (time_t)wSecs;
+ #endif
+ 		sleeper.tv_nsec = (long)(uSecs * 1000L);
+ 		nanosleep(&sleeper, NULL);
+-- 
+2.34.1
+
diff --git a/package/wiringx/Config.in b/package/wiringx/Config.in
new file mode 100644
index 0000000000..9c1e7d168e
--- /dev/null
+++ b/package/wiringx/Config.in
@@ -0,0 +1,18 @@ 
+config BR2_PACKAGE_WIRINGX
+	bool "wiringX"
+	help
+	  wiringX is a cross-platform GPIO interface that allows
+	  developers to control the GPIO of various platforms with
+	  generic and uniform functions. By using wiringX, the same
+	  code will run on all platforms supported by wiringX.
+
+	  Supported vendors:
+
+	  allwinner = <a10, a31s, h3, h5>
+	  amlogic = <s805, s905>
+	  broadcom = <bcm2711, bcm2835, bcm2836>
+	  nXP = <imx6dqrm, imx6sdlrm>
+	  rockchip = <rk3399>
+	  samsung = <exynos5422>
+
+	  https://wiringx.org/
diff --git a/package/wiringx/wiringx.hash b/package/wiringx/wiringx.hash
new file mode 100644
index 0000000000..b98e707326
--- /dev/null
+++ b/package/wiringx/wiringx.hash
@@ -0,0 +1,3 @@ 
+# Locally computed:
+sha256  62a0bae8f749ad934f1309cdb9df1dbc79a6ce2abc8c6da11040673564c8fb0b  wiringx-54030cd9b68ef895439e1444f418524e16cbb4c1.tar.gz
+sha256  fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85  LICENSE
diff --git a/package/wiringx/wiringx.mk b/package/wiringx/wiringx.mk
new file mode 100644
index 0000000000..b72046ab60
--- /dev/null
+++ b/package/wiringx/wiringx.mk
@@ -0,0 +1,12 @@ 
+################################################################################
+#
+# wiringX
+#
+################################################################################
+
+WIRINGX_VERSION = 54030cd9b68ef895439e1444f418524e16cbb4c1
+WIRINGX_SITE = $(call github,wiringX,wiringX,$(WIRINGX_VERSION))
+WIRINGX_LICENSE = MPL-2.0
+WIRINGX_LICENSE_FILES = LICENSE
+
+$(eval $(cmake-package))