All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: Denys Dmytriyenko <denis@denix.org>
Cc: openembedded-devel@lists.openembedded.org,
	Denys Dmytriyenko <denys@ti.com>
Subject: Re: [meta-qt5][morty][PATCH] qtwayland: Fix building of QWaylandIntegration if some Qt5 features are disabled.
Date: Mon, 2 Jan 2017 11:50:51 +0100	[thread overview]
Message-ID: <20170102105051.GA3954@jama> (raw)
In-Reply-To: <1482444889-16856-1-git-send-email-denis@denix.org>

[-- Attachment #1: Type: text/plain, Size: 7995 bytes --]

On Thu, Dec 22, 2016 at 05:14:49PM -0500, Denys Dmytriyenko wrote:
> From: Vesa Jääskeläinen <dachaac@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.

Is this still needed with:
[oe] [meta-qt5][morty][PATCH] qt5: update submodule SRCREVs to 5.7.1 release

The .patch doesn't apply in 5.7.1 anymore and I haven't had time to find
out why.

> Signed-off-by: Vesa Jääskeläinen <dachaac@gmail.com>
> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> ---
>  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?= <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 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
> 

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 201 bytes --]

  reply	other threads:[~2017-01-02 10:50 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-22 22:14 [meta-qt5][morty][PATCH] qtwayland: Fix building of QWaylandIntegration if some Qt5 features are disabled Denys Dmytriyenko
2017-01-02 10:50 ` Martin Jansa [this message]
2017-01-11  0:27   ` Denys Dmytriyenko
2017-01-11  0:33     ` Martin Jansa
2017-01-13 21:16       ` Denys Dmytriyenko
2017-01-13 23:06         ` Denys Dmytriyenko
2017-01-13 23:24           ` Denys Dmytriyenko
2017-01-14  0:30             ` Martin Jansa
2017-01-14  1:00               ` Denys Dmytriyenko
2017-01-14 11:39                 ` Martin Jansa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170102105051.GA3954@jama \
    --to=martin.jansa@gmail.com \
    --cc=denis@denix.org \
    --cc=denys@ti.com \
    --cc=openembedded-devel@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.