Re: [oe] [meta-qt5][krogoth][PATCH] qtwayland: Fix building of QWaylandIntegration if some Qt5 features are disabled.
ping On Tue, Oct 18, 2016 at 03:44:02PM -0400, Denys Dmytriyenko wrote: > On Sun, Sep 25, 2016 at 10:54:49AM +0300, Vesa Jääskeläinen wrote: > > 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 > > Tested-by: Denys Dmytriyenko > > Resolves the build issue for me on krogoth and Qt 5.6.1 > > I also forward-ported this patch to master and Qt 5.7.0 and submitted it > separately. > > -- > Denys > > > > --- > > 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 8fc1862..18477b0 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 000..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?= > > +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 > > + > > + #include > > ++#ifndef QT_NO_ACCESSIBILITY > > + #include > > ++#endif > > + #include > > + > > + #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_CLI
Re: [oe] [meta-qt5][krogoth][PATCH] qtwayland: Fix building of QWaylandIntegration if some Qt5 features are disabled.
On Sun, Sep 25, 2016 at 10:54:49AM +0300, Vesa Jääskeläinen wrote: > 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 Tested-by: Denys Dmytriyenko Resolves the build issue for me on krogoth and Qt 5.6.1 I also forward-ported this patch to master and Qt 5.7.0 and submitted it separately. -- Denys > --- > 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 8fc1862..18477b0 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 000..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?= > +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 > + > + #include > ++#ifndef QT_NO_ACCESSIBILITY > + #include > ++#endif > + #include > + > + #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
Re: [oe] [meta-qt5][krogoth][PATCH] qtwayland: Fix building of QWaylandIntegration if some Qt5 features are disabled.
On 25.09.2016 12:37, Vesa Jääskeläinen wrote: On 25/09/2016 10.54, Vesa Jääskeläinen wrote: 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 --- 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 FYI: I have sent upstream PR but no response within a week: https://github.com/qt/qtwayland/pull/1 FYI: All commits to Qt modules must go through Qt Gerrit (codereview.qt-project.org), github is used only as a mirror. -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] [meta-qt5][krogoth][PATCH] qtwayland: Fix building of QWaylandIntegration if some Qt5 features are disabled.
On 25/09/2016 10.54, Vesa Jääskeläinen wrote: 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 --- 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 FYI: I have sent upstream PR but no response within a week: https://github.com/qt/qtwayland/pull/1 -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
[oe] [meta-qt5][krogoth][PATCH] qtwayland: 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. Signed-off-by: Vesa Jääskeläinen --- 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 8fc1862..18477b0 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 000..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?= +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 + + #include ++#ifndef QT_NO_ACCESSIBILITY + #include ++#endif + #include + + #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 +@@