rpi uses bcom EGL implementation and it has descrepency when it comes to defining 'EGLNativePixmapType', lets typecast the ussage of this type to avoid this sort of errors.
Signed-off-by: Khem Raj <[email protected]> --- ...egl-Typecast-proper-EGLNativeWindowType-t.patch | 56 ++++++++++++++++++++++ recipes-qt/qt5/qtwayland_git.bb | 1 + 2 files changed, 57 insertions(+) create mode 100644 recipes-qt/qt5/qtwayland/0001-xcomposite-egl-Typecast-proper-EGLNativeWindowType-t.patch diff --git a/recipes-qt/qt5/qtwayland/0001-xcomposite-egl-Typecast-proper-EGLNativeWindowType-t.patch b/recipes-qt/qt5/qtwayland/0001-xcomposite-egl-Typecast-proper-EGLNativeWindowType-t.patch new file mode 100644 index 0000000..2e1f2c4 --- /dev/null +++ b/recipes-qt/qt5/qtwayland/0001-xcomposite-egl-Typecast-proper-EGLNativeWindowType-t.patch @@ -0,0 +1,56 @@ +From 91746518a0cd56d7b0bfda69ba6cf743bf051fb9 Mon Sep 17 00:00:00 2001 +From: Khem Raj <[email protected]> +Date: Sun, 23 Aug 2015 17:33:25 -0700 +Subject: [PATCH] xcomposite-egl: Typecast proper EGLNativeWindowType to + eglCreateWindowSurface params + +This surfaces on rpi which has slightly different definition of +EGLNativeWindowType + +Fixes errors like + +/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/qtwayland/5.4.2+gitAUTOINC+182488129c-r0/git/src/hardwareintegration/compositor/xcomposite-egl/xcompositeeglintegration.cpp:117:26: error: no matching function for call + to 'eglCreatePixmapSurface' + EGLSurface surface = eglCreatePixmapSurface(mEglDisplay,config,pixmap,attribList.constData()); + ^~~~~~~~~~~~~~~~~~~~~~ +/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2/usr/include/EGL/egl.h:270:31: note: candidate function not viable: no known conversion from 'Pixmap' (aka 'unsigned long') to 'EGLNativePixmapType' (aka 'void *') for 3rd argument; take the + address of the argument with & +EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface(EGLDisplay dpy, EGLConfig config, + ^ +1 error generated. + +Signed-off-by: Khem Raj <[email protected]> +--- + .../client/xcomposite-egl/qwaylandxcompositeeglwindow.cpp | 2 +- + .../compositor/xcomposite-egl/xcompositeeglintegration.cpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglwindow.cpp b/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglwindow.cpp +index 01d6324..e268ede 100644 +--- a/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglwindow.cpp ++++ b/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglwindow.cpp +@@ -122,7 +122,7 @@ void QWaylandXCompositeEGLWindow::createEglSurface() + XCompositeRedirectWindow(m_glxIntegration->xDisplay(), m_xWindow, CompositeRedirectManual); + XMapWindow(m_glxIntegration->xDisplay(), m_xWindow); + +- m_surface = eglCreateWindowSurface(m_glxIntegration->eglDisplay(), m_config, m_xWindow,0); ++ m_surface = eglCreateWindowSurface(m_glxIntegration->eglDisplay(), m_config, (EGLNativeWindowType)m_xWindow,0); + if (m_surface == EGL_NO_SURFACE) { + qFatal("Could not make eglsurface"); + } +diff --git a/src/hardwareintegration/compositor/xcomposite-egl/xcompositeeglintegration.cpp b/src/hardwareintegration/compositor/xcomposite-egl/xcompositeeglintegration.cpp +index 2401d67..61664b5 100644 +--- a/src/hardwareintegration/compositor/xcomposite-egl/xcompositeeglintegration.cpp ++++ b/src/hardwareintegration/compositor/xcomposite-egl/xcompositeeglintegration.cpp +@@ -114,7 +114,7 @@ void XCompositeEglClientBufferIntegration::bindTextureToBuffer(struct ::wl_resou + attribList.append(EGL_TEXTURE_2D); + attribList.append(EGL_NONE); + +- EGLSurface surface = eglCreatePixmapSurface(mEglDisplay,config,pixmap,attribList.constData()); ++ EGLSurface surface = eglCreatePixmapSurface(mEglDisplay,config,(EGLNativeWindowType)pixmap,attribList.constData()); + if (surface == EGL_NO_SURFACE) { + qDebug() << "Failed to create eglsurface" << pixmap << compositorBuffer->window(); + } +-- +2.1.4 + diff --git a/recipes-qt/qt5/qtwayland_git.bb b/recipes-qt/qt5/qtwayland_git.bb index 0be7afe..4725d3c 100644 --- a/recipes-qt/qt5/qtwayland_git.bb +++ b/recipes-qt/qt5/qtwayland_git.bb @@ -35,6 +35,7 @@ FILES_${PN}-plugins-dbg += " \ SRC_URI += " \ file://0001-examples-wayland-include-server-buffer-only-when-bui.patch \ + file://0001-xcomposite-egl-Typecast-proper-EGLNativeWindowType-t.patch \ " QT_VERSION ?= "5.4.3" -- 2.1.4 -- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
