diff mbox series

[v3] package/qt5scxml: new package

Message ID 1512719549-30117-1-git-send-email-b.bilas@grinn-global.com
State Superseded
Headers show
Series [v3] package/qt5scxml: new package | expand

Commit Message

Bartosz Bilas Dec. 8, 2017, 7:52 a.m. UTC
Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
---

Changes v2 -> v3:
	* Calculate correct hashes for licence files
	* Remove unnecessary hash for 5.9.1v
	* Add dependencies on qt5 latest version
Changes v1 -> v2:
	* Add hash for 5.9.1v
	* Fix license files in makefile

 package/qt5/Config.in              |  1 +
 package/qt5/qt5scxml/Config.in     | 15 +++++++++++
 package/qt5/qt5scxml/qt5scxml.hash |  8 ++++++
 package/qt5/qt5scxml/qt5scxml.mk   | 54 ++++++++++++++++++++++++++++++++++++++
 4 files changed, 78 insertions(+)
 create mode 100644 package/qt5/qt5scxml/Config.in
 create mode 100644 package/qt5/qt5scxml/qt5scxml.hash
 create mode 100644 package/qt5/qt5scxml/qt5scxml.mk

Comments

Baruch Siach Dec. 8, 2017, 8:14 a.m. UTC | #1
Hi Bartosz,

On Fri, Dec 08, 2017 at 08:52:29AM +0100, Bartosz Bilas wrote:
> Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>

[...]

> diff --git a/package/qt5/qt5scxml/Config.in b/package/qt5/qt5scxml/Config.in
> new file mode 100644
> index 0000000..8a582ca
> --- /dev/null
> +++ b/package/qt5/qt5scxml/Config.in
> @@ -0,0 +1,15 @@
> +config BR2_PACKAGE_QT5SCXML
> +	bool "qt5scxml"
> +	depends on BR2_PACKAGE_QT5_VERSION_LATEST

Since qt5scxml depends on BR2_PACKAGE_QT5_VERSION_LATEST ...

> +	select BR2_PACKAGE_QT5BASE
> +	help
> +	  Qt is a cross-platform application and UI framework for
> +	  developers using C++.
> +
> +	  The Qt SCXML module provides functionality
> +	  to create state machines from SCXML files.
> +
> +	  https://doc.qt.io/qt-5/qtscxml-index.html

[...]

> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> +QT5SCXML_LICENSE = GPL-2.0+ or LGPL-3.0, GPL-3.0 with exception(tools), GFDL-1.3 (docs)
> +QT5SCXML_LICENSE_FILES = LICENSE.GPL3-EXCEPT LICENSE.LGPL3 LICENSE.FDL
> +else

... this is dead code.

> +QT5SCXML_LICENSE = GPL-3.0 or LGPL-2.1 with exception or LGPL-3.0, GFDL-1.3 (docs)
> +QT5SCXML_LICENSE_FILES = LICENSE.LGPL3 LICENSE.FDL
> +endif
Bartosz Bilas Dec. 8, 2017, 9:05 a.m. UTC | #2
Hi Baruch,


On 08.12.2017 o 09:14, Baruch Siach wrote:
> Hi Bartosz,
> On Fri, Dec 08, 2017 at 08:52:29AM +0100, Bartosz Bilas wrote:
>> Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
> [...]
>> diff --git a/package/qt5/qt5scxml/Config.in b/package/qt5/qt5scxml/Config.in
>> new file mode 100644
>> index 0000000..8a582ca
>> --- /dev/null
>> +++ b/package/qt5/qt5scxml/Config.in
>> @@ -0,0 +1,15 @@
>> +config BR2_PACKAGE_QT5SCXML
>> +	bool "qt5scxml"
>> +	depends on BR2_PACKAGE_QT5_VERSION_LATEST
> Since qt5scxml depends on BR2_PACKAGE_QT5_VERSION_LATEST ...
>> +	select BR2_PACKAGE_QT5BASE
>> +	help
>> +	  Qt is a cross-platform application and UI framework for
>> +	  developers using C++.
>> +
>> +	  The Qt SCXML module provides functionality
>> +	  to create state machines from SCXML files.
>> +
>> +	  https://doc.qt.io/qt-5/qtscxml-index.html
> [...]
>> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
>> +QT5SCXML_LICENSE = GPL-2.0+ or LGPL-3.0, GPL-3.0 with exception(tools), GFDL-1.3 (docs)
>> +QT5SCXML_LICENSE_FILES = LICENSE.GPL3-EXCEPT LICENSE.LGPL3 LICENSE.FDL
>> +else
> ... this is dead code.
>> +QT5SCXML_LICENSE = GPL-3.0 or LGPL-2.1 with exception or LGPL-3.0, GFDL-1.3 (docs)
>> +QT5SCXML_LICENSE_FILES = LICENSE.LGPL3 LICENSE.FDL
>> +endif
You are absolutely right, I have forgotten about it. I will send a new 
patch.
diff mbox series

Patch

diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 69f36e2..8eb00ca 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -72,6 +72,7 @@  source "package/qt5/qt5multimedia/Config.in"
 source "package/qt5/qt5quickcontrols/Config.in"
 source "package/qt5/qt5quickcontrols2/Config.in"
 source "package/qt5/qt5script/Config.in"
+source "package/qt5/qt5scxml/Config.in"
 source "package/qt5/qt5sensors/Config.in"
 source "package/qt5/qt5serialbus/Config.in"
 source "package/qt5/qt5serialport/Config.in"
diff --git a/package/qt5/qt5scxml/Config.in b/package/qt5/qt5scxml/Config.in
new file mode 100644
index 0000000..8a582ca
--- /dev/null
+++ b/package/qt5/qt5scxml/Config.in
@@ -0,0 +1,15 @@ 
+config BR2_PACKAGE_QT5SCXML
+	bool "qt5scxml"
+	depends on BR2_PACKAGE_QT5_VERSION_LATEST
+	select BR2_PACKAGE_QT5BASE
+	help
+	  Qt is a cross-platform application and UI framework for
+	  developers using C++.
+
+	  The Qt SCXML module provides functionality
+	  to create state machines from SCXML files.
+
+	  https://doc.qt.io/qt-5/qtscxml-index.html
+
+comment "qt5scxml needs at least qt-5.9"
+	depends on !BR2_PACKAGE_QT5_VERSION_LATEST
diff --git a/package/qt5/qt5scxml/qt5scxml.hash b/package/qt5/qt5scxml/qt5scxml.hash
new file mode 100644
index 0000000..b0d8615
--- /dev/null
+++ b/package/qt5/qt5scxml/qt5scxml.hash
@@ -0,0 +1,8 @@ 
+# Hash from: https://download.qt.io/official_releases/qt/5.9/5.9.3/submodules/qtscxml-opensource-src-5.9.3.tar.xz.mirrorlist
+sha256 d8f51fa8eddd09fef29d8fad6e570e9ca9403469543ab10cb5cfad738786a81b qtscxml-opensource-src-5.9.3.tar.xz
+
+# Hashes for license files:
+
+sha256 0dbe024961f6ab5c52689cbd036c977975d0d0f6a67ff97762d96cb819dd5652 LICENSE.GPL3-EXCEPT
+sha256 ed8742a95cb9db653a09b050e27ccff5e67ba69c14aa2c3137f2a4e1892f6c0d LICENSE.FDL
+sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 LICENSE.LGPL3
diff --git a/package/qt5/qt5scxml/qt5scxml.mk b/package/qt5/qt5scxml/qt5scxml.mk
new file mode 100644
index 0000000..039dc67
--- /dev/null
+++ b/package/qt5/qt5scxml/qt5scxml.mk
@@ -0,0 +1,54 @@ 
+################################################################################
+#
+# qt5scxml
+#
+################################################################################
+
+QT5SCXML_VERSION = $(QT5_VERSION)
+QT5SCXML_SITE = $(QT5_SITE)
+QT5SCXML_SOURCE = qtscxml-opensource-src-$(QT5SCXML_VERSION).tar.xz
+QT5SCXML_DEPENDENCIES = qt5base
+QT5SCXML_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
+QT5SCXML_LICENSE = GPL-2.0+ or LGPL-3.0, GPL-3.0 with exception(tools), GFDL-1.3 (docs)
+QT5SCXML_LICENSE_FILES = LICENSE.GPL3-EXCEPT LICENSE.LGPL3 LICENSE.FDL
+else
+QT5SCXML_LICENSE = GPL-3.0 or LGPL-2.1 with exception or LGPL-3.0, GFDL-1.3 (docs)
+QT5SCXML_LICENSE_FILES = LICENSE.LGPL3 LICENSE.FDL
+endif
+ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y)
+QT5SCXML_LICENSE := $(QT5SCXML_LICENSE), BSD-3-Clause (examples)
+endif
+
+define QT5SCXML_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/bin/qmake)
+endef
+
+define QT5SCXML_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define QT5SCXML_INSTALL_STAGING_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
+	$(QT5_LA_PRL_FILES_FIXUP)
+endef
+
+ifeq ($(BR2_STATIC_LIBS),)
+define QT5SCXML_INSTALL_TARGET_LIBS
+	cp -dpf $(STAGING_DIR)/usr/lib/libQt5Scxml*.so.* $(TARGET_DIR)/usr/lib
+endef
+endif
+
+ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y)
+define QT5SCXML_INSTALL_TARGET_EXAMPLES
+	cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/scxml $(TARGET_DIR)/usr/lib/qt/examples/
+endef
+endif
+
+define QT5SCXML_INSTALL_TARGET_CMDS
+	$(QT5SCXML_INSTALL_TARGET_LIBS)
+	$(QT5SCXML_INSTALL_TARGET_EXAMPLES)
+endef
+
+$(eval $(generic-package))