Skip to contentSkip to conversation

package/qt5/qt5coap: new package

PATCH New Angelo Compagnucci 3 participants 7 messages Nov 19, 2020 – Nov 21, 2020

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/3 package/qt5/qt5coap: new package

The Qt CoAP module implements the client side of CoAP defined by RFC 7252.

---
Changelog
v1 -> v2:
fixed hash file (suggested by Peter)

 DEVELOPERS                       |  1 +
 package/qt5/Config.in            |  1 +
 package/qt5/qt5coap/Config.in    | 11 +++++++++++
 package/qt5/qt5coap/qt5coap.hash |  6 ++++++
 package/qt5/qt5coap/qt5coap.mk   | 19 +++++++++++++++++++
 5 files changed, 38 insertions(+)
 create mode 100644 package/qt5/qt5coap/Config.in
 create mode 100644 package/qt5/qt5coap/qt5coap.hash
 create mode 100644 package/qt5/qt5coap/qt5coap.mk
DEVELOPERS +1 -0
index 9ab1e125f4..3f5fa20ebc 100644
@@ -169,6 +169,7 @@ F:	package/python-pillow/
 F:	package/python-pydal/
 F:	package/python-spidev/
 F:	package/python-web2py/
+F:	package/qt5/qt5coap/
 F:	package/sam-ba/
 F:	package/sshguard/
 F:	package/sunwait/
package/qt5/Config.in +1 -0
index fc0e68e8b7..9431f4980d 100644
@@ -40,6 +40,7 @@ if BR2_PACKAGE_QT5
 source "package/qt5/qt53d/Config.in"
 source "package/qt5/qt5base/Config.in"
 source "package/qt5/qt5charts/Config.in"
+source "package/qt5/qt5coap/Config.in"
 source "package/qt5/qt5connectivity/Config.in"
 source "package/qt5/qt5declarative/Config.in"
 source "package/qt5/qt5enginio/Config.in"
package/qt5/qt5coap/Config.in new file +11 -0
new file mode 100644
index 0000000000..b5bed342a9
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_QT5COAP
+	bool "qt5coap"
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  CoAP is a protocol for IoT devices, and machine to machine
+	  communication. The Qt CoAP module implements the client side
+	  of CoAP defined by RFC 7252.
+
+	  https://doc.qt.io/QtCoAP/qtcoap-index.html
package/qt5/qt5coap/qt5coap.hash new file +6 -0
new file mode 100644
index 0000000000..3f3390ebd4
@@ -0,0 +1,6 @@
+# Hash locally calculated
+sha256  f2addd89e94fb3945fc6ee6db795b0736cd3396760b31e04c01cd02558c53e07  qt5coap-5.15.1.tar.gz
+
+# Hashes for license files:
+sha256  8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3
+sha256  f827ad079686ba92cc94811e35492d0e8966f704008b6da9eeda0b659fb58a8d LICENSE.FDL
package/qt5/qt5coap/qt5coap.mk new file +19 -0
new file mode 100644
index 0000000000..210cebf13a
@@ -0,0 +1,19 @@
+################################################################################
+#
+# qt5coap
+#
+################################################################################
+
+QT5COAP_VERSION = $(QT5_VERSION)
+QT5COAP_SITE = $(call github,qt,qtcoap,v$(QT5_VERSION))
+QT5COAP_INSTALL_STAGING = YES
+QT5COAP_LICENSE = GPL-3.0, GFDL-1.3
+QT5COAP_LICENSE_FILES = LICENSE.GPL3 LICENSE.FDL
+QT5COAP_DEPENDENCIES = host-perl
+
+define QT5COAP_FIX_INCLUDE
+	cd $(@D); $(HOST_DIR)/bin/syncqt.pl -module QtCoap -version $(QT5_VERSION)
+endef
+QT5COAP_PRE_CONFIGURE_HOOKS = QT5COAP_FIX_INCLUDE
+
+$(eval $(qmake-package))
Signature · 1 line
2.25.1
#1 lore raw

PATCH v2 2/3 package/qt5/qt5mqtt: new package

The Qt MQTT module provides a standard compliant implementation of the MQTT protocol specification.

---
Changelog
v1 -> v2:
fixed hash file (suggested by Peter)

 DEVELOPERS                       |  1 +
 package/qt5/Config.in            |  1 +
 package/qt5/qt5mqtt/Config.in    | 12 ++++++++++++
 package/qt5/qt5mqtt/qt5mqtt.hash |  6 ++++++
 package/qt5/qt5mqtt/qt5mqtt.mk   | 19 +++++++++++++++++++
 5 files changed, 39 insertions(+)
 create mode 100644 package/qt5/qt5mqtt/Config.in
 create mode 100644 package/qt5/qt5mqtt/qt5mqtt.hash
 create mode 100644 package/qt5/qt5mqtt/qt5mqtt.mk
DEVELOPERS +1 -0
index 3f5fa20ebc..d45e584709 100644
@@ -170,6 +170,7 @@ F:	package/python-pydal/
 F:	package/python-spidev/
 F:	package/python-web2py/
 F:	package/qt5/qt5coap/
+F:	package/qt5/qt5mqtt/
 F:	package/sam-ba/
 F:	package/sshguard/
 F:	package/sunwait/
package/qt5/Config.in +1 -0
index 9431f4980d..c15d27ba7c 100644
@@ -48,6 +48,7 @@ source "package/qt5/qt5graphicaleffects/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
 source "package/qt5/qt5location/Config.in"
 source "package/qt5/qt5lottie/Config.in"
+source "package/qt5/qt5mqtt/Config.in"
 source "package/qt5/qt5multimedia/Config.in"
 source "package/qt5/qt5quickcontrols/Config.in"
 source "package/qt5/qt5quickcontrols2/Config.in"
package/qt5/qt5mqtt/Config.in new file +12 -0
new file mode 100644
index 0000000000..509b18089d
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_QT5MQTT
+	bool "qt5mqtt"
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  The Qt MQTT module provides a standard compliant implementation
+	  of the MQTT protocol specification. It enables applications to
+	  act as telemetry displays and devices to publish telemetry data.
+	  The supported versions are MQTT 3.1, MQTT 3.1.1, and MQTT 5.0.
+
+	  https://doc.qt.io/QtMQTT/index.html
package/qt5/qt5mqtt/qt5mqtt.hash new file +6 -0
new file mode 100644
index 0000000000..9d7ec5082e
@@ -0,0 +1,6 @@
+# Hash locally calculated
+sha256  603f81095ec837cb28b93189fd26dbbae32ecaedd80f6dd88c85050b51e18008  qt5mqtt-5.15.1.tar.gz
+
+# Hashes for license files:
+sha256  8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3
+sha256  0dbe024961f6ab5c52689cbd036c977975d0d0f6a67ff97762d96cb819dd5652 LICENSE.GPL3-EXCEPT
package/qt5/qt5mqtt/qt5mqtt.mk new file +19 -0
new file mode 100644
index 0000000000..2e0093df3a
@@ -0,0 +1,19 @@
+################################################################################
+#
+# qt5mqtt
+#
+################################################################################
+
+QT5MQTT_VERSION = $(QT5_VERSION)
+QT5MQTT_SITE = $(call github,qt,qtmqtt,v$(QT5_VERSION))
+QT5MQTT_INSTALL_STAGING = YES
+QT5MQTT_LICENSE = GPL-3.0 with exception
+QT5MQTT_LICENSE_FILES = LICENSE.GPL3 LICENSE.GPL3-EXCEPT
+QT5MQTT_DEPENDENCIES = host-perl
+
+define QT5MQTT_FIX_INCLUDE
+	cd $(@D); $(HOST_DIR)/bin/syncqt.pl -module QtMqtt -version $(QT5_VERSION)
+endef
+QT5MQTT_PRE_CONFIGURE_HOOKS = QT5MQTT_FIX_INCLUDE
+
+$(eval $(qmake-package))
Signature · 1 line
2.25.1
#2 lore raw

PATCH v2 3/3 package/qt5/qt5knx: new package

In reply to Angelo Compagnucci

The Qt KNX module implements the client side of a connection between a client and a KNXnet/IP server.

---
Changelog
v1 -> v2:
fixed hash file (suggested by Peter)

 DEVELOPERS                     |  1 +
 package/qt5/Config.in          |  1 +
 package/qt5/qt5knx/Config.in   | 12 ++++++++++++
 package/qt5/qt5knx/qt5knx.hash |  6 ++++++
 package/qt5/qt5knx/qt5knx.mk   | 19 +++++++++++++++++++
 5 files changed, 39 insertions(+)
 create mode 100644 package/qt5/qt5knx/Config.in
 create mode 100644 package/qt5/qt5knx/qt5knx.hash
 create mode 100644 package/qt5/qt5knx/qt5knx.mk
DEVELOPERS +1 -0
index d45e584709..9fadedb4de 100644
@@ -170,6 +170,7 @@ F:	package/python-pydal/
 F:	package/python-spidev/
 F:	package/python-web2py/
 F:	package/qt5/qt5coap/
+F:	package/qt5/qt5knx/
 F:	package/qt5/qt5mqtt/
 F:	package/sam-ba/
 F:	package/sshguard/
package/qt5/Config.in +1 -0
index c15d27ba7c..6714c6271d 100644
@@ -46,6 +46,7 @@ source "package/qt5/qt5declarative/Config.in"
 source "package/qt5/qt5enginio/Config.in"
 source "package/qt5/qt5graphicaleffects/Config.in"
 source "package/qt5/qt5imageformats/Config.in"
+source "package/qt5/qt5knx/Config.in"
 source "package/qt5/qt5location/Config.in"
 source "package/qt5/qt5lottie/Config.in"
 source "package/qt5/qt5mqtt/Config.in"
package/qt5/qt5knx/Config.in new file +12 -0
new file mode 100644
index 0000000000..991e93c8cb
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_QT5KNX
+	bool "qt5knx"
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  The Qt KNX module implements the client side of a connection
+	  between a client and a KNXnet/IP server. This connection
+	  can be used to send messages to the KNX bus and to control
+	  the functionalities of the KNX devices.
+
+	  https://doc.qt.io/QtKNX/index.html
package/qt5/qt5knx/qt5knx.hash new file +6 -0
new file mode 100644
index 0000000000..dce7a36870
@@ -0,0 +1,6 @@
+# Hash locally calculated
+sha256  8ee0df130fad39ef6b9a0bef390b648d3ad6539ffca33e22fb569e889d0bd043  qt5knx-5.15.1.tar.gz
+
+# Hashes for license files:
+sha256  8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3
+sha256  f827ad079686ba92cc94811e35492d0e8966f704008b6da9eeda0b659fb58a8d LICENSE.FDL
package/qt5/qt5knx/qt5knx.mk new file +19 -0
new file mode 100644
index 0000000000..57cfaa1175
@@ -0,0 +1,19 @@
+################################################################################
+#
+# qt5knx
+#
+################################################################################
+
+QT5KNX_VERSION = $(QT5_VERSION)
+QT5KNX_SITE = $(call github,qt,qtknx,v$(QT5_VERSION))
+QT5KNX_INSTALL_STAGING = YES
+QT5KNX_LICENSE = GPL-3.0 with exception
+QT5KNX_LICENSE_FILES = LICENSE.GPL3 LICENSE.GPL3-EXCEPT
+QT5KNX_DEPENDENCIES = host-perl
+
+define QT5KNX_FIX_INCLUDE
+	cd $(@D); $(HOST_DIR)/bin/syncqt.pl -module QtKnx -version $(QT5_VERSION)
+endef
+QT5KNX_PRE_CONFIGURE_HOOKS = QT5KNX_FIX_INCLUDE
+
+$(eval $(qmake-package))
Signature · 1 line
2.25.1
#3 lore raw

PATCH v2 1/3 package/qt5/qt5coap: new package

In reply to Angelo Compagnucci

Hello Angelo,

Thanks a lot those three packages, they obviously look good. I only have one question.

package/qt5/qt5coap/qt5coap.mk line 16

Quoted 10 lines · On Thu, 19 Nov 2020 23:01:40 +0100 Angelo Compagnucci…
package/qt5/qt5coap/qt5coap.mk new file +10 -0
+QT5COAP_VERSION = $(QT5_VERSION)
+QT5COAP_SITE = $(call github,qt,qtcoap,v$(QT5_VERSION))
+QT5COAP_INSTALL_STAGING = YES
+QT5COAP_LICENSE = GPL-3.0, GFDL-1.3
+QT5COAP_LICENSE_FILES = LICENSE.GPL3 LICENSE.FDL
+QT5COAP_DEPENDENCIES = host-perl
+
+define QT5COAP_FIX_INCLUDE
+	cd $(@D); $(HOST_DIR)/bin/syncqt.pl -module QtCoap -version $(QT5_VERSION)
+endef

Why is this syncqt.pl invocation needed for those 3 packages? What makes them different from the other Qt5 packages we have?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
#4 lore raw

PATCH v2 1/3 package/qt5/qt5coap: new package

Quoted 8 lines · Thomas Petazzoni

Hello Angelo,

Thanks a lot those three packages, they obviously look good. I only have one question.

On Thu, 19 Nov 2020 23:01:40 +0100
Angelo Compagnucci <[email protected]> wrote:

Quoted 13 lines

package/qt5/qt5coap/qt5coap.mk line 16

Quoted 10 lines
package/qt5/qt5coap/qt5coap.mk new file +10 -0
+QT5COAP_VERSION = $(QT5_VERSION)
+QT5COAP_SITE = $(call github,qt,qtcoap,v$(QT5_VERSION))
+QT5COAP_INSTALL_STAGING = YES
+QT5COAP_LICENSE = GPL-3.0, GFDL-1.3
+QT5COAP_LICENSE_FILES = LICENSE.GPL3 LICENSE.FDL
+QT5COAP_DEPENDENCIES = host-perl
+
+define QT5COAP_FIX_INCLUDE
+     cd $(@D); $(HOST_DIR)/bin/syncqt.pl -module QtCoap -version $(QT5_VERSION)
+endef

Why is this syncqt.pl invocation needed for those 3 packages? What makes them different from the other Qt5 packages we have?

If you open one of the other packages, you can find the "include" directory already populated, instead when compiling from source the folder is missing. qmake runs syncqt.pl automatically when you run qmake from a cloned repo (when there is a .git folder). This is the way the qt everywhere source packages are built.
Buildroot removes the .git folder and so the script isn't triggered. I had to choose if adding a fake .git directory or call the script manually, I choose the latter because I think it's more clear.

Quoted 8 lines

Thanks!

Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

Signature · 6 lines
Angelo Compagnucci
Amarula Solutions SRL
Embedded Linux Developer
Via Le Canevare 30 31100 Treviso IT
T. +390422435310
[`as] https://www.amarulasolutions.com|
#5 lore raw

PATCH v2 1/3 package/qt5/qt5coap: new package

Hello Angelo,

Quoted 24 lines · Angelo Compagnucci
Quoted 8 lines · Thomas Petazzoni

Hello Angelo,

Thanks a lot those three packages, they obviously look good. I only have one question.

On Thu, 19 Nov 2020 23:01:40 +0100
Angelo Compagnucci <[email protected]> wrote:

Quoted 13 lines

package/qt5/qt5coap/qt5coap.mk line 16

Quoted 10 lines
package/qt5/qt5coap/qt5coap.mk new file +10 -0
+QT5COAP_VERSION = $(QT5_VERSION)
+QT5COAP_SITE = $(call github,qt,qtcoap,v$(QT5_VERSION))
+QT5COAP_INSTALL_STAGING = YES
+QT5COAP_LICENSE = GPL-3.0, GFDL-1.3
+QT5COAP_LICENSE_FILES = LICENSE.GPL3 LICENSE.FDL
+QT5COAP_DEPENDENCIES = host-perl
+
+define QT5COAP_FIX_INCLUDE
+     cd $(@D); $(HOST_DIR)/bin/syncqt.pl -module QtCoap -version $(QT5_VERSION)
+endef

Why is this syncqt.pl invocation needed for those 3 packages? What makes them different from the other Qt5 packages we have?

Quoted 8 lines

If you open one of the other packages, you can find the "include" directory already populated, instead when compiling from source the folder is missing. qmake runs syncqt.pl automatically when you run qmake from a cloned repo (when there is a .git folder). This is the way the qt everywhere source packages are built.
Buildroot removes the .git folder and so the script isn't triggered. I had to choose if adding a fake .git directory or call the script manually, I choose the latter because I think it's more clear.

Thanks for the detailed explanation (I can confirm the build failure without the syncqt.pl call), maybe worth a short comment, e.g.:

	# needed for build from sources from git (but without .git directory)

and/or enhancement of the commit message?

Regards,
Peter

Quoted 12 lines
Quoted 9 lines

Thanks!

Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

#6 lore raw

PATCH v2 1/3 package/qt5/qt5coap: new package

In reply to Angelo Compagnucci

Hello Angelo,

Quoted 66 lines · Angelo Compagnucci

The Qt CoAP module implements the client side of CoAP defined by RFC 7252.

---
Changelog
v1 -> v2:
fixed hash file (suggested by Peter)

 DEVELOPERS                       |  1 +
 package/qt5/Config.in            |  1 +
 package/qt5/qt5coap/Config.in    | 11 +++++++++++
 package/qt5/qt5coap/qt5coap.hash |  6 ++++++
 package/qt5/qt5coap/qt5coap.mk   | 19 +++++++++++++++++++
 5 files changed, 38 insertions(+)
 create mode 100644 package/qt5/qt5coap/Config.in
 create mode 100644 package/qt5/qt5coap/qt5coap.hash
 create mode 100644 package/qt5/qt5coap/qt5coap.mk
DEVELOPERS +1 -0
index 9ab1e125f4..3f5fa20ebc 100644
@@ -169,6 +169,7 @@ F:	package/python-pillow/
 F:	package/python-pydal/
 F:	package/python-spidev/
 F:	package/python-web2py/
+F:	package/qt5/qt5coap/
 F:	package/sam-ba/
 F:	package/sshguard/
 F:	package/sunwait/
package/qt5/Config.in +1 -0
index fc0e68e8b7..9431f4980d 100644
@@ -40,6 +40,7 @@ if BR2_PACKAGE_QT5
 source "package/qt5/qt53d/Config.in"
 source "package/qt5/qt5base/Config.in"
 source "package/qt5/qt5charts/Config.in"
+source "package/qt5/qt5coap/Config.in"
 source "package/qt5/qt5connectivity/Config.in"
 source "package/qt5/qt5declarative/Config.in"
 source "package/qt5/qt5enginio/Config.in"
package/qt5/qt5coap/Config.in new file +11 -0
new file mode 100644
index 0000000000..b5bed342a9
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_QT5COAP
+	bool "qt5coap"
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  CoAP is a protocol for IoT devices, and machine to machine
+	  communication. The Qt CoAP module implements the client side
+	  of CoAP defined by RFC 7252.
+
+	  https://doc.qt.io/QtCoAP/qtcoap-index.html
package/qt5/qt5coap/qt5coap.hash new file +0 -0
new file mode 100644
index 0000000000..3f3390ebd4

package/qt5/qt5coap/qt5coap.hash line 6

Quoted 6 lines
package/qt5/qt5coap/qt5coap.hash new file +6 -0
@@ -0,0 +1,6 @@
+# Hash locally calculated
+sha256  f2addd89e94fb3945fc6ee6db795b0736cd3396760b31e04c01cd02558c53e07  qt5coap-5.15.1.tar.gz
+
+# Hashes for license files:
+sha256  8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3
+sha256  f827ad079686ba92cc94811e35492d0e8966f704008b6da9eeda0b659fb58a8d LICENSE.FDL

---------^ o.k. ---------------------------------------------------------------------------^ not o.k. should be two spaces

Regards,
Peter

Quoted 25 lines
package/qt5/qt5coap/qt5coap.mk new file +19 -0
new file mode 100644
index 0000000000..210cebf13a
@@ -0,0 +1,19 @@
+################################################################################
+#
+# qt5coap
+#
+################################################################################
+
+QT5COAP_VERSION = $(QT5_VERSION)
+QT5COAP_SITE = $(call github,qt,qtcoap,v$(QT5_VERSION))
+QT5COAP_INSTALL_STAGING = YES
+QT5COAP_LICENSE = GPL-3.0, GFDL-1.3
+QT5COAP_LICENSE_FILES = LICENSE.GPL3 LICENSE.FDL
+QT5COAP_DEPENDENCIES = host-perl
+
+define QT5COAP_FIX_INCLUDE
+	cd $(@D); $(HOST_DIR)/bin/syncqt.pl -module QtCoap -version $(QT5_VERSION)
+endef
+QT5COAP_PRE_CONFIGURE_HOOKS = QT5COAP_FIX_INCLUDE
+
+$(eval $(qmake-package))