summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikko Gronoff <mikko.gronoff@qt.io>2017-06-06 13:15:13 +0300
committerMikko Gronoff <mikko.gronoff@qt.io>2017-06-07 08:46:21 +0300
commitdc32862fb82686c30722970619ad1187695e6e60 (patch)
treea97b03b18a4fee394c758a99182285c71be73921
parenta5671981cdb9115605a87905d2fb919a86cea244 (diff)
parent1100037b9becaaa5749602bca9d63693119c4585 (diff)
downloadmeta-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.bbclass2
-rw-r--r--conf/layer.conf3
-rw-r--r--recipes-qt/examples/qt5everywheredemo_1.0.bb2
-rw-r--r--recipes-qt/qt5/qtbase_git.bb3
-rw-r--r--recipes-qt/qt5/qtwayland-native_git.bb1
-rw-r--r--recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch156
-rw-r--r--recipes-qt/qt5/qtwayland_git.bb1
-rw-r--r--recipes-qt/qt5/qtwebengine_git.bb1
-rw-r--r--recipes-qt/qt5/qtwebkit_git.bb2
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 @@
1inherit cmake 1inherit cmake
2inherit qmake5_paths 2inherit qmake5_paths
3 3
4DEPENDS_prepend = "qtbase " 4DEPENDS_prepend = "qtbase qtbase-native "
5 5
6EXTRA_OECMAKE_prepend = " \ 6EXTRA_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
28IMAGE_FEATURES[validitems] += "qtcreator-debug" 28IMAGE_FEATURES[validitems] += "qtcreator-debug"
29 29
30QT_GIT ?= "git://github.com/qtproject" 30QT_GIT ?= "git://github.com/qt"
31QT_LABS_GIT ?= "git://github.com/qt-labs"
31QT_GIT_PROTOCOL ?= "git" 32QT_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"
7DEPENDS = "qtdeclarative qtgraphicaleffects" 7DEPENDS = "qtdeclarative qtgraphicaleffects"
8 8
9SRCREV = "c17fe9e0ec0882ac4c4dc1168095f569acab5d09" 9SRCREV = "c17fe9e0ec0882ac4c4dc1168095f569acab5d09"
10SRC_URI = "${QT_GIT}/qt-labs-qt5-everywhere-demo" 10SRC_URI = "${QT_LABS_GIT}/qt-labs-qt5-everywhere-demo"
11 11
12S = "${WORKDIR}/git/QtDemo" 12S = "${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
195do_install_append() { 195do_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
16SRC_URI += " \ 16SRC_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
20do_configure() { 21do_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 @@
1From de85e1c1ee76be845a21b441d9e4ea12a30d84c7 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Vesa=20J=C3=A4=C3=A4skel=C3=A4inen?= <dachaac@gmail.com>
3Date: Sun, 18 Sep 2016 11:51:59 +0300
4Subject: [PATCH] Fix building of QWaylandIntegration if some Qt5 features are
5 disabled.
6
7QPlatformIntegration's interface methods are disabled based on QT_NO_OPENGL,
8QT_NO_CLIPBOARD, QT_NO_DRAGANDDROP, QT_NO_ACCESSIBILITY and
9QT_NO_SESSIONMANAGER, these has to be taken into account when compiling
10QtWayland.
11---
12 src/client/qwaylandintegration.cpp | 21 ++++++++++++++++++---
13 src/client/qwaylandintegration_p.h | 12 ++++++++++++
14 2 files changed, 30 insertions(+), 3 deletions(-)
15
16diff --git a/src/client/qwaylandintegration.cpp b/src/client/qwaylandintegration.cpp
17index 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 {
109diff --git a/src/client/qwaylandintegration_p.h b/src/client/qwaylandintegration_p.h
110index 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--
1552.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
35SRC_URI += " \ 35SRC_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
39SRCREV = "82e11583928d47576c160d35c9df05c0eec34df8" 40SRCREV = "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
12DEPENDS += "qtbase qtdeclarative icu ruby-native sqlite3 glib-2.0 libxslt" 12DEPENDS += "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: