From patchwork Sat Feb 20 22:08:03 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Seiderer X-Patchwork-Id: 585673 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ozlabs.org (Postfix) with ESMTP id C676E140B98 for ; Sun, 21 Feb 2016 09:08:15 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id E7D2433085; Sat, 20 Feb 2016 22:08:14 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ndXG3qXnazT8; Sat, 20 Feb 2016 22:08:10 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id C7E2C32AD7; Sat, 20 Feb 2016 22:08:10 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id D62131C108E for ; Sat, 20 Feb 2016 22:08:08 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id CFB5E91FCF for ; Sat, 20 Feb 2016 22:08:08 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id WwUAidzJKuvj for ; Sat, 20 Feb 2016 22:08:08 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) by whitealder.osuosl.org (Postfix) with ESMTPS id 879B38C4DC for ; Sat, 20 Feb 2016 22:08:07 +0000 (UTC) Received: from linux.local ([188.99.117.62]) by mail.gmx.com (mrgmx002) with ESMTPSA (Nemesis) id 0LrePN-1ZoCUr1Amj-013RAi; Sat, 20 Feb 2016 23:08:04 +0100 From: Peter Seiderer To: buildroot@busybox.net Date: Sat, 20 Feb 2016 23:08:03 +0100 Message-Id: <1456006083-15740-1-git-send-email-ps.report@gmx.net> X-Mailer: git-send-email 2.1.4 X-Provags-ID: V03:K0:NA9R+rOvivboeorogziQRitpkzQw2l7MXlwp/6s8GweDMa5rKXN aFlaxhTVSJrWIdkvevtK55W8Al2C9ID7Zc5xn5kWAfhsYbr/814+9E2CA/BtiRFh5PRfHns /FmbEHuIjno4freeHF0bBPe4Nrj/GZLrCkxTr4JstMCmDHQTPzwmXLdkIC0e1TBEXfjwd9P cO1AXNSeIr21vdi+u5hlg== X-UI-Out-Filterresults: notjunk:1; V01:K0:CkYidC8ola4=:qnCGCiX+DsJE6MiztQaUc/ Ml2eElb8BuERIU5qViSV+n5rbNIE9Wns/ja1JZyPzNjMNzdP0O7lBoiuATRnqonGwcFWuYxx9 9HS2LkDtJl2anyC3OLm7Jz4/iV6iZmVSaiHSq6sIm0BfZRCH53nlsrJcYpi9j+epwnwCOdQ25 vdMldgklqX/UkFuFf8bzqj5wcWRMbOXdyChfKFjYgKD7qPFNWlOauLaeUK3IbzkqqyT7FIVL4 2ao1YrpC3Ho/qsJaBMKZpMuJJm2F82NAjZfi4ofjVbEbXIjUb97Sx3vjN+RAbikRptsgTg6Bl Yg0C3wbY4zAAgeybsCQB71EJondWzV/9t4WagDv05ltMRja8fDHdUE8S2akm7Qk73c3DJl3b5 m0qmXMdEjC2/9eYZr+BfHKhw5sDF4IqP1kmtiNmTU4wnxw+ywDA59AkMwyASMQVwbtjRKVgo1 mMjGKAhK6SxgjOiQScegf/qAFzjdkSEFLPFqeUtHIXGIbc5qB7Z8YBHMob8rHX9QuyMjwc0dX rI4WTeGm5/rLHjJ7JDVFAthzoWtCEP59FfCtmIaL+yhijo69cWAbZCoRNUTE1zT5qIILtSsNC 3hZGoZyluIHaa10gM5VP/QMWPJTnN3GO94PozmoFMGzkAOcruxPbB+nP5yuN75UIwkwyqLzvA gLLwNdetX2laJ4e6bzHkW/3qaekSjQGiwTkSKinRyYTkMKjzif4L0EB51VLZ3eAxB9VKKVo/H uFtNoMdaSHNV9CXER7Yhnw1hqEjQUxMhJiCf5i8WiXLRoWv/K8VXRMVAqdU= Subject: [Buildroot] [PATCH v5] qt5tools: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" - host programs: lconvert, lrelease and lupdate - target programs: pixeltool, qtdiag, qtpath and qtplugininfo Signed-off-by: Peter Seiderer --- Changes v4 -> v5: - use install target for linguist staging install, copy cmake module files too (suggested by Antoine Tenart) 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 | 66 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 111 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..f3d78ce --- /dev/null +++ b/package/qt5/qt5tools/qt5tools.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# 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 +ifeq ($(BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS),y) +# use install target to copy cmake module files +define QT5TOOLS_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src/linguist install +endef +endif + +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_TARGET_CMDS + $(foreach p,$(QT5TOOLS_INSTALL_TARGET_y), \ + $(INSTALL) -D -m0755 $(@D)/bin/$(p) $(TARGET_DIR)/usr/bin/$(p)$(sep)) +endef + +$(eval $(generic-package))