All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP
@ 2020-11-23 21:42 Angelo Compagnucci
  2020-11-23 21:42 ` [Buildroot] [PATCH v3 2/4] package/qt5/qt5coap: new package Angelo Compagnucci
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Angelo Compagnucci @ 2020-11-23 21:42 UTC (permalink / raw)
  To: buildroot

Some qmake based packages need to call the syncqt.pl script before
building to have a properly populated "include" directory inside
the package build tree.
This script is automatically executed by qmake when a source tree
is from a git clone: buildroot purges the .git directory hence the
script never runs.

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
Changelog
v1 -> v2:
* Fixed hash file (suggested by Peter)
v2 -> v3:
* Moved to use FOO_INCLUDE_FIXUP

 docs/manual/adding-packages-qmake.txt | 4 ++++
 package/pkg-qmake.mk                  | 5 +++++
 2 files changed, 9 insertions(+)

diff --git a/docs/manual/adding-packages-qmake.txt b/docs/manual/adding-packages-qmake.txt
index e1621e914e..de508dbea4 100644
--- a/docs/manual/adding-packages-qmake.txt
+++ b/docs/manual/adding-packages-qmake.txt
@@ -79,3 +79,7 @@ also be defined.
 * +LIBFOO_INSTALL_TARGET_OPTS+, to specify additional targets to pass
   to the +make+ command during the target installation step. By default,
   +install+.
+
+* +LIBFOO_INCLUDE_FIXUP+, to run syncqt.pl before qmake. Some packages
+  need this to have a properly populated include directory before
+  running the build.
diff --git a/package/pkg-qmake.mk b/package/pkg-qmake.mk
index 27727119d7..9d2a036ac3 100644
--- a/package/pkg-qmake.mk
+++ b/package/pkg-qmake.mk
@@ -44,6 +44,10 @@ ifneq ($(1),qt5base)
 $(2)_DEPENDENCIES 		+= qt5base
 endif
 
+ifdef $(2)_INCLUDE_FIXUP
+$(2)_DEPENDENCIES 		+= host-perl
+endif
+
 #
 # Configure step. Only define it if not already defined by the package
 # .mk file.
@@ -52,6 +56,7 @@ ifndef $(2)_CONFIGURE_CMDS
 define $(2)_CONFIGURE_CMDS
 	$$(QT5_QT_CONF_FIXUP)
 	cd $$($(2)_BUILDDIR) && \
+	$$(if $$($(2)_INCLUDE_FIXUP), $(HOST_DIR)/bin/syncqt.pl -version $(QT5_VERSION) &&) \
 	$$(TARGET_MAKE_ENV) $$($(2)_CONF_ENV) $$(QT5_QMAKE) $$($(2)_CONF_OPTS)
 endef
 endif
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v3 2/4] package/qt5/qt5coap: new package
  2020-11-23 21:42 [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Angelo Compagnucci
@ 2020-11-23 21:42 ` Angelo Compagnucci
  2020-11-23 21:42 ` [Buildroot] [PATCH v3 3/4] package/qt5/qt5mqtt: " Angelo Compagnucci
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Angelo Compagnucci @ 2020-11-23 21:42 UTC (permalink / raw)
  To: buildroot

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

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
Changelog
v1 -> v2:
* Fixed hash file (suggested by Peter)
v2 -> v3:
* Moved to use FOO_INCLUDE_FIXUP

 DEVELOPERS                       |  1 +
 package/qt5/Config.in            |  1 +
 package/qt5/qt5coap/Config.in    | 11 +++++++++++
 package/qt5/qt5coap/qt5coap.hash |  6 ++++++
 package/qt5/qt5coap/qt5coap.mk   | 14 ++++++++++++++
 5 files changed, 33 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

diff --git a/DEVELOPERS b/DEVELOPERS
index 9ab1e125f4..3f5fa20ebc 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -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/
diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index fc0e68e8b7..9431f4980d 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -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"
diff --git a/package/qt5/qt5coap/Config.in b/package/qt5/qt5coap/Config.in
new file mode 100644
index 0000000000..b5bed342a9
--- /dev/null
+++ b/package/qt5/qt5coap/Config.in
@@ -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
diff --git a/package/qt5/qt5coap/qt5coap.hash b/package/qt5/qt5coap/qt5coap.hash
new file mode 100644
index 0000000000..29d9595ce5
--- /dev/null
+++ b/package/qt5/qt5coap/qt5coap.hash
@@ -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
diff --git a/package/qt5/qt5coap/qt5coap.mk b/package/qt5/qt5coap/qt5coap.mk
new file mode 100644
index 0000000000..c76cff24c1
--- /dev/null
+++ b/package/qt5/qt5coap/qt5coap.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# 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_INCLUDE_FIXUP = YES
+
+$(eval $(qmake-package))
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v3 3/4] package/qt5/qt5mqtt: new package
  2020-11-23 21:42 [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Angelo Compagnucci
  2020-11-23 21:42 ` [Buildroot] [PATCH v3 2/4] package/qt5/qt5coap: new package Angelo Compagnucci
@ 2020-11-23 21:42 ` Angelo Compagnucci
  2020-11-23 21:42 ` [Buildroot] [PATCH v3 4/4] package/qt5/qt5knx: " Angelo Compagnucci
  2020-11-23 22:23 ` [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Peter Seiderer
  3 siblings, 0 replies; 5+ messages in thread
From: Angelo Compagnucci @ 2020-11-23 21:42 UTC (permalink / raw)
  To: buildroot

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

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
Changelog
v1 -> v2:
* Fixed hash file (suggested by Peter)
v2 -> v3:
* Moved to use FOO_INCLUDE_FIXUP

 DEVELOPERS                       |  1 +
 package/qt5/Config.in            |  1 +
 package/qt5/qt5mqtt/Config.in    | 12 ++++++++++++
 package/qt5/qt5mqtt/qt5mqtt.hash |  6 ++++++
 package/qt5/qt5mqtt/qt5mqtt.mk   | 14 ++++++++++++++
 5 files changed, 34 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

diff --git a/DEVELOPERS b/DEVELOPERS
index 3f5fa20ebc..d45e584709 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -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/
diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 9431f4980d..c15d27ba7c 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -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"
diff --git a/package/qt5/qt5mqtt/Config.in b/package/qt5/qt5mqtt/Config.in
new file mode 100644
index 0000000000..509b18089d
--- /dev/null
+++ b/package/qt5/qt5mqtt/Config.in
@@ -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
diff --git a/package/qt5/qt5mqtt/qt5mqtt.hash b/package/qt5/qt5mqtt/qt5mqtt.hash
new file mode 100644
index 0000000000..ddf2aa4fc0
--- /dev/null
+++ b/package/qt5/qt5mqtt/qt5mqtt.hash
@@ -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
diff --git a/package/qt5/qt5mqtt/qt5mqtt.mk b/package/qt5/qt5mqtt/qt5mqtt.mk
new file mode 100644
index 0000000000..1bde2d5401
--- /dev/null
+++ b/package/qt5/qt5mqtt/qt5mqtt.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# 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_INCLUDE_FIXUP = YES
+
+$(eval $(qmake-package))
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v3 4/4] package/qt5/qt5knx: new package
  2020-11-23 21:42 [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Angelo Compagnucci
  2020-11-23 21:42 ` [Buildroot] [PATCH v3 2/4] package/qt5/qt5coap: new package Angelo Compagnucci
  2020-11-23 21:42 ` [Buildroot] [PATCH v3 3/4] package/qt5/qt5mqtt: " Angelo Compagnucci
@ 2020-11-23 21:42 ` Angelo Compagnucci
  2020-11-23 22:23 ` [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Peter Seiderer
  3 siblings, 0 replies; 5+ messages in thread
From: Angelo Compagnucci @ 2020-11-23 21:42 UTC (permalink / raw)
  To: buildroot

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

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
 DEVELOPERS                     |  1 +
 package/qt5/Config.in          |  1 +
 package/qt5/qt5knx/Config.in   | 12 ++++++++++++
 package/qt5/qt5knx/qt5knx.hash |  6 ++++++
 package/qt5/qt5knx/qt5knx.mk   | 14 ++++++++++++++
 5 files changed, 34 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

diff --git a/DEVELOPERS b/DEVELOPERS
index d45e584709..9fadedb4de 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -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/
diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index c15d27ba7c..6714c6271d 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -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"
diff --git a/package/qt5/qt5knx/Config.in b/package/qt5/qt5knx/Config.in
new file mode 100644
index 0000000000..991e93c8cb
--- /dev/null
+++ b/package/qt5/qt5knx/Config.in
@@ -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
diff --git a/package/qt5/qt5knx/qt5knx.hash b/package/qt5/qt5knx/qt5knx.hash
new file mode 100644
index 0000000000..05abe706af
--- /dev/null
+++ b/package/qt5/qt5knx/qt5knx.hash
@@ -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
diff --git a/package/qt5/qt5knx/qt5knx.mk b/package/qt5/qt5knx/qt5knx.mk
new file mode 100644
index 0000000000..46d8bb19f2
--- /dev/null
+++ b/package/qt5/qt5knx/qt5knx.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# 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_INCLUDE_FIXUP = YES
+
+$(eval $(qmake-package))
-- 
2.25.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP
  2020-11-23 21:42 [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Angelo Compagnucci
                   ` (2 preceding siblings ...)
  2020-11-23 21:42 ` [Buildroot] [PATCH v3 4/4] package/qt5/qt5knx: " Angelo Compagnucci
@ 2020-11-23 22:23 ` Peter Seiderer
  3 siblings, 0 replies; 5+ messages in thread
From: Peter Seiderer @ 2020-11-23 22:23 UTC (permalink / raw)
  To: buildroot

Hello Angelo,

On Mon, 23 Nov 2020 22:42:30 +0100, Angelo Compagnucci <angelo@amarulasolutions.com> wrote:

> Some qmake based packages need to call the syncqt.pl script before
> building to have a properly populated "include" directory inside
> the package build tree.
> This script is automatically executed by qmake when a source tree
> is from a git clone: buildroot purges the .git directory hence the
> script never runs.
>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> Changelog
> v1 -> v2:
> * Fixed hash file (suggested by Peter)
> v2 -> v3:
> * Moved to use FOO_INCLUDE_FIXUP
>
>  docs/manual/adding-packages-qmake.txt | 4 ++++
>  package/pkg-qmake.mk                  | 5 +++++
>  2 files changed, 9 insertions(+)
>
> diff --git a/docs/manual/adding-packages-qmake.txt b/docs/manual/adding-packages-qmake.txt
> index e1621e914e..de508dbea4 100644
> --- a/docs/manual/adding-packages-qmake.txt
> +++ b/docs/manual/adding-packages-qmake.txt
> @@ -79,3 +79,7 @@ also be defined.
>  * +LIBFOO_INSTALL_TARGET_OPTS+, to specify additional targets to pass
>    to the +make+ command during the target installation step. By default,
>    +install+.
> +
> +* +LIBFOO_INCLUDE_FIXUP+, to run syncqt.pl before qmake. Some packages
> +  need this to have a properly populated include directory before
> +  running the build.

Nice refactoring of the common code..., minor nitpick, 'INCLUDE_FIXUP' is
not very specific, maybe 'RUN_SYNCQT' is better?

Regards,
Peter


> diff --git a/package/pkg-qmake.mk b/package/pkg-qmake.mk
> index 27727119d7..9d2a036ac3 100644
> --- a/package/pkg-qmake.mk
> +++ b/package/pkg-qmake.mk
> @@ -44,6 +44,10 @@ ifneq ($(1),qt5base)
>  $(2)_DEPENDENCIES 		+= qt5base
>  endif
>
> +ifdef $(2)_INCLUDE_FIXUP
> +$(2)_DEPENDENCIES 		+= host-perl
> +endif
> +
>  #
>  # Configure step. Only define it if not already defined by the package
>  # .mk file.
> @@ -52,6 +56,7 @@ ifndef $(2)_CONFIGURE_CMDS
>  define $(2)_CONFIGURE_CMDS
>  	$$(QT5_QT_CONF_FIXUP)
>  	cd $$($(2)_BUILDDIR) && \
> +	$$(if $$($(2)_INCLUDE_FIXUP), $(HOST_DIR)/bin/syncqt.pl -version $(QT5_VERSION) &&) \
>  	$$(TARGET_MAKE_ENV) $$($(2)_CONF_ENV) $$(QT5_QMAKE) $$($(2)_CONF_OPTS)
>  endef
>  endif

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-11-23 22:23 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-23 21:42 [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Angelo Compagnucci
2020-11-23 21:42 ` [Buildroot] [PATCH v3 2/4] package/qt5/qt5coap: new package Angelo Compagnucci
2020-11-23 21:42 ` [Buildroot] [PATCH v3 3/4] package/qt5/qt5mqtt: " Angelo Compagnucci
2020-11-23 21:42 ` [Buildroot] [PATCH v3 4/4] package/qt5/qt5knx: " Angelo Compagnucci
2020-11-23 22:23 ` [Buildroot] [PATCH v3 1/4] package/pkg-qmake: adding FOO_INCLUDE_FIXUP Peter Seiderer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.