aboutsummaryrefslogtreecommitdiffstats
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)
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 @@
inherit cmake
inherit qmake5_paths
-DEPENDS_prepend = "qtbase "
+DEPENDS_prepend = "qtbase qtbase-native "
EXTRA_OECMAKE_prepend = " \
-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"
IMAGE_FEATURES[validitems] += "qtcreator-debug"
-QT_GIT ?= "git://github.com/qtproject"
+QT_GIT ?= "git://github.com/qt"
+QT_LABS_GIT ?= "git://github.com/qt-labs"
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"
DEPENDS = "qtdeclarative qtgraphicaleffects"
SRCREV = "c17fe9e0ec0882ac4c4dc1168095f569acab5d09"
-SRC_URI = "${QT_GIT}/qt-labs-qt5-everywhere-demo"
+SRC_URI = "${QT_LABS_GIT}/qt-labs-qt5-everywhere-demo"
S = "${WORKDIR}/git/QtDemo"
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() {
}
do_install_append() {
+ # Avoid qmake error "Cannot read [...]/usr/lib/qt5/mkspecs/oe-device-extra.pri: No such file or directory"
+ touch ${D}/${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs/oe-device-extra.pri
+
### Fix up the binaries to the right location
### TODO: FIX
# 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"
SRC_URI += " \
file://0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch \
+ file://0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch \
"
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 @@
+From de85e1c1ee76be845a21b441d9e4ea12a30d84c7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Vesa=20J=C3=A4=C3=A4skel=C3=A4inen?= <dachaac@gmail.com>
+Date: Sun, 18 Sep 2016 11:51:59 +0300
+Subject: [PATCH] Fix building of QWaylandIntegration if some Qt5 features are
+ disabled.
+
+QPlatformIntegration's interface methods are disabled based on QT_NO_OPENGL,
+QT_NO_CLIPBOARD, QT_NO_DRAGANDDROP, QT_NO_ACCESSIBILITY and
+QT_NO_SESSIONMANAGER, these has to be taken into account when compiling
+QtWayland.
+---
+ src/client/qwaylandintegration.cpp | 21 ++++++++++++++++++---
+ src/client/qwaylandintegration_p.h | 12 ++++++++++++
+ 2 files changed, 30 insertions(+), 3 deletions(-)
+
+diff --git a/src/client/qwaylandintegration.cpp b/src/client/qwaylandintegration.cpp
+index 39fff53..481e3d6 100644
+--- a/src/client/qwaylandintegration.cpp
++++ b/src/client/qwaylandintegration.cpp
+@@ -39,7 +39,9 @@
+ #include "qwaylandinputcontext_p.h"
+ #include "qwaylandshmbackingstore_p.h"
+ #include "qwaylandnativeinterface_p.h"
++#ifndef QT_NO_CLIPBOARD
+ #include "qwaylandclipboard_p.h"
++#endif
+ #include "qwaylanddnd_p.h"
+ #include "qwaylandwindowmanagerintegration_p.h"
+ #include "qwaylandscreen_p.h"
+@@ -57,7 +59,9 @@
+ #include <QSocketNotifier>
+
+ #include <qpa/qplatforminputcontextfactory_p.h>
++#ifndef QT_NO_ACCESSIBILITY
+ #include <qpa/qplatformaccessibility.h>
++#endif
+ #include <qpa/qplatforminputcontext.h>
+
+ #include "qwaylandhardwareintegration_p.h"
+@@ -117,8 +121,6 @@ QWaylandIntegration::QWaylandIntegration()
+ , mNativeInterface(new QWaylandNativeInterface(this))
+ #ifndef QT_NO_ACCESSIBILITY
+ , mAccessibility(new QPlatformAccessibility())
+-#else
+- , mAccessibility(0)
+ #endif
+ , mClientBufferIntegrationInitialized(false)
+ , mServerBufferIntegrationInitialized(false)
+@@ -126,9 +128,12 @@ QWaylandIntegration::QWaylandIntegration()
+ {
+ initializeInputDeviceIntegration();
+ mDisplay = new QWaylandDisplay(this);
++#ifndef QT_NO_CLIPBOARD
+ mClipboard = new QWaylandClipboard(mDisplay);
++#endif
++#ifndef QT_NO_DRAGANDDROP
+ mDrag = new QWaylandDrag(mDisplay);
+-
++#endif
+ QString icStr = QPlatformInputContextFactory::requested();
+ icStr.isNull() ? mInputContext.reset(new QWaylandInputContext(mDisplay))
+ : mInputContext.reset(QPlatformInputContextFactory::create(icStr));
+@@ -136,8 +141,12 @@ QWaylandIntegration::QWaylandIntegration()
+
+ QWaylandIntegration::~QWaylandIntegration()
+ {
++#ifndef QT_NO_DRAGANDDROP
+ delete mDrag;
++#endif
++#ifndef QT_NO_CLIPBOARD
+ delete mClipboard;
++#endif
+ #ifndef QT_NO_ACCESSIBILITY
+ delete mAccessibility;
+ #endif
+@@ -213,15 +222,19 @@ QPlatformFontDatabase *QWaylandIntegration::fontDatabase() const
+ return mFontDb;
+ }
+
++#ifndef QT_NO_CLIPBOARD
+ QPlatformClipboard *QWaylandIntegration::clipboard() const
+ {
+ return mClipboard;
+ }
++#endif
+
++#ifndef QT_NO_DRAGANDDROP
+ QPlatformDrag *QWaylandIntegration::drag() const
+ {
+ return mDrag;
+ }
++#endif
+
+ QPlatformInputContext *QWaylandIntegration::inputContext() const
+ {
+@@ -243,10 +256,12 @@ QVariant QWaylandIntegration::styleHint(StyleHint hint) const
+ return QPlatformIntegration::styleHint(hint);
+ }
+
++#ifndef QT_NO_ACCESSIBILITY
+ QPlatformAccessibility *QWaylandIntegration::accessibility() const
+ {
+ return mAccessibility;
+ }
++#endif
+
+ QPlatformServices *QWaylandIntegration::services() const
+ {
+diff --git a/src/client/qwaylandintegration_p.h b/src/client/qwaylandintegration_p.h
+index 987d805..b50ad95 100644
+--- a/src/client/qwaylandintegration_p.h
++++ b/src/client/qwaylandintegration_p.h
+@@ -80,15 +80,21 @@ public:
+
+ QPlatformNativeInterface *nativeInterface() const Q_DECL_OVERRIDE;
+
++#ifndef QT_NO_CLIPBOARD
+ QPlatformClipboard *clipboard() const Q_DECL_OVERRIDE;
++#endif
+
++#ifndef QT_NO_DRAGANDDROP
+ QPlatformDrag *drag() const Q_DECL_OVERRIDE;
++#endif
+
+ QPlatformInputContext *inputContext() const Q_DECL_OVERRIDE;
+
+ QVariant styleHint(StyleHint hint) const Q_DECL_OVERRIDE;
+
++#ifndef QT_NO_ACCESSIBILITY
+ QPlatformAccessibility *accessibility() const Q_DECL_OVERRIDE;
++#endif
+
+ QPlatformServices *services() const Q_DECL_OVERRIDE;
+
+@@ -117,12 +123,18 @@ private:
+ void initializeInputDeviceIntegration();
+
+ QPlatformFontDatabase *mFontDb;
++#ifndef QT_NO_CLIPBOARD
+ QPlatformClipboard *mClipboard;
++#endif
++#ifndef QT_NO_DRAGANDDROP
+ QPlatformDrag *mDrag;
++#endif
+ QWaylandDisplay *mDisplay;
+ QPlatformNativeInterface *mNativeInterface;
+ QScopedPointer<QPlatformInputContext> mInputContext;
++#ifndef QT_NO_ACCESSIBILITY
+ QPlatformAccessibility *mAccessibility;
++#endif
+ bool mClientBufferIntegrationInitialized;
+ bool mServerBufferIntegrationInitialized;
+ bool mShellIntegrationInitialized;
+--
+2.7.4
+
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 += " \
SRC_URI += " \
file://0001-examples-wayland-include-server-buffer-only-when-bui.patch \
+ file://0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch \
"
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 += " \
qtlocation \
libdrm fontconfig pixman openssl pango cairo icu pciutils \
libcap \
+ gperf-native \
"
# 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 = " \
file://Source/JavaScriptCore/parser/Parser.h;endline=21;md5=bd69f72183a7af673863f057576e21ee \
"
-DEPENDS += "qtbase qtdeclarative icu ruby-native sqlite3 glib-2.0 libxslt"
+DEPENDS += "qtbase qtdeclarative icu ruby-native sqlite3 glib-2.0 libxslt gperf-native"
# qemuarm build fails with:
# | {standard input}: Assembler messages: