aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@ossystems.com.br>2014-03-06 14:47:40 -0300
committerOtavio Salvador <otavio@ossystems.com.br>2014-03-11 08:13:32 -0300
commitf638804228dd2a761b9a4a1bc493b86274a91c2b (patch)
tree5c79a405b30fdded207905fb9362269f580630a3
parentf9d97f9f53870f95c19a8c9ddc0767041b4fca6d (diff)
downloadmeta-fsl-arm-f638804228dd2a761b9a4a1bc493b86274a91c2b.tar.gz
meta-fsl-arm-f638804228dd2a761b9a4a1bc493b86274a91c2b.tar.bz2
meta-fsl-arm-f638804228dd2a761b9a4a1bc493b86274a91c2b.zip
qtbase: Disable eglfs build for i.MX6 SoCs using X11
The eglfs hooks require the Framebuffer API calls which are not available when building for X11; to allow qtbase to build for X11 we must disable eglfs support due this restriction. A patch to workaround EGL initialization failure due visual mismatch has been included as well, forcing Visual ID 33. Change-Id: I564b0d30f137e55885268b656e68fdc3151fb93d Signed-off-by: Lauren Post <lauren.post@freescale.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-rw-r--r--qt5-layer/recipes-qt/qt5/qtbase/Force_egl_visual_ID_33.patch23
-rw-r--r--qt5-layer/recipes-qt/qt5/qtbase_5.1.1.bbappend5
2 files changed, 28 insertions, 0 deletions
diff --git a/qt5-layer/recipes-qt/qt5/qtbase/Force_egl_visual_ID_33.patch b/qt5-layer/recipes-qt/qt5/qtbase/Force_egl_visual_ID_33.patch
new file mode 100644
index 0000000..b0be292
--- /dev/null
+++ b/qt5-layer/recipes-qt/qt5/qtbase/Force_egl_visual_ID_33.patch
@@ -0,0 +1,23 @@
+Workaround EGL initialization failure due visual mismatch
+
+Error:
+
+Warning: EGL suggested using X Visual ID 33 (RGB888) for EGL config 28 (RGB444), but this is incompatable
+Unable to find an X11 visual which matches EGL config 28
+Could not initialize EGL
+Aborted
+
+Upstream-Status: Inappropriate [workaround]
+
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+
+diff -Naur qtbase-opensource-src-5.1.1_original/src/platformsupport/eglconvenience/qxlibeglintegration.cpp qtbase-opensource-src-5.1.1/src/platformsupport/eglconvenience/qxlibeglintegration.cpp
+--- qtbase-opensource-src-5.1.1_original/src/platformsupport/eglconvenience/qxlibeglintegration.cpp 2013-12-25 19:08:42.163895341 -0800
++++ qtbase-opensource-src-5.1.1/src/platformsupport/eglconvenience/qxlibeglintegration.cpp 2013-12-25 19:09:37.207893799 -0800
+@@ -180,5 +180,5 @@
+ }
+
+ qWarning("Unable to find an X11 visual which matches EGL config %d", configId);
+- return (VisualID)0;
++ return (VisualID)33;
+ }
diff --git a/qt5-layer/recipes-qt/qt5/qtbase_5.1.1.bbappend b/qt5-layer/recipes-qt/qt5/qtbase_5.1.1.bbappend
index 310d7f7..c1df764 100644
--- a/qt5-layer/recipes-qt/qt5/qtbase_5.1.1.bbappend
+++ b/qt5-layer/recipes-qt/qt5/qtbase_5.1.1.bbappend
@@ -1,5 +1,9 @@
# Copyright (C) 2013 Eric Bénard - Eukréa Electromatique
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+SRC_URI += "file://Force_egl_visual_ID_33.patch"
+
HAS_X11 = "${@base_contains('DISTRO_FEATURES', 'x11', 1, 0, d)}"
PACKAGECONFIG_GL_mx5 = "gles2"
@@ -7,6 +11,7 @@ PACKAGECONFIG_append_mx5 = " tslib icu examples"
PACKAGECONFIG_GL_mx6 = "gles2"
PACKAGECONFIG_append_mx6 = " tslib icu examples"
+QT_CONFIG_FLAGS_append_mx6 = "${@base_contains('DISTRO_FEATURES', 'x11', ' -no-eglfs', '', d)}"
do_configure_prepend_mx5() {
sed -i 's!load(qt_config)!!' ${S}/mkspecs/linux-oe-g++/qmake.conf