* [Buildroot] [PATCH v4] qt5tools: new package
@ 2016-02-05 14:30 Peter Seiderer
2016-02-19 14:32 ` Antoine Tenart
0 siblings, 1 reply; 3+ messages in thread
From: Peter Seiderer @ 2016-02-05 14:30 UTC (permalink / raw)
To: buildroot
- host programs: lconvert, lrelease and lupdate
- target programs: pixeltool, qtdiag, qtpath and qtplugininfo
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
Changes v3 -> v4:
- fix trailing whitespace
Changes v2 -> v3:
- rebased (update to qt-5.5.1)
- drop unneeded select libpng line (Thomas Petazzoni)
- drop unneeded line break (Thomas Petazzoni)
- pixeltool needs BR2_PACKAGE_QT5BASE_GUI and
BR2_PACKAGE_QT5BASE_WIDGETS too
- use foreach instead of repetitive open coding (Thomas Petazzoni)
- install host tools to host directory instead of staging
directory (Thomas Petazzoni)
- add more comment about linguist tools dependency on
qt5declarative (Thomas Petazzoni)
Changes v1 -> v2:
- add target programs, reword commit message
---
package/qt5/Config.in | 1 +
package/qt5/qt5tools/Config.in | 42 ++++++++++++++++++++++++
package/qt5/qt5tools/qt5tools.hash | 2 ++
package/qt5/qt5tools/qt5tools.mk | 67 ++++++++++++++++++++++++++++++++++++++
4 files changed, 112 insertions(+)
create mode 100644 package/qt5/qt5tools/Config.in
create mode 100644 package/qt5/qt5tools/qt5tools.hash
create mode 100644 package/qt5/qt5tools/qt5tools.mk
diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index ad6226e..1c42102 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -42,6 +42,7 @@ source "package/qt5/qt5quickcontrols/Config.in"
source "package/qt5/qt5sensors/Config.in"
source "package/qt5/qt5serialport/Config.in"
source "package/qt5/qt5svg/Config.in"
+source "package/qt5/qt5tools/Config.in"
source "package/qt5/qt5webchannel/Config.in"
source "package/qt5/qt5websockets/Config.in"
source "package/qt5/qt5x11extras/Config.in"
diff --git a/package/qt5/qt5tools/Config.in b/package/qt5/qt5tools/Config.in
new file mode 100644
index 0000000..9e939f2
--- /dev/null
+++ b/package/qt5/qt5tools/Config.in
@@ -0,0 +1,42 @@
+config BR2_PACKAGE_QT5TOOLS
+ bool "qt5tools"
+ help
+ Qt is a cross-platform application and UI framework for
+ developers using C++.
+
+ This package corresponds to the qt5tools module.
+
+ http://qt.io
+
+if BR2_PACKAGE_QT5TOOLS
+
+config BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS
+ bool "Linguist host tools (lconvert, lrelease, lupdate)"
+ help
+ This option enables the linguist host tools
+ lconvert, lrelease and lupdate.
+
+config BR2_PACKAGE_QT5TOOLS_PIXELTOOL
+ bool "pixeltool"
+ select BR2_PACKAGE_QT5BASE_GUI
+ select BR2_PACKAGE_QT5BASE_WIDGETS
+ select BR2_PACKAGE_QT5BASE_PNG # saving png images
+ help
+ Compile and install the pixeltool program.
+
+config BR2_PACKAGE_QT5TOOLS_QTDIAG
+ bool "qtdiag"
+ help
+ Compile and install the qtdiag program.
+
+config BR2_PACKAGE_QT5TOOLS_QTPATHS
+ bool "qtpaths"
+ help
+ Compile and install the qtpaths program.
+
+config BR2_PACKAGE_QT5TOOLS_QTPLUGININFO
+ bool "qtplugininfo"
+ help
+ Compile and install the qtplugininfo program.
+
+endif
diff --git a/package/qt5/qt5tools/qt5tools.hash b/package/qt5/qt5tools/qt5tools.hash
new file mode 100644
index 0000000..f54c94a
--- /dev/null
+++ b/package/qt5/qt5tools/qt5tools.hash
@@ -0,0 +1,2 @@
+# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qttools-opensource-src-5.5.1.tar.xz.mirrorlist
+sha256 4361f6ce49717058160908297841a18b94645cec593d1b48fb126c9d06c87bfd qttools-opensource-src-5.5.1.tar.xz
diff --git a/package/qt5/qt5tools/qt5tools.mk b/package/qt5/qt5tools/qt5tools.mk
new file mode 100644
index 0000000..fe1c524
--- /dev/null
+++ b/package/qt5/qt5tools/qt5tools.mk
@@ -0,0 +1,67 @@
+################################################################################
+#
+# qt5tools
+#
+################################################################################
+
+QT5TOOLS_VERSION = $(QT5_VERSION)
+QT5TOOLS_SITE = $(QT5_SITE)
+QT5TOOLS_SOURCE = qttools-opensource-src-$(QT5BASE_VERSION).tar.xz
+
+QT5TOOLS_DEPENDENCIES = qt5base
+QT5TOOLS_INSTALL_STAGING = YES
+
+# linguist tools compile conditionally on qtHaveModule(qmldevtools-private),
+# but the condition is used only used to decide if lupdate will support
+# parsing qml files (via setting QT_NO_QML define), no linking against
+# target qt5 will happen
+ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y)
+QT5TOOLS_DEPENDENCIES += qt5declarative
+endif
+
+ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
+QT5TOOLS_LICENSE = LGPLv2.1 with exception or LGPLv3
+QT5TOOLS_LICENSE_FILES = LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3
+else
+QT5TOOLS_LICENSE = Commercial license
+QT5TOOLS_REDISTRIBUTE = NO
+endif
+
+QT5TOOLS_BUILD_DIRS_$(BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS) += \
+ linguist/lconvert linguist/lrelease linguist/lupdate
+QT5TOOLS_INSTALL_STAGING_$(BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS) += \
+ lconvert lrelease lupdate
+
+QT5TOOLS_BUILD_DIRS_$(BR2_PACKAGE_QT5TOOLS_PIXELTOOL) += pixeltool
+QT5TOOLS_INSTALL_TARGET_$(BR2_PACKAGE_QT5TOOLS_PIXELTOOL) += pixeltool
+
+QT5TOOLS_BUILD_DIRS_$(BR2_PACKAGE_QT5TOOLS_QTDIAG) += qtdiag
+QT5TOOLS_INSTALL_TARGET_$(BR2_PACKAGE_QT5TOOLS_QTDIAG) += qtdiag
+
+QT5TOOLS_BUILD_DIRS_$(BR2_PACKAGE_QT5TOOLS_QTPATHS) += qtpaths
+QT5TOOLS_INSTALL_TARGET_$(BR2_PACKAGE_QT5TOOLS_QTPATHS) += qtpaths
+
+QT5TOOLS_BUILD_DIRS_$(BR2_PACKAGE_QT5TOOLS_QTPLUGININFO) += qtplugininfo
+QT5TOOLS_INSTALL_TARGET_$(BR2_PACKAGE_QT5TOOLS_QTPLUGININFO) += qtplugininfo
+
+define QT5TOOLS_CONFIGURE_CMDS
+ (cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/qmake)
+endef
+
+define QT5TOOLS_BUILD_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) sub-src-qmake_all
+ $(foreach p,$(QT5TOOLS_BUILD_DIRS_y), \
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src/$(p)$(sep))
+endef
+
+define QT5TOOLS_INSTALL_STAGING_CMDS
+ $(foreach p,$(QT5TOOLS_INSTALL_STAGING_y), \
+ $(INSTALL) -D -m0755 $(@D)/bin/$(p) $(HOST_DIR)/usr/bin/$(p)$(sep))
+endef
+
+define QT5TOOLS_INSTALL_TARGET_CMDS
+ $(foreach p,$(QT5TOOLS_INSTALL_TARGET_y), \
+ $(INSTALL) -D -m0755 $(@D)/bin/$(p) $(TARGET_DIR)/usr/bin/$(p)$(sep))
+endef
+
+$(eval $(generic-package))
--
2.1.4
^ permalink raw reply related [flat|nested] 3+ messages in thread* [Buildroot] [PATCH v4] qt5tools: new package
2016-02-05 14:30 [Buildroot] [PATCH v4] qt5tools: new package Peter Seiderer
@ 2016-02-19 14:32 ` Antoine Tenart
2016-02-20 22:06 ` Peter Seiderer
0 siblings, 1 reply; 3+ messages in thread
From: Antoine Tenart @ 2016-02-19 14:32 UTC (permalink / raw)
To: buildroot
Hello Peter,
I tested your patch to build the QT5 Linguistic Tools, and it worked
well :)
However I have one comment:
On Fri, Feb 05, 2016 at 03:30:15PM +0100, Peter Seiderer wrote:
> +
> +define QT5TOOLS_INSTALL_STAGING_CMDS
I think you need to call the 'install' target here, to install the QT5
Tools cmake modules in the host directory:
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
> + $(foreach p,$(QT5TOOLS_INSTALL_STAGING_y), \
> + $(INSTALL) -D -m0755 $(@D)/bin/$(p) $(HOST_DIR)/usr/bin/$(p)$(sep))
> +endef
Thanks,
Antoine
--
Antoine T?nart, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20160219/08621b59/attachment.asc>
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH v4] qt5tools: new package
2016-02-19 14:32 ` Antoine Tenart
@ 2016-02-20 22:06 ` Peter Seiderer
0 siblings, 0 replies; 3+ messages in thread
From: Peter Seiderer @ 2016-02-20 22:06 UTC (permalink / raw)
To: buildroot
Hello Antoine Tenart,
On Fri, 19 Feb 2016 15:32:20 +0100, Antoine Tenart <antoine.tenart@free-electrons.com> wrote:
> Hello Peter,
>
> I tested your patch to build the QT5 Linguistic Tools, and it worked
> well :)
>
Thanks for testing...
> However I have one comment:
>
> On Fri, Feb 05, 2016 at 03:30:15PM +0100, Peter Seiderer wrote:
> > +
> > +define QT5TOOLS_INSTALL_STAGING_CMDS
>
> I think you need to call the 'install' target here, to install the QT5
> Tools cmake modules in the host directory:
>
> $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
>
Thanks for the hint, will send an updated patch soon, mind to give the cmake
part a little test?
Regards,
Peter
> > + $(foreach p,$(QT5TOOLS_INSTALL_STAGING_y), \
> > + $(INSTALL) -D -m0755 $(@D)/bin/$(p) $(HOST_DIR)/usr/bin/$(p)$(sep))
> > +endef
>
> Thanks,
>
> Antoine
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-02-20 22:06 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-05 14:30 [Buildroot] [PATCH v4] qt5tools: new package Peter Seiderer
2016-02-19 14:32 ` Antoine Tenart
2016-02-20 22:06 ` Peter Seiderer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox