From e11d78a554a184767383758185a3902e4d6c986d Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Tue, 16 Jun 2015 15:43:26 +0300 Subject: Support BYOS for enterprise only addons When QT_SDK_PATH has been set, use sources for all enterprise addons from the SDK installation path. This allows customers to build enterprise only addos and b2qt addons without access to qt-gerrit. Change-Id: I66ad8a2ff81628333ba7dd6042659c3fa220be8c Reviewed-by: Eirik Aavitsland --- classes/local-sources.bbclass | 81 --------------------- classes/sdk-sources.bbclass | 90 ++++++++++++++++++++++++ recipes-qt/b2qt-addons/b2qt-appcontroller.bb | 8 +-- recipes-qt/b2qt-addons/b2qt-demos.bb | 13 ++-- recipes-qt/b2qt-addons/b2qt-launcher.bb | 6 +- recipes-qt/b2qt-addons/b2qt-utils.bb | 6 +- recipes-qt/qt5-addons/qtcharts_2.0.bb | 7 +- recipes-qt/qt5-addons/qtdatavisualization_1.2.bb | 6 +- recipes-qt/qt5-addons/qtglesstream.bb | 4 +- recipes-qt/qt5-addons/qtquick2drenderer.bb | 7 +- recipes-qt/qt5-addons/qtvirtualkeyboard_1.3.bb | 9 ++- 11 files changed, 126 insertions(+), 111 deletions(-) delete mode 100644 classes/local-sources.bbclass create mode 100644 classes/sdk-sources.bbclass diff --git a/classes/local-sources.bbclass b/classes/local-sources.bbclass deleted file mode 100644 index b7c68fb..0000000 --- a/classes/local-sources.bbclass +++ /dev/null @@ -1,81 +0,0 @@ -############################################################################# -## -## Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). -## -## This file is part of the Qt Enterprise Embedded Scripts of the Qt -## framework. -## -## $QT_BEGIN_LICENSE$ -## Commercial License Usage Only -## Licensees holding valid commercial Qt license agreements with Digia -## with an appropriate addendum covering the Qt Enterprise Embedded Scripts, -## may use this file in accordance with the terms contained in said license -## agreement. -## -## For further information use the contact form at -## http://www.qt.io/contact-us. -## -## -## $QT_END_LICENSE$ -## -############################################################################# - -python do_fetch () { - src_uri = (d.getVar('SRC_URI', True) or "").split() - if len(src_uri) == 0: - return - - sdk_path = d.getVar('QT_SDK_PATH', True) or "" - if len(sdk_path) != 0: - uris = list(src_uri); - for url in uris: - ud = list(bb.fetch2.decodeurl(url)) - if ("local-uri" in ud[5]): - src_uri.remove(url) - - try: - fetcher = bb.fetch2.Fetch(src_uri, d) - fetcher.download() - except bb.fetch2.BBFetchException as e: - raise bb.build.FuncFailed(e) -} - -python do_unpack () { - src_uri = (d.getVar('SRC_URI', True) or "").split() - if len(src_uri) == 0: - return - - rootdir = d.getVar('WORKDIR', True) - - sdk_path = d.getVar('QT_SDK_PATH', True) or "" - if len(sdk_path) != 0: - uris = list(src_uri); - for url in uris: - ud = list(bb.fetch2.decodeurl(url)) - if ("local-uri" in ud[5]): - unpack_local_uri(ud, d) - src_uri.remove(url) - - try: - fetcher = bb.fetch2.Fetch(src_uri, d) - fetcher.unpack(rootdir) - except bb.fetch2.BBFetchException as e: - raise bb.build.FuncFailed(e) -} - -def unpack_local_uri(ud, d): - import subprocess - rootdir = d.getVar('WORKDIR', True) - sdk_path = d.getVar('QT_SDK_PATH', True) - - destdir = os.path.join(rootdir, ud[5].get("destsuffix", "git")) - srcdir = os.path.join(sdk_path, ud[5].get("local-uri")) - cmd = "cp -vrf %s %s" % (srcdir, destdir) - - if os.path.exists(destdir): - bb.utils.prunedir(destdir) - - ret = subprocess.call(cmd, shell=True) - - if ret != 0: - raise bb.fetch.UnpackError("Unpack command %s failed with return value %s" % (cmd, ret), ud) diff --git a/classes/sdk-sources.bbclass b/classes/sdk-sources.bbclass new file mode 100644 index 0000000..1c3629b --- /dev/null +++ b/classes/sdk-sources.bbclass @@ -0,0 +1,90 @@ +############################################################################# +## +## Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). +## +## This file is part of the Qt Enterprise Embedded Scripts of the Qt +## framework. +## +## $QT_BEGIN_LICENSE$ +## Commercial License Usage Only +## Licensees holding valid commercial Qt license agreements with Digia +## with an appropriate addendum covering the Qt Enterprise Embedded Scripts, +## may use this file in accordance with the terms contained in said license +## agreement. +## +## For further information use the contact form at +## http://www.qt.io/contact-us. +## +## +## $QT_END_LICENSE$ +## +############################################################################# + +python do_fetch () { + src_uri = (d.getVar('SRC_URI', True) or "").split() + if len(src_uri) == 0: + return + + sdk_path = d.getVar('QT_SDK_PATH', True) or "" + if len(sdk_path) != 0: + uris = list(src_uri); + for url in uris: + ud = list(bb.fetch2.decodeurl(url)) + if ("sdk-uri" in ud[5]): + src_uri.remove(url) + + + if len(src_uri) == 0: + return + + try: + fetcher = bb.fetch2.Fetch(src_uri, d) + fetcher.download() + except bb.fetch2.BBFetchException as e: + raise bb.build.FuncFailed(e) +} + +python do_unpack () { + src_uri = (d.getVar('SRC_URI', True) or "").split() + if len(src_uri) == 0: + return + + rootdir = d.getVar('WORKDIR', True) + + sdk_path = d.getVar('QT_SDK_PATH', True) or "" + if len(sdk_path) != 0: + uris = list(src_uri); + for url in uris: + ud = list(bb.fetch2.decodeurl(url)) + if ("sdk-uri" in ud[5]): + unpack_local_uri(ud, d) + src_uri.remove(url) + + if len(src_uri) == 0: + return + + try: + fetcher = bb.fetch2.Fetch(src_uri, d) + fetcher.unpack(rootdir) + except bb.fetch2.BBFetchException as e: + raise bb.build.FuncFailed(e) +} + +def unpack_local_uri(ud, d): + import subprocess + rootdir = d.getVar('WORKDIR', True) + sdk_path = d.getVar('QT_SDK_PATH', True) + + destdir = os.path.join(rootdir, ud[5].get("destsuffix", "git")) + srcdir = os.path.join(sdk_path, ud[5].get("sdk-uri")) + cmd = "cp -vrf %s %s" % (srcdir, destdir) + + bb.note("Unpacking SDK sources %s to %s" % (srcdir, destdir)) + + if os.path.exists(destdir): + bb.utils.prunedir(destdir) + + ret = subprocess.call(cmd, shell=True) + + if ret != 0: + raise bb.fetch.UnpackError("Unpack command %s failed with return value %s" % (cmd, ret), ud) diff --git a/recipes-qt/b2qt-addons/b2qt-appcontroller.bb b/recipes-qt/b2qt-addons/b2qt-appcontroller.bb index 26d631c..1c0ab2f 100644 --- a/recipes-qt/b2qt-addons/b2qt-appcontroller.bb +++ b/recipes-qt/b2qt-addons/b2qt-appcontroller.bb @@ -24,15 +24,15 @@ DESCRIPTION = "Boot to Qt Appcontroller" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://main.cpp;md5=1fcdf6b49fbbf2bc9c831893cca1b279;beginline=1;endline=17" -inherit qmake5 +inherit qmake5 sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/b2qt-appcontroller;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/b2qt-appcontroller;branch=${BRANCH};protocol=ssh;sdk-uri=5.5/Boot2Qt/sources/b2qt-appcontroller/ \ file://appcontroller.conf \ " -SRCREV = "cac8839211fc5bb53592d3d04c344834c4c054df" -QT_BRANCH = "stable" +SRCREV = "45d549fe274cd8f16578b2ff9a34af40fd9b98a9" +BRANCH = "dev" S = "${WORKDIR}/git" diff --git a/recipes-qt/b2qt-addons/b2qt-demos.bb b/recipes-qt/b2qt-addons/b2qt-demos.bb index 6a05ca3..c262b65 100644 --- a/recipes-qt/b2qt-addons/b2qt-demos.bb +++ b/recipes-qt/b2qt-addons/b2qt-demos.bb @@ -24,13 +24,14 @@ DESCRIPTION = "Boot to Qt Demos" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://sensors/Accelbubble.qml;md5=1bf19846314f7b0fa81dc4db92338713;beginline=1;endline=40" -inherit qmake5 +inherit qmake5 sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/b2qt-demos;branch=${BRANCH};protocol=ssh;name=demos \ + git://qt-gerrit.ci.local/QtRD-15810/b2qt-demos;branch=${BRANCH};protocol=ssh;name=demos;sdk-uri=5.5/Boot2Qt/sources/b2qt-demos \ git://code.qt.io/qt-labs/qt5-everywhere-demo.git;protocol=git;name=everywhere;destsuffix=qt5-everywhere-demo \ git://code.qt.io/qt/qtcanvas3d.git;branch=${QT_BRANCH};protocol=git;name=qtcanvas3d;destsuffix=qtcanvas3d \ " + BRANCH = "dev" QT_BRANCH = "5.5.0" SRCREV_demos = "dcc6470466f8237cc46ac1ac39e865ec2568d702" @@ -49,8 +50,12 @@ do_install_append() { rm -rf ${D}/data/user/sensorexplorer cp -r ${S}/* ${D}/data/user/qt/ - cp -r ${S}/../images ${D}/data/ - cp -r ${S}/../videos ${D}/data/ + if [ -d ${S}/../images ]; then + cp -r ${S}/../images ${D}/data/ + fi + if [ -d ${S}/../videos ]; then + cp -r ${S}/../videos ${D}/data/ + fi cp -r ${WORKDIR}/qt5-everywhere-demo/QtDemo/qml ${D}/data/user/qt/qt5-everywhere/ diff --git a/recipes-qt/b2qt-addons/b2qt-launcher.bb b/recipes-qt/b2qt-addons/b2qt-launcher.bb index 7e89289..c9a1743 100644 --- a/recipes-qt/b2qt-addons/b2qt-launcher.bb +++ b/recipes-qt/b2qt-addons/b2qt-launcher.bb @@ -24,15 +24,15 @@ DESCRIPTION = "Boot to Qt Demo Launcher" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://src/main.cpp;md5=1fcdf6b49fbbf2bc9c831893cca1b279;beginline=1;endline=17" -inherit qmake5 +inherit qmake5 sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/b2qt-launcher;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/b2qt-launcher;branch=${BRANCH};protocol=ssh;sdk-uri=5.5/Boot2Qt/sources/b2qt-launcher \ file://b2qt-startup.sh \ " SRCREV = "e824e206f28eb20bcb6f1d9064990f5e927261f4" -QT_BRANCH = "dev" +BRANCH = "dev" S = "${WORKDIR}/git" diff --git a/recipes-qt/b2qt-addons/b2qt-utils.bb b/recipes-qt/b2qt-addons/b2qt-utils.bb index e694b5a..b9e20b9 100644 --- a/recipes-qt/b2qt-addons/b2qt-utils.bb +++ b/recipes-qt/b2qt-addons/b2qt-utils.bb @@ -24,14 +24,14 @@ DESCRIPTION = "Boot to Qt Utils module" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://src/qconnectivity/main.cpp;md5=0b2892e6aca7d0750bbd7fe6b6b1c033;beginline=1;endline=17" -inherit qt5-module +inherit qt5-module sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/b2qt-utils;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/b2qt-utils;branch=${BRANCH};protocol=ssh;sdk-uri=5.5/Boot2Qt/sources/b2qt-utils \ " SRCREV = "7b14c47d6adbc6ab3cdfc9d10bef25029215a85f" -QT_BRANCH = "dev" +BRANCH = "dev" S = "${WORKDIR}/git" diff --git a/recipes-qt/qt5-addons/qtcharts_2.0.bb b/recipes-qt/qt5-addons/qtcharts_2.0.bb index 83d6905..805c8fc 100644 --- a/recipes-qt/qt5-addons/qtcharts_2.0.bb +++ b/recipes-qt/qt5-addons/qtcharts_2.0.bb @@ -24,14 +24,15 @@ DESCRIPTION = "Qt Charts" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://src/charts/qchart.cpp;md5=735b3be820c0a733e328a4d2e1e430de;beginline=1;endline=17" -inherit qt5-module qtquickcompiler +inherit qt5-module qtquickcompiler sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/charts.git;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/charts.git;branch=${BRANCH};protocol=ssh;sdk-uri=EnterpriseAddOns/Charts/2.0/Src \ " +# v2.0.0 SRCREV = "f818972d3617493c74d694184aa877f606e1a5a0" -QT_BRANCH = "master" +BRANCH = "master" S = "${WORKDIR}/git" diff --git a/recipes-qt/qt5-addons/qtdatavisualization_1.2.bb b/recipes-qt/qt5-addons/qtdatavisualization_1.2.bb index 76df896..d7edbb5 100644 --- a/recipes-qt/qt5-addons/qtdatavisualization_1.2.bb +++ b/recipes-qt/qt5-addons/qtdatavisualization_1.2.bb @@ -24,15 +24,15 @@ DESCRIPTION = "Qt Data Visualization" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://src/datavisualization/global/datavisualizationglobal_p.h;md5=b6f0a53c44e6ba165a7d2dbd58832be5;beginline=1;endline=17" -inherit qt5-module +inherit qt5-module sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/qtdatavis3d.git;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/qtdatavis3d.git;branch=${BRANCH};protocol=ssh;sdk-uri=EnterpriseAddOns/QtDataVisualization/1.2/Src \ " # v1.2.0 SRCREV = "62f90e25eec23cfac83985993f355feeac5b9f2c" -QT_BRANCH = "master" +BRANCH = "master" S = "${WORKDIR}/git" diff --git a/recipes-qt/qt5-addons/qtglesstream.bb b/recipes-qt/qt5-addons/qtglesstream.bb index 475b869..c1922af 100644 --- a/recipes-qt/qt5-addons/qtglesstream.bb +++ b/recipes-qt/qt5-addons/qtglesstream.bb @@ -27,12 +27,12 @@ LIC_FILES_CHKSUM = "file://qtglesstream.pro;md5=e95d9351d26ed899188e02d44133cae0 inherit qt5-module SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/qtglesstream.git;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/qtglesstream.git;branch=${BRANCH};protocol=ssh \ " PV = "1.0.0" SRCREV = "137d476b0e39eaaa6f35296b6bd962175e6ea5d6" -QT_BRANCH = "dev" +BRANCH = "dev" S = "${WORKDIR}/git" diff --git a/recipes-qt/qt5-addons/qtquick2drenderer.bb b/recipes-qt/qt5-addons/qtquick2drenderer.bb index 59fd2fe..24aff5c 100644 --- a/recipes-qt/qt5-addons/qtquick2drenderer.bb +++ b/recipes-qt/qt5-addons/qtquick2drenderer.bb @@ -24,14 +24,15 @@ DESCRIPTION = "Qt Quick 2D Rendender" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://src/plugins/scenegraph/softwarecontext/softwarelayer.cpp;md5=d90663d6d3096fe0989549d52fec6554;beginline=1;endline=17" -inherit qt5-module +inherit qt5-module sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/scenegraph-raster.git;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/scenegraph-raster.git;branch=${BRANCH};protocol=ssh;sdk-uri=EnterpriseAddOns/QtQuick2DRenderer/1.1/Src \ " +# v1.1 SRCREV = "97c310f3a18a5aaebf8c102ceaba1f6a093faf6b" -QT_BRANCH = "master" +BRANCH = "master" S = "${WORKDIR}/git" diff --git a/recipes-qt/qt5-addons/qtvirtualkeyboard_1.3.bb b/recipes-qt/qt5-addons/qtvirtualkeyboard_1.3.bb index e66373d..17dd871 100644 --- a/recipes-qt/qt5-addons/qtvirtualkeyboard_1.3.bb +++ b/recipes-qt/qt5-addons/qtvirtualkeyboard_1.3.bb @@ -24,16 +24,15 @@ DESCRIPTION = "Qt Virtual Keyboard" LICENSE = "QtEnterprise" LIC_FILES_CHKSUM = "file://src/virtualkeyboard/plugin.cpp;md5=9e7c3707428a49f2fd857aa1538823b6;beginline=1;endline=17" -inherit qt5-module qtquickcompiler - -FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" +inherit qt5-module qtquickcompiler sdk-sources SRC_URI = " \ - git://qt-gerrit.ci.local/QtRD-15810/qtvirtualkeyboard.git;branch=${QT_BRANCH};protocol=ssh \ + git://qt-gerrit.ci.local/QtRD-15810/qtvirtualkeyboard.git;branch=${BRANCH};protocol=ssh;sdk-uri=EnterpriseAddOns/QtVirtualKeyboard/1.3/Src \ " +# v1.3.0 SRCREV = "ad517b66fc4aadb2807951f182552a1b161d9c95" -QT_BRANCH = "master" +BRANCH = "master" S = "${WORKDIR}/git" -- cgit v1.2.3-54-g00ecf