diff options
author | Samuli Piippo <samuli.piippo@qt.io> | 2018-03-02 13:08:39 +0200 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@qt.io> | 2018-03-12 14:12:31 +0000 |
commit | 344c2f97025c6504ec986600498121bb83aaeb8f (patch) | |
tree | 3d7ec602603cb083b7c8e998eddca543ce17e57c /meta-boot2qt/recipes-qt/automotive/qtivi_git.bb | |
parent | d9985542d7617b43ec7180c7ade0c4f64db82b42 (diff) | |
download | meta-boot2qt-344c2f97025c6504ec986600498121bb83aaeb8f.tar.gz |
Split meta-boot2qt layer
Move distro specific recipes to own layer and leave only new recipes
and bbclasses to meta-boot2qt layer. This makes it easier to include
meta-boot2qt to your own distro layer to get access e.g., QDB and
QBSP recipes that might be useful even without boot2qt distro.
Task-number: QTBUG-65871
Change-Id: I6c353774dd1668b00f2d05aa262ad866b90bdef6
Reviewed-by: Timo Aarnipuro <timo.aarnipuro@qt.io>
Diffstat (limited to 'meta-boot2qt/recipes-qt/automotive/qtivi_git.bb')
-rw-r--r-- | meta-boot2qt/recipes-qt/automotive/qtivi_git.bb | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/meta-boot2qt/recipes-qt/automotive/qtivi_git.bb b/meta-boot2qt/recipes-qt/automotive/qtivi_git.bb new file mode 100644 index 0000000..5cbf131 --- /dev/null +++ b/meta-boot2qt/recipes-qt/automotive/qtivi_git.bb | |||
@@ -0,0 +1,110 @@ | |||
1 | ############################################################################ | ||
2 | ## | ||
3 | ## Copyright (C) 2018 The Qt Company Ltd. | ||
4 | ## Contact: https://www.qt.io/licensing/ | ||
5 | ## | ||
6 | ## This file is part of the Boot to Qt meta layer. | ||
7 | ## | ||
8 | ## $QT_BEGIN_LICENSE:GPL$ | ||
9 | ## Commercial License Usage | ||
10 | ## Licensees holding valid commercial Qt licenses may use this file in | ||
11 | ## accordance with the commercial license agreement provided with the | ||
12 | ## Software or, alternatively, in accordance with the terms contained in | ||
13 | ## a written agreement between you and The Qt Company. For licensing terms | ||
14 | ## and conditions see https://www.qt.io/terms-conditions. For further | ||
15 | ## information use the contact form at https://www.qt.io/contact-us. | ||
16 | ## | ||
17 | ## GNU General Public License Usage | ||
18 | ## Alternatively, this file may be used under the terms of the GNU | ||
19 | ## General Public License version 3 or (at your option) any later version | ||
20 | ## approved by the KDE Free Qt Foundation. The licenses are as published by | ||
21 | ## the Free Software Foundation and appearing in the file LICENSE.GPL3 | ||
22 | ## included in the packaging of this file. Please review the following | ||
23 | ## information to ensure the GNU General Public License requirements will | ||
24 | ## be met: https://www.gnu.org/licenses/gpl-3.0.html. | ||
25 | ## | ||
26 | ## $QT_END_LICENSE$ | ||
27 | ## | ||
28 | ############################################################################ | ||
29 | |||
30 | DESCRIPTION = "Qt IVI" | ||
31 | LICENSE = "(GFDL-1.3 & BSD & The-Qt-Company-GPL-Exception-1.0 & (LGPL-3.0 | GPL-2.0+)) | The-Qt-Company-DCLA-2.1" | ||
32 | LIC_FILES_CHKSUM = "file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ | ||
33 | file://LICENSE.GPL2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ | ||
34 | file://LICENSE.GPL3;md5=d32239bcb673463ab874e80d47fae504 \ | ||
35 | file://LICENSE.GPL3-EXCEPT;md5=763d8c535a234d9a3fb682c7ecb6c073 \ | ||
36 | file://LICENSE.LGPL3;md5=e6a600fd5e1d9cbde2d983680233ad02" | ||
37 | |||
38 | DEPENDS = "qtbase qtdeclarative qtmultimedia qtivi-native" | ||
39 | DEPENDS_class-native = "qtbase" | ||
40 | DEPENDS_class-nativesdk = "qtbase" | ||
41 | |||
42 | inherit qt5-module | ||
43 | inherit python3native | ||
44 | require recipes-qt/qt5/qt5-git.inc | ||
45 | |||
46 | QT_MODULE_BRANCH_QFACE = "upstream/develop" | ||
47 | |||
48 | SRC_URI += " \ | ||
49 | ${QT_GIT}/qtivi-qface.git;name=qface;branch=${QT_MODULE_BRANCH_QFACE};protocol=${QT_GIT_PROTOCOL};destsuffix=git/src/3rdparty/qface \ | ||
50 | file://0001-Use-QT_HOST_BINS-get-for-getting-correct-path.patch \ | ||
51 | " | ||
52 | |||
53 | SRCREV_qtivi = "8d482b27c6c0c2b664104fd777ddee92652ab65c" | ||
54 | SRCREV_qface = "9da793d6cbc63d617ad5e2ffd13e9f6d055c88e8" | ||
55 | SRCREV = "${SRCREV_qtivi}" | ||
56 | SRCREV_FORMAT = "qtivi_qface" | ||
57 | |||
58 | PACKAGECONFIG ?= "taglib ivigenerator" | ||
59 | PACKAGECONFIG[taglib] = "QMAKE_EXTRA_ARGS+=-feature-taglib,QMAKE_EXTRA_ARGS+=-no-feature-taglib,taglib" | ||
60 | PACKAGECONFIG[dlt] = "QMAKE_EXTRA_ARGS+=-feature-dlt,QMAKE_EXTRA_ARGS+=-no-feature-dlt,dlt-daemon" | ||
61 | PACKAGECONFIG[geniviextras-only] = "QMAKE_EXTRA_ARGS+=--geniviextras-only" | ||
62 | # For cross-compiling tell qtivi to use the system-ivigenerator, which is installed by the native recipe" | ||
63 | PACKAGECONFIG[ivigenerator] = "QMAKE_EXTRA_ARGS+=-system-ivigenerator" | ||
64 | PACKAGECONFIG[ivigenerator-native] = "QMAKE_EXTRA_ARGS+=-qt-ivigenerator,,python3 python3-virtualenv" | ||
65 | PACKAGECONFIG[host-tools-only] = "QMAKE_EXTRA_ARGS+=-host-tools-only" | ||
66 | PACKAGECONFIG[simulator] = "QMAKE_EXTRA_ARGS+=-feature-simulator,QMAKE_EXTRA_ARGS+=-no-feature-simulator,qtsimulator" | ||
67 | PACKAGECONFIG[simulator-native] = "QMAKE_EXTRA_ARGS+=-feature-simulator QMAKE_EXTRA_ARGS+=--force-ivigenerator-qtsimulator" | ||
68 | |||
69 | PACKAGECONFIG_class-native ??= "host-tools-only ivigenerator-native" | ||
70 | PACKAGECONFIG_class-nativesdk ??= "${PACKAGECONFIG_class-native}" | ||
71 | PACKAGECONFIG_class-nativesdk_mingw32 ??= "host-tools-only" | ||
72 | |||
73 | ALLOW_EMPTY_${PN}-tools = "1" | ||
74 | |||
75 | EXTRA_QMAKEVARS_PRE += "${PACKAGECONFIG_CONFARGS} ${@bb.utils.contains_any('PACKAGECONFIG', 'ivigenerator ivigenerator-native', '', 'QMAKE_EXTRA_ARGS+=-no-ivigenerator', d)}" | ||
76 | |||
77 | set_python_paths() { | ||
78 | # Otherwise pip might cache or reuse something from our home folder | ||
79 | export HOME="${STAGING_DATADIR_NATIVE}" | ||
80 | # This is needed as otherwise the virtualenv tries to use the libs from the host | ||
81 | export LD_LIBRARY_PATH="${STAGING_LIBDIR_NATIVE}" | ||
82 | # Let qtivi use the python3-native binaries | ||
83 | export PYTHON3_PATH="${STAGING_BINDIR_NATIVE}/python3-native" | ||
84 | } | ||
85 | do_compile_prepend() { | ||
86 | set_python_paths | ||
87 | } | ||
88 | do_install_prepend() { | ||
89 | set_python_paths | ||
90 | } | ||
91 | |||
92 | # This needs a modified python3 recipe which copies the binary into a path where this recipe can pick it up | ||
93 | # This is needed to provide a proper executable using the correct interpreter in the SDK. | ||
94 | # See https://bugreports.qt.io/browse/AUTOSUITE-176 | ||
95 | do_install_append_class-nativesdk() { | ||
96 | export IVIGENERATOR_ENABLED="${@bb.utils.contains("PACKAGECONFIG", "ivigenerator-native", "1", "0", d)}" | ||
97 | |||
98 | if [ "${IVIGENERATOR_ENABLED}" = "1" ]; then | ||
99 | cp ${STAGING_BINDIR}/qt5/python3* ${D}/${OE_QMAKE_PATH_BINS}/ivigenerator/qtivi_qface_virtualenv/bin/ | ||
100 | rm -f ${D}/${OE_QMAKE_PATH_BINS}/ivigenerator/qtivi_qface_virtualenv/bin/python | ||
101 | ln -sf python3 ${D}/${OE_QMAKE_PATH_BINS}/ivigenerator/qtivi_qface_virtualenv/bin/python | ||
102 | fi | ||
103 | } | ||
104 | |||
105 | |||
106 | BBCLASSEXTEND += "native nativesdk" | ||
107 | |||
108 | INSANE_SKIP_${PN}_class-native = "already-stripped" | ||
109 | INSANE_SKIP_${PN}_class-nativesdk = "already-stripped" | ||
110 | INSANE_SKIP_${PN}-tools_class-nativesdk = "staticdev" | ||