diff options
Diffstat (limited to 'qt5-layer')
4 files changed, 148 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 00000000..b0be292d --- /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_%.bbappend b/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend new file mode 100644 index 00000000..a376a838 --- /dev/null +++ b/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend @@ -0,0 +1,79 @@ +# 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)}" + +IS_MX6SL = "0" +IS_MX6SL_mx6sl = "1" + +PACKAGECONFIG_GL_mx5 = "gles2" +QT_CONFIG_FLAGS_append_mx5 = "${@base_contains('DISTRO_FEATURES', 'x11', ' -no-eglfs', ' -eglfs', d)}" + +PACKAGECONFIG_GL_mx6q = "gles2" +PACKAGECONFIG_GL_mx6dl = "gles2" +PACKAGECONFIG_GL_mx6sx = "gles2" +PACKAGECONFIG_GL_mx6sl = "${@base_contains('DISTRO_FEATURES', 'x11', \ + ' gl', '', d)}" +QT_CONFIG_FLAGS_append_mx6q = "${@base_contains('DISTRO_FEATURES', 'x11', ' -no-eglfs', ' -eglfs', d)}" +QT_CONFIG_FLAGS_append_mx6dl = "${@base_contains('DISTRO_FEATURES', 'x11', ' -no-eglfs', ' -eglfs', d)}" +QT_CONFIG_FLAGS_append_mx6sx = "${@base_contains('DISTRO_FEATURES', 'x11', ' -no-eglfs', ' -eglfs', d)}" +QT_CONFIG_FLAGS_append_mx6sl = "${@base_contains('DISTRO_FEATURES', 'x11', \ + ' -no-eglfs', ' -no-opengl -linuxfb -no-eglfs', d)}" + +do_configure_prepend_mx5() { + sed -i 's!load(qt_config)!!' ${S}/mkspecs/linux-oe-g++/qmake.conf + + cat >> ${S}/mkspecs/linux-oe-g++/qmake.conf <<EOF +IMX5_CFLAGS = -D_LINUX=1 +QMAKE_LIBS_EGL += -lEGL +QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL +QMAKE_LIBS_OPENVG += -lOpenVG -lEGL + +QMAKE_CFLAGS_RELEASE += \$\$IMX5_CFLAGS +QMAKE_CXXFLAGS_RELEASE += \$\$IMX5_CFLAGS +QMAKE_CFLAGS_DEBUG += \$\$IMX5_CFLAGS +QMAKE_CXXFLAGS_DEBUG += \$\$IMX5_CFLAGS + +load(qt_config) + +EOF +} + +do_configure_prepend_mx6() { + # adapt qmake.conf to our needs + sed -i 's!load(qt_config)!!' ${S}/mkspecs/linux-oe-g++/qmake.conf + if test ${HAS_X11} -eq 0; then + if test ${IS_MX6SL} -eq 0; then + + cat >> ${S}/mkspecs/linux-oe-g++/qmake.conf <<EOF +EGLFS_PLATFORM_HOOKS_SOURCES = \$\$PWD/qeglfshooks_imx6.cpp +IMX6_CFLAGS = -DLINUX=1 -DEGL_API_FB=1 +EOF + else +cat >> ${S}/mkspecs/linux-oe-g++/qmake.conf <<EOF +IMX6_CFLAGS = -DLINUX=1 +EOF +fi + # copy the hook in the mkspecs directory OE is using + cp ${S}/mkspecs/devices/linux-imx6-g++/qeglfshooks_imx6.cpp ${S}/mkspecs/linux-oe-g++/ + else + cat >> ${S}/mkspecs/linux-oe-g++/qmake.conf <<EOF +IMX6_CFLAGS = -DLINUX=1 +EOF + fi + cat >> ${S}/mkspecs/linux-oe-g++/qmake.conf <<EOF +QMAKE_LIBS_EGL += -lEGL +QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL -lGAL +QMAKE_LIBS_OPENVG += -lOpenVG -lEGL -lGAL +QMAKE_CFLAGS_RELEASE += \$\$IMX6_CFLAGS +QMAKE_CXXFLAGS_RELEASE += \$\$IMX6_CFLAGS +QMAKE_CFLAGS_DEBUG += \$\$IMX6_CFLAGS +QMAKE_CXXFLAGS_DEBUG += \$\$IMX6_CFLAGS + +load(qt_config) + +EOF +} diff --git a/qt5-layer/recipes-qt/qt5/qtwebkit/0001-Fix-to-match-the-uniform-precision-qualifiers-in-ver.patch b/qt5-layer/recipes-qt/qt5/qtwebkit/0001-Fix-to-match-the-uniform-precision-qualifiers-in-ver.patch new file mode 100644 index 00000000..80e55c7f --- /dev/null +++ b/qt5-layer/recipes-qt/qt5/qtwebkit/0001-Fix-to-match-the-uniform-precision-qualifiers-in-ver.patch @@ -0,0 +1,42 @@ +From 66dab98c3f42eb70a4c6761a8694e374b8578e99 Mon Sep 17 00:00:00 2001 +From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com> +Date: Thu, 8 May 2014 09:27:04 -0700 +Subject: [PATCH] Fix to match the uniform precision qualifiers in vertex and + fragment shaders + +When the vertex and fragment shaders are linked together, then they will +share a single global uniform name space. Hence, types and precisions of +uniforms with the same name must match across all shaders that are linked +into a single executable. + +As per GLSL_ES_Specification_3.00.3.pdf +Page 124 12.3 Numeric Precision +The fragment language has no default precision qualifier for floating point types. +Hence for float, floating point vector and matrix variable declarations, either +the declaration must include a precision qualifier or the default float +precision must have been previously declared. + +Upstream-Status: Submitted [https://bugs.webkit.org/show_bug.cgi?id=124653#c9] + +Change-Id: I4eb3363b3bca8bc3c839212ec7c966201a3e65e2 +Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com> +--- + Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp +index f4b9a7e..7e991bf 100644 +--- a/Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp ++++ b/Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp +@@ -208,7 +208,7 @@ static const char* fragmentTemplate = + ANTIALIASING_TEX_COORD_DIRECTIVE + BLUR_CONSTANTS + STRINGIFY( +- precision mediump float; ++ precision highp float; + uniform SamplerType s_sampler; + uniform sampler2D s_contentTexture; + uniform float u_opacity; +-- +1.9.1 + diff --git a/qt5-layer/recipes-qt/qt5/qtwebkit_%.bbappend b/qt5-layer/recipes-qt/qt5/qtwebkit_%.bbappend new file mode 100644 index 00000000..5d961e64 --- /dev/null +++ b/qt5-layer/recipes-qt/qt5/qtwebkit_%.bbappend @@ -0,0 +1,4 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +SRC_URI += "file://0001-Fix-to-match-the-uniform-precision-qualifiers-in-ver.patch" + |