diff options
| author | Mikko Gronoff <mikko.gronoff@qt.io> | 2017-06-06 13:15:13 +0300 |
|---|---|---|
| committer | Mikko Gronoff <mikko.gronoff@qt.io> | 2017-06-07 08:46:21 +0300 |
| commit | dc32862fb82686c30722970619ad1187695e6e60 (patch) | |
| tree | a97b03b18a4fee394c758a99182285c71be73921 | |
| parent | a5671981cdb9115605a87905d2fb919a86cea244 (diff) | |
| parent | 1100037b9becaaa5749602bca9d63693119c4585 (diff) | |
| download | meta-qt5-dc32862fb82686c30722970619ad1187695e6e60.tar.gz | |
Merge remote-tracking branch 'upstream/krogoth' into 5.6
* upstream/krogoth:
qtwebkit: depends on gperf-native
cmake_qt5.bbclass: add qtbase-native to DEPENDS
Update Qt5's git repositories to match new locations
qtwebengine: Add gperf-native to DEPENDS
qtwayland: Fix building of QWaylandIntegration if some Qt5 features are disabled.
qt5: update submodules
qtbase: avoid qmake errors due to missing oe-device-extra.pri
qtdeclarative: add upstream patch to fix QtQml crash with GCC 6
Conflicts:
recipes-qt/qt5/qtbase_git.bb
Change-Id: Ic773b1eaa0d5c84316352ae41d7ec5cd2d5c8048
| -rw-r--r-- | classes/cmake_qt5.bbclass | 2 | ||||
| -rw-r--r-- | conf/layer.conf | 3 | ||||
| -rw-r--r-- | recipes-qt/examples/qt5everywheredemo_1.0.bb | 2 | ||||
| -rw-r--r-- | recipes-qt/qt5/qtbase_git.bb | 3 | ||||
| -rw-r--r-- | recipes-qt/qt5/qtwayland-native_git.bb | 1 | ||||
| -rw-r--r-- | recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch | 156 | ||||
| -rw-r--r-- | recipes-qt/qt5/qtwayland_git.bb | 1 | ||||
| -rw-r--r-- | recipes-qt/qt5/qtwebengine_git.bb | 1 | ||||
| -rw-r--r-- | recipes-qt/qt5/qtwebkit_git.bb | 2 |
9 files changed, 167 insertions, 4 deletions
diff --git a/classes/cmake_qt5.bbclass b/classes/cmake_qt5.bbclass index 3180fd6d..5d605a68 100644 --- a/classes/cmake_qt5.bbclass +++ b/classes/cmake_qt5.bbclass | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | inherit cmake | 1 | inherit cmake |
| 2 | inherit qmake5_paths | 2 | inherit qmake5_paths |
| 3 | 3 | ||
| 4 | DEPENDS_prepend = "qtbase " | 4 | DEPENDS_prepend = "qtbase qtbase-native " |
| 5 | 5 | ||
| 6 | EXTRA_OECMAKE_prepend = " \ | 6 | EXTRA_OECMAKE_prepend = " \ |
| 7 | -DOE_QMAKE_PATH_PREFIX=${OE_QMAKE_PATH_PREFIX} \ | 7 | -DOE_QMAKE_PATH_PREFIX=${OE_QMAKE_PATH_PREFIX} \ |
diff --git a/conf/layer.conf b/conf/layer.conf index b7207e63..b2a4fbc3 100644 --- a/conf/layer.conf +++ b/conf/layer.conf | |||
| @@ -27,5 +27,6 @@ LICENSE_PATH += "${LAYERDIR}/licenses" | |||
| 27 | 27 | ||
| 28 | IMAGE_FEATURES[validitems] += "qtcreator-debug" | 28 | IMAGE_FEATURES[validitems] += "qtcreator-debug" |
| 29 | 29 | ||
| 30 | QT_GIT ?= "git://github.com/qtproject" | 30 | QT_GIT ?= "git://github.com/qt" |
| 31 | QT_LABS_GIT ?= "git://github.com/qt-labs" | ||
| 31 | QT_GIT_PROTOCOL ?= "git" | 32 | QT_GIT_PROTOCOL ?= "git" |
diff --git a/recipes-qt/examples/qt5everywheredemo_1.0.bb b/recipes-qt/examples/qt5everywheredemo_1.0.bb index ab2bbd4a..7735d902 100644 --- a/recipes-qt/examples/qt5everywheredemo_1.0.bb +++ b/recipes-qt/examples/qt5everywheredemo_1.0.bb | |||
| @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://main.cpp;md5=1187cb795a0f96bce64e63dd1a67dc2b" | |||
| 7 | DEPENDS = "qtdeclarative qtgraphicaleffects" | 7 | DEPENDS = "qtdeclarative qtgraphicaleffects" |
| 8 | 8 | ||
| 9 | SRCREV = "c17fe9e0ec0882ac4c4dc1168095f569acab5d09" | 9 | SRCREV = "c17fe9e0ec0882ac4c4dc1168095f569acab5d09" |
| 10 | SRC_URI = "${QT_GIT}/qt-labs-qt5-everywhere-demo" | 10 | SRC_URI = "${QT_LABS_GIT}/qt-labs-qt5-everywhere-demo" |
| 11 | 11 | ||
| 12 | S = "${WORKDIR}/git/QtDemo" | 12 | S = "${WORKDIR}/git/QtDemo" |
| 13 | 13 | ||
diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 3f9cf1ea..114acdf3 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb | |||
| @@ -193,6 +193,9 @@ do_configure() { | |||
| 193 | } | 193 | } |
| 194 | 194 | ||
| 195 | do_install_append() { | 195 | do_install_append() { |
| 196 | # Avoid qmake error "Cannot read [...]/usr/lib/qt5/mkspecs/oe-device-extra.pri: No such file or directory" | ||
| 197 | touch ${D}/${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs/oe-device-extra.pri | ||
| 198 | |||
| 196 | ### Fix up the binaries to the right location | 199 | ### Fix up the binaries to the right location |
| 197 | ### TODO: FIX | 200 | ### TODO: FIX |
| 198 | # install fonts manually if they are missing | 201 | # install fonts manually if they are missing |
diff --git a/recipes-qt/qt5/qtwayland-native_git.bb b/recipes-qt/qt5/qtwayland-native_git.bb index 2b541088..ab2eaed7 100644 --- a/recipes-qt/qt5/qtwayland-native_git.bb +++ b/recipes-qt/qt5/qtwayland-native_git.bb | |||
| @@ -15,6 +15,7 @@ DEPENDS = "qtbase-native wayland-native" | |||
| 15 | 15 | ||
| 16 | SRC_URI += " \ | 16 | SRC_URI += " \ |
| 17 | file://0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch \ | 17 | file://0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch \ |
| 18 | file://0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch \ | ||
| 18 | " | 19 | " |
| 19 | 20 | ||
| 20 | do_configure() { | 21 | do_configure() { |
diff --git a/recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch b/recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch new file mode 100644 index 00000000..d173e673 --- /dev/null +++ b/recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch | |||
| @@ -0,0 +1,156 @@ | |||
| 1 | From de85e1c1ee76be845a21b441d9e4ea12a30d84c7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: =?UTF-8?q?Vesa=20J=C3=A4=C3=A4skel=C3=A4inen?= <dachaac@gmail.com> | ||
| 3 | Date: Sun, 18 Sep 2016 11:51:59 +0300 | ||
| 4 | Subject: [PATCH] Fix building of QWaylandIntegration if some Qt5 features are | ||
| 5 | disabled. | ||
| 6 | |||
| 7 | QPlatformIntegration's interface methods are disabled based on QT_NO_OPENGL, | ||
| 8 | QT_NO_CLIPBOARD, QT_NO_DRAGANDDROP, QT_NO_ACCESSIBILITY and | ||
| 9 | QT_NO_SESSIONMANAGER, these has to be taken into account when compiling | ||
| 10 | QtWayland. | ||
| 11 | --- | ||
| 12 | src/client/qwaylandintegration.cpp | 21 ++++++++++++++++++--- | ||
| 13 | src/client/qwaylandintegration_p.h | 12 ++++++++++++ | ||
| 14 | 2 files changed, 30 insertions(+), 3 deletions(-) | ||
| 15 | |||
| 16 | diff --git a/src/client/qwaylandintegration.cpp b/src/client/qwaylandintegration.cpp | ||
| 17 | index 39fff53..481e3d6 100644 | ||
| 18 | --- a/src/client/qwaylandintegration.cpp | ||
| 19 | +++ b/src/client/qwaylandintegration.cpp | ||
| 20 | @@ -39,7 +39,9 @@ | ||
| 21 | #include "qwaylandinputcontext_p.h" | ||
| 22 | #include "qwaylandshmbackingstore_p.h" | ||
| 23 | #include "qwaylandnativeinterface_p.h" | ||
| 24 | +#ifndef QT_NO_CLIPBOARD | ||
| 25 | #include "qwaylandclipboard_p.h" | ||
| 26 | +#endif | ||
| 27 | #include "qwaylanddnd_p.h" | ||
| 28 | #include "qwaylandwindowmanagerintegration_p.h" | ||
| 29 | #include "qwaylandscreen_p.h" | ||
| 30 | @@ -57,7 +59,9 @@ | ||
| 31 | #include <QSocketNotifier> | ||
| 32 | |||
| 33 | #include <qpa/qplatforminputcontextfactory_p.h> | ||
| 34 | +#ifndef QT_NO_ACCESSIBILITY | ||
| 35 | #include <qpa/qplatformaccessibility.h> | ||
| 36 | +#endif | ||
| 37 | #include <qpa/qplatforminputcontext.h> | ||
| 38 | |||
| 39 | #include "qwaylandhardwareintegration_p.h" | ||
| 40 | @@ -117,8 +121,6 @@ QWaylandIntegration::QWaylandIntegration() | ||
| 41 | , mNativeInterface(new QWaylandNativeInterface(this)) | ||
| 42 | #ifndef QT_NO_ACCESSIBILITY | ||
| 43 | , mAccessibility(new QPlatformAccessibility()) | ||
| 44 | -#else | ||
| 45 | - , mAccessibility(0) | ||
| 46 | #endif | ||
| 47 | , mClientBufferIntegrationInitialized(false) | ||
| 48 | , mServerBufferIntegrationInitialized(false) | ||
| 49 | @@ -126,9 +128,12 @@ QWaylandIntegration::QWaylandIntegration() | ||
| 50 | { | ||
| 51 | initializeInputDeviceIntegration(); | ||
| 52 | mDisplay = new QWaylandDisplay(this); | ||
| 53 | +#ifndef QT_NO_CLIPBOARD | ||
| 54 | mClipboard = new QWaylandClipboard(mDisplay); | ||
| 55 | +#endif | ||
| 56 | +#ifndef QT_NO_DRAGANDDROP | ||
| 57 | mDrag = new QWaylandDrag(mDisplay); | ||
| 58 | - | ||
| 59 | +#endif | ||
| 60 | QString icStr = QPlatformInputContextFactory::requested(); | ||
| 61 | icStr.isNull() ? mInputContext.reset(new QWaylandInputContext(mDisplay)) | ||
| 62 | : mInputContext.reset(QPlatformInputContextFactory::create(icStr)); | ||
| 63 | @@ -136,8 +141,12 @@ QWaylandIntegration::QWaylandIntegration() | ||
| 64 | |||
| 65 | QWaylandIntegration::~QWaylandIntegration() | ||
| 66 | { | ||
| 67 | +#ifndef QT_NO_DRAGANDDROP | ||
| 68 | delete mDrag; | ||
| 69 | +#endif | ||
| 70 | +#ifndef QT_NO_CLIPBOARD | ||
| 71 | delete mClipboard; | ||
| 72 | +#endif | ||
| 73 | #ifndef QT_NO_ACCESSIBILITY | ||
| 74 | delete mAccessibility; | ||
| 75 | #endif | ||
| 76 | @@ -213,15 +222,19 @@ QPlatformFontDatabase *QWaylandIntegration::fontDatabase() const | ||
| 77 | return mFontDb; | ||
| 78 | } | ||
| 79 | |||
| 80 | +#ifndef QT_NO_CLIPBOARD | ||
| 81 | QPlatformClipboard *QWaylandIntegration::clipboard() const | ||
| 82 | { | ||
| 83 | return mClipboard; | ||
| 84 | } | ||
| 85 | +#endif | ||
| 86 | |||
| 87 | +#ifndef QT_NO_DRAGANDDROP | ||
| 88 | QPlatformDrag *QWaylandIntegration::drag() const | ||
| 89 | { | ||
| 90 | return mDrag; | ||
| 91 | } | ||
| 92 | +#endif | ||
| 93 | |||
| 94 | QPlatformInputContext *QWaylandIntegration::inputContext() const | ||
| 95 | { | ||
| 96 | @@ -243,10 +256,12 @@ QVariant QWaylandIntegration::styleHint(StyleHint hint) const | ||
| 97 | return QPlatformIntegration::styleHint(hint); | ||
| 98 | } | ||
| 99 | |||
| 100 | +#ifndef QT_NO_ACCESSIBILITY | ||
| 101 | QPlatformAccessibility *QWaylandIntegration::accessibility() const | ||
| 102 | { | ||
| 103 | return mAccessibility; | ||
| 104 | } | ||
| 105 | +#endif | ||
| 106 | |||
| 107 | QPlatformServices *QWaylandIntegration::services() const | ||
| 108 | { | ||
| 109 | diff --git a/src/client/qwaylandintegration_p.h b/src/client/qwaylandintegration_p.h | ||
| 110 | index 987d805..b50ad95 100644 | ||
| 111 | --- a/src/client/qwaylandintegration_p.h | ||
| 112 | +++ b/src/client/qwaylandintegration_p.h | ||
| 113 | @@ -80,15 +80,21 @@ public: | ||
| 114 | |||
| 115 | QPlatformNativeInterface *nativeInterface() const Q_DECL_OVERRIDE; | ||
| 116 | |||
| 117 | +#ifndef QT_NO_CLIPBOARD | ||
| 118 | QPlatformClipboard *clipboard() const Q_DECL_OVERRIDE; | ||
| 119 | +#endif | ||
| 120 | |||
| 121 | +#ifndef QT_NO_DRAGANDDROP | ||
| 122 | QPlatformDrag *drag() const Q_DECL_OVERRIDE; | ||
| 123 | +#endif | ||
| 124 | |||
| 125 | QPlatformInputContext *inputContext() const Q_DECL_OVERRIDE; | ||
| 126 | |||
| 127 | QVariant styleHint(StyleHint hint) const Q_DECL_OVERRIDE; | ||
| 128 | |||
| 129 | +#ifndef QT_NO_ACCESSIBILITY | ||
| 130 | QPlatformAccessibility *accessibility() const Q_DECL_OVERRIDE; | ||
| 131 | +#endif | ||
| 132 | |||
| 133 | QPlatformServices *services() const Q_DECL_OVERRIDE; | ||
| 134 | |||
| 135 | @@ -117,12 +123,18 @@ private: | ||
| 136 | void initializeInputDeviceIntegration(); | ||
| 137 | |||
| 138 | QPlatformFontDatabase *mFontDb; | ||
| 139 | +#ifndef QT_NO_CLIPBOARD | ||
| 140 | QPlatformClipboard *mClipboard; | ||
| 141 | +#endif | ||
| 142 | +#ifndef QT_NO_DRAGANDDROP | ||
| 143 | QPlatformDrag *mDrag; | ||
| 144 | +#endif | ||
| 145 | QWaylandDisplay *mDisplay; | ||
| 146 | QPlatformNativeInterface *mNativeInterface; | ||
| 147 | QScopedPointer<QPlatformInputContext> mInputContext; | ||
| 148 | +#ifndef QT_NO_ACCESSIBILITY | ||
| 149 | QPlatformAccessibility *mAccessibility; | ||
| 150 | +#endif | ||
| 151 | bool mClientBufferIntegrationInitialized; | ||
| 152 | bool mServerBufferIntegrationInitialized; | ||
| 153 | bool mShellIntegrationInitialized; | ||
| 154 | -- | ||
| 155 | 2.7.4 | ||
| 156 | |||
diff --git a/recipes-qt/qt5/qtwayland_git.bb b/recipes-qt/qt5/qtwayland_git.bb index d349cc38..6c15b69f 100644 --- a/recipes-qt/qt5/qtwayland_git.bb +++ b/recipes-qt/qt5/qtwayland_git.bb | |||
| @@ -34,6 +34,7 @@ FILES_${PN}-plugins-dbg += " \ | |||
| 34 | 34 | ||
| 35 | SRC_URI += " \ | 35 | SRC_URI += " \ |
| 36 | file://0001-examples-wayland-include-server-buffer-only-when-bui.patch \ | 36 | file://0001-examples-wayland-include-server-buffer-only-when-bui.patch \ |
| 37 | file://0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch \ | ||
| 37 | " | 38 | " |
| 38 | 39 | ||
| 39 | SRCREV = "82e11583928d47576c160d35c9df05c0eec34df8" | 40 | SRCREV = "82e11583928d47576c160d35c9df05c0eec34df8" |
diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb index 532ae75e..1e903ae2 100644 --- a/recipes-qt/qt5/qtwebengine_git.bb +++ b/recipes-qt/qt5/qtwebengine_git.bb | |||
| @@ -16,6 +16,7 @@ DEPENDS += " \ | |||
| 16 | qtlocation \ | 16 | qtlocation \ |
| 17 | libdrm fontconfig pixman openssl pango cairo icu pciutils \ | 17 | libdrm fontconfig pixman openssl pango cairo icu pciutils \ |
| 18 | libcap \ | 18 | libcap \ |
| 19 | gperf-native \ | ||
| 19 | " | 20 | " |
| 20 | 21 | ||
| 21 | # when qtbase is built with xcb enabled (default with x11 in DISTRO_FEATURES), | 22 | # when qtbase is built with xcb enabled (default with x11 in DISTRO_FEATURES), |
diff --git a/recipes-qt/qt5/qtwebkit_git.bb b/recipes-qt/qt5/qtwebkit_git.bb index d679994a..3d2dbdf8 100644 --- a/recipes-qt/qt5/qtwebkit_git.bb +++ b/recipes-qt/qt5/qtwebkit_git.bb | |||
| @@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = " \ | |||
| 9 | file://Source/JavaScriptCore/parser/Parser.h;endline=21;md5=bd69f72183a7af673863f057576e21ee \ | 9 | file://Source/JavaScriptCore/parser/Parser.h;endline=21;md5=bd69f72183a7af673863f057576e21ee \ |
| 10 | " | 10 | " |
| 11 | 11 | ||
| 12 | DEPENDS += "qtbase qtdeclarative icu ruby-native sqlite3 glib-2.0 libxslt" | 12 | DEPENDS += "qtbase qtdeclarative icu ruby-native sqlite3 glib-2.0 libxslt gperf-native" |
| 13 | 13 | ||
| 14 | # qemuarm build fails with: | 14 | # qemuarm build fails with: |
| 15 | # | {standard input}: Assembler messages: | 15 | # | {standard input}: Assembler messages: |
