diff options
author | Samuli Piippo <samuli.piippo@theqtcompany.com> | 2016-03-01 18:25:10 +0200 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@theqtcompany.com> | 2016-03-02 11:48:42 +0000 |
commit | 1dc408e27ed53f0767ac35e29734c61955a04b95 (patch) | |
tree | 099bc636484add970fe4d4e0f20f82c1d0425c74 | |
parent | 2ac3539c55143184352e7a530f213b1a507f7f4b (diff) | |
download | meta-boot2qt-1dc408e27ed53f0767ac35e29734c61955a04b95.tar.gz |
qtquickcompiler: add support for BYOS builds
Qt Quick Compiler sources codes are not released for customers, so they
cannot build it for themselves. Instead copy qtquickcompiler binary from
the SDK where we have both linux and mingw binaries available.
Change-Id: I697885365d98df394164a15e2517c7c473ac91e5
Reviewed-by: Teemu Holappa <teemu.holappa@theqtcompany.com>
-rw-r--r-- | classes/qtquickcompiler.bbclass | 25 | ||||
-rw-r--r-- | recipes-qt/qt5-addons/qtquickcompiler-sdk.bb | 58 |
2 files changed, 74 insertions, 9 deletions
diff --git a/classes/qtquickcompiler.bbclass b/classes/qtquickcompiler.bbclass index 16fb6fe..b6710be 100644 --- a/classes/qtquickcompiler.bbclass +++ b/classes/qtquickcompiler.bbclass | |||
@@ -20,16 +20,23 @@ | |||
20 | ############################################################################## | 20 | ############################################################################## |
21 | 21 | ||
22 | python __anonymous() { | 22 | python __anonymous() { |
23 | provider = "qtquickcompiler" | ||
24 | |||
23 | sdk_path = d.getVar('QT_SDK_PATH', True) or "" | 25 | sdk_path = d.getVar('QT_SDK_PATH', True) or "" |
24 | if len(sdk_path) != 0: | 26 | if len(sdk_path) != 0: |
25 | bb.note("TODO: QtQuickCompiler not yet available for external builds") | 27 | qtquickcompiler_path = d.getVar('B2QTBASE', True) + "/recipes-qt/qt5-addons/qtquickcompiler-sdk" |
26 | else: | 28 | if not os.path.isdir(qtquickcompiler_path): |
27 | pn = d.getVar("PN", True) | 29 | bb.note("QtQuickCompiler not available") |
28 | if "toolchain-host" in pn: | 30 | return |
29 | d.appendVar('RDEPENDS_' + pn, " nativesdk-qtquickcompiler-tools") | ||
30 | if "toolchain-target" in pn: | ||
31 | d.appendVar('RDEPENDS_' + pn, " qtquickcompiler-dev") | ||
32 | else: | 31 | else: |
33 | d.appendVar('DEPENDS', " qtquickcompiler qtquickcompiler-native") | 32 | provider = "qtquickcompiler-sdk" |
34 | d.appendVar('EXTRA_QMAKEVARS_PRE', " CONFIG+=qtquickcompiler CONFIG+=no_qtquickcompiler_depend") | 33 | |
34 | pn = d.getVar("PN", True) | ||
35 | if "toolchain-host" in pn: | ||
36 | d.appendVar('RDEPENDS_' + pn, " nativesdk-%s-tools" % provider) | ||
37 | if "toolchain-target" in pn: | ||
38 | d.appendVar('RDEPENDS_' + pn, " %s-dev" % provider) | ||
39 | else: | ||
40 | d.appendVar('DEPENDS', " %s %s-native" % (provider, provider)) | ||
41 | d.appendVar('EXTRA_QMAKEVARS_PRE', " CONFIG+=qtquickcompiler CONFIG+=no_qtquickcompiler_depend") | ||
35 | } | 42 | } |
diff --git a/recipes-qt/qt5-addons/qtquickcompiler-sdk.bb b/recipes-qt/qt5-addons/qtquickcompiler-sdk.bb new file mode 100644 index 0000000..04a0b3a --- /dev/null +++ b/recipes-qt/qt5-addons/qtquickcompiler-sdk.bb | |||
@@ -0,0 +1,58 @@ | |||
1 | ############################################################################## | ||
2 | ## | ||
3 | ## Copyright (C) 2016 The Qt Company Ltd. | ||
4 | ## Contact: http://www.qt.io/licensing/ | ||
5 | ## | ||
6 | ## This file is part of the Boot to Qt meta layer. | ||
7 | ## | ||
8 | ## $QT_BEGIN_LICENSE:COMM$ | ||
9 | ## | ||
10 | ## Commercial License Usage | ||
11 | ## Licensees holding valid commercial Qt licenses may use this file in | ||
12 | ## accordance with the commercial license agreement provided with the | ||
13 | ## Software or, alternatively, in accordance with the terms contained in | ||
14 | ## a written agreement between you and The Qt Company. For licensing terms | ||
15 | ## and conditions see http://www.qt.io/terms-conditions. For further | ||
16 | ## information use the contact form at http://www.qt.io/contact-us. | ||
17 | ## | ||
18 | ## $QT_END_LICENSE$ | ||
19 | ## | ||
20 | ############################################################################## | ||
21 | |||
22 | DESCRIPTION = "Qt Quick Compiler using prebuilt binaries from Qt SDK" | ||
23 | LICENSE = "QtEnterprise" | ||
24 | LIC_FILES_CHKSUM = "file://${QT_LICENCE};md5=7bc9c54e450006250a60e96604c186c9" | ||
25 | |||
26 | inherit allarch qmake5_paths | ||
27 | |||
28 | DEPENDS = "qtbase" | ||
29 | |||
30 | S = "${WORKDIR}" | ||
31 | |||
32 | QT_VERSION = "5.6" | ||
33 | |||
34 | NATIVESDK_BINARY = "qtquickcompiler" | ||
35 | NATIVESDK_BINARY_mingw32 = "qtquickcompiler.exe" | ||
36 | |||
37 | do_install() { | ||
38 | install -d ${D}${OE_QMAKE_PATH_ARCHDATA}/mkspecs/features | ||
39 | install -m 0755 ${THISDIR}/qtquickcompiler-sdk/mkspecs/features/qtquickcompiler.prf ${D}${OE_QMAKE_PATH_ARCHDATA}/mkspecs/features | ||
40 | install -d ${D}${OE_QMAKE_PATH_ARCHDATA}/cmake/Qt5QuickCompiler | ||
41 | install -m 0644 ${THISDIR}/qtquickcompiler-sdk/lib/cmake/Qt5QuickCompiler/Qt5QuickCompilerConfig.cmake ${D}${OE_QMAKE_PATH_ARCHDATA}/cmake/Qt5QuickCompiler | ||
42 | |||
43 | if [ "${PN}" = "qtquickcompiler-sdk-native" ]; then | ||
44 | install -d ${D}${OE_QMAKE_PATH_BINS} | ||
45 | install -m 0755 ${THISDIR}/qtquickcompiler-sdk/bin/qtquickcompiler ${D}${OE_QMAKE_PATH_BINS} | ||
46 | elif [ "${PN}" = "nativesdk-qtquickcompiler-sdk" ]; then | ||
47 | install -d ${D}${OE_QMAKE_PATH_BINS} | ||
48 | install -m 0755 ${THISDIR}/qtquickcompiler-sdk/bin/${NATIVESDK_BINARY} ${D}${OE_QMAKE_PATH_BINS} | ||
49 | fi | ||
50 | } | ||
51 | |||
52 | INHIBIT_PACKAGE_STRIP = "1" | ||
53 | ALLOW_EMPTY_${PN} = "1" | ||
54 | PACKAGES =+ "${PN}-tools" | ||
55 | FILES_${PN}-tools = "${OE_QMAKE_PATH_BINS}" | ||
56 | FILES_${PN}-dev = "${OE_QMAKE_PATH_ARCHDATA}" | ||
57 | |||
58 | BBCLASSEXTEND = "native nativesdk" | ||