ping
On Tue, Oct 18, 2016 at 03:40:52PM -0400, Denys Dmytriyenko wrote: > From: Vesa Jääskeläinen <dach...@gmail.com> > > 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. > > Signed-off-by: Vesa Jääskeläinen <dach...@gmail.com> > Signed-off-by: Denys Dmytriyenko <de...@ti.com> > --- > Adopted to current meta-qt5/master with Qt 5.7.0 from here: > http://lists.openembedded.org/pipermail/openembedded-devel/2016-September/109281.html > > recipes-qt/qt5/qtwayland-native_git.bb | 1 + > ...g-of-QWaylandIntegration-if-some-Qt5-feat.patch | 156 > +++++++++++++++++++++ > recipes-qt/qt5/qtwayland_git.bb | 1 + > 3 files changed, 158 insertions(+) > create mode 100644 > recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch > > diff --git a/recipes-qt/qt5/qtwayland-native_git.bb > b/recipes-qt/qt5/qtwayland-native_git.bb > index a214346..1149aa5 100644 > --- a/recipes-qt/qt5/qtwayland-native_git.bb > +++ b/recipes-qt/qt5/qtwayland-native_git.bb > @@ -18,6 +18,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 0000000..d173e67 > --- /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?= <dach...@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 b208961..e315924 100644 > --- a/recipes-qt/qt5/qtwayland_git.bb > +++ b/recipes-qt/qt5/qtwayland_git.bb > @@ -46,6 +46,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 = "a172672484b9496819e588b51ac2ff9fb4a21941" > -- > 2.7.4 > > -- > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel -- _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel