Hello community,

here is the log from the commit of package libqt5-qtbase for openSUSE:Factory 
checked in at 2013-12-17 06:52:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtbase (Old)
 and      /work/SRC/openSUSE:Factory/.libqt5-qtbase.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libqt5-qtbase"

Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtbase/libqt5-qtbase.changes      
2013-12-02 07:22:53.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libqt5-qtbase.new/libqt5-qtbase.changes 
2013-12-17 06:52:21.000000000 +0100
@@ -1,0 +2,20 @@
+Thu Dec 12 12:28:46 UTC 2013 - [email protected]
+
+- Update to 5.2.0 final:
+  * For more details please see:
+    http://blog.qt.digia.com/blog/2013/12/12/qt-5-2-released-the-best-qt-yet/
+    http://qt-project.org/qt5/qt52
+    http://qt.digia.com/Product/Whats-New/Qt-52/
+
+-------------------------------------------------------------------
+Wed Dec  4 01:17:30 UTC 2013 - [email protected]
+
+- Import patches from upstream which make possible to build EGL
+  support without requiring GLES2:
+  0001-Remove-the-GLES-2-dependency-for-eglfs-and-kms.patch
+  0002-Fix-configure-script-to-not-dictate-OpenGL-ES-2-when.patch
+  0003-EGL-convenience-deal-with-DefaultRenderableType-when.patch
+  0004-Do-not-disable-egl-on-desktop-gl-automatically.patch
+- Enable EGL support by adding (Build)Requiring pkgconfig(egl)
+
+-------------------------------------------------------------------

Old:
----
  qtbase-opensource-src-5.2.0-rc1.tar.xz

New:
----
  0001-Remove-the-GLES-2-dependency-for-eglfs-and-kms.patch
  0002-Fix-configure-script-to-not-dictate-OpenGL-ES-2-when.patch
  0003-EGL-convenience-deal-with-DefaultRenderableType-when.patch
  0004-Do-not-disable-egl-on-desktop-gl-automatically.patch
  qtbase-opensource-src-5.2.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libqt5-qtbase.spec ++++++
--- /var/tmp/diff_new_pack.W8Mpe9/_old  2013-12-17 06:52:26.000000000 +0100
+++ /var/tmp/diff_new_pack.W8Mpe9/_new  2013-12-17 06:52:26.000000000 +0100
@@ -36,6 +36,7 @@
 BuildRequires:  sqlite3-devel
 BuildRequires:  unixODBC-devel
 BuildRequires:  pkgconfig(dbus-1)
+BuildRequires:  pkgconfig(egl)
 BuildRequires:  pkgconfig(gl)
 %ifarch %arm
 BuildRequires:  pkgconfig(gbm)
@@ -50,14 +51,14 @@
 BuildRequires:  pkgconfig(ice)
 BuildRequires:  pkgconfig(sm)
 BuildRequires:  pkgconfig(xkbcommon) >= 0.2.0
-Version:        5.2.0~rc1
+Version:        5.2.0
 Release:        0
 Summary:        C++ Program Library, Core Components
 License:        GPL-3.0 or SUSE-LGPL-2.1-with-digia-exception-1.1
 Group:          System/Libraries
 Url:            http://qt.digia.com
 %define base_name libqt5
-%define real_version 5.2.0-rc1
+%define real_version 5.2.0
 %define so_version 5.2.0
 %define tar_version qtbase-opensource-src-%{real_version}
 Source:         %{tar_version}.tar.xz
@@ -75,6 +76,12 @@
 Patch109:       libqt5-libtool-nodate.diff
 # PATCH-FIX-UPSTREAM qmake-add-usr-include.diff -- explicitly include 
/usr/include path
 Patch131:       qmake-add-usr-include.diff
+# PATCH-FIXES-UPSTREAM -- patches 1000 - 1003 are from upstream stable branch, 
they finally alow building egl support
+# without requiring GLES
+Patch1000:      0001-Remove-the-GLES-2-dependency-for-eglfs-and-kms.patch
+Patch1001:      0002-Fix-configure-script-to-not-dictate-OpenGL-ES-2-when.patch
+Patch1002:      0003-EGL-convenience-deal-with-DefaultRenderableType-when.patch
+Patch1003:      0004-Do-not-disable-egl-on-desktop-gl-automatically.patch
 BuildRequires:  clucene-core-devel
 BuildRequires:  libicu-devel
 BuildRequires:  libpulse-devel
@@ -111,6 +118,10 @@
 %patch4 -p1
 %patch109 -p1
 %patch131 -p1
+%patch1000 -p1
+%patch1001 -p1
+%patch1002 -p1
+%patch1003 -p1
 
 # be sure not to use them
 rm -r src/3rdparty/{libjpeg,freetype,libpng,zlib}
@@ -149,6 +160,7 @@
 Requires:       pkgconfig
 Requires:       sqlite3-devel
 Requires:       pkgconfig(dbus-1)
+Requires:       pkgconfig(egl)
 Requires:       pkgconfig(gl)
 %ifarch %arm
 Requires:       pkgconfig(gbm)
@@ -380,13 +392,12 @@
        -gtkstyle \
        -javascript-jit \
        -xcb \
-       -no-eglfs \
-       -opengl desktop \
+       -egl \
+       -eglfs \
 %ifarch %arm
        -eglfs -kms \
        -opengl es2 \
 %else
-       -no-eglfs \
        -opengl desktop \
 %endif
     -release \

++++++ 0001-Remove-the-GLES-2-dependency-for-eglfs-and-kms.patch ++++++
>From f087ffdc53254fbab438180cd2da750d54c2be76 Mon Sep 17 00:00:00 2001
From: Jorgen Lind <[email protected]>
Date: Tue, 12 Nov 2013 10:50:42 +0100
Subject: [PATCH 1/1] Remove the GLES 2 dependency for eglfs and kms

Change-Id: If7b80487e01db726367f5a67d2860073f60a0844
Reviewed-by: Gunnar Sletta <[email protected]>
---
 src/plugins/platforms/eglfs/qeglfsbackingstore.cpp | 1 +
 src/plugins/platforms/eglfs/qeglfsbackingstore.h   | 3 ++-
 src/plugins/platforms/eglfs/qeglfscompositor.cpp   | 7 ++++++-
 src/plugins/platforms/eglfs/qeglfscompositor.h     | 6 ++++--
 src/plugins/platforms/eglfs/qeglfscursor.cpp       | 5 +++--
 src/plugins/platforms/eglfs/qeglfscursor.h         | 7 +++++--
 src/plugins/platforms/kms/qkmsbackingstore.cpp     | 6 ++++++
 src/plugins/platforms/kms/qkmsbackingstore.h       | 4 +++-
 src/plugins/platforms/kms/qkmsscreen.h             | 3 +--
 9 files changed, 31 insertions(+), 11 deletions(-)

diff --git a/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp 
b/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp
index 9de5960..0353191 100644
--- a/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp
+++ b/src/plugins/platforms/eglfs/qeglfsbackingstore.cpp
@@ -139,6 +139,7 @@ void QEglFSBackingStore::resize(const QSize &size, const 
QRegion &staticContents
     m_window->create();
 
     rootWin->screen()->rootContext()->makeCurrent(rootWin->window());
+    initializeOpenGLFunctions();
 
     if (m_texture)
         glDeleteTextures(1, &m_texture);
diff --git a/src/plugins/platforms/eglfs/qeglfsbackingstore.h 
b/src/plugins/platforms/eglfs/qeglfsbackingstore.h
index 535428a..9af856e 100644
--- a/src/plugins/platforms/eglfs/qeglfsbackingstore.h
+++ b/src/plugins/platforms/eglfs/qeglfsbackingstore.h
@@ -43,6 +43,7 @@
 #define QEGLFSBACKINGSTORE_H
 
 #include <qpa/qplatformbackingstore.h>
+#include <QtGui/QOpenGLFunctions>
 
 #include <QImage>
 #include <QRegion>
@@ -52,7 +53,7 @@ QT_BEGIN_NAMESPACE
 class QOpenGLPaintDevice;
 class QEglFSWindow;
 
-class QEglFSBackingStore : public QPlatformBackingStore
+class QEglFSBackingStore : public QPlatformBackingStore, public 
QOpenGLFunctions
 {
 public:
     QEglFSBackingStore(QWindow *window);
diff --git a/src/plugins/platforms/eglfs/qeglfscompositor.cpp 
b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
index 9db43a5..845bb5b 100644
--- a/src/plugins/platforms/eglfs/qeglfscompositor.cpp
+++ b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
@@ -53,7 +53,8 @@ static QEglFSCompositor *compositor = 0;
 
 QEglFSCompositor::QEglFSCompositor()
     : m_screen(0),
-      m_program(0)
+      m_program(0),
+      m_initialized(false)
 {
     Q_ASSERT(!compositor);
     m_updateTimer.setSingleShot(true);
@@ -86,6 +87,10 @@ void QEglFSCompositor::renderAll()
     Q_ASSERT(context);
 
     context->makeCurrent(rootWin->window());
+    if (!m_initialized) {
+        initializeOpenGLFunctions();
+        m_initialized = true;
+    }
     ensureProgram();
     m_program->bind();
 
diff --git a/src/plugins/platforms/eglfs/qeglfscompositor.h 
b/src/plugins/platforms/eglfs/qeglfscompositor.h
index ade2e06..0d5daaf 100644
--- a/src/plugins/platforms/eglfs/qeglfscompositor.h
+++ b/src/plugins/platforms/eglfs/qeglfscompositor.h
@@ -42,7 +42,8 @@
 #ifndef QEGLFSCOMPOSITOR_H
 #define QEGLFSCOMPOSITOR_H
 
-#include <QTimer>
+#include <QtCore/QTimer>
+#include <QtGui/QOpenGLFunctions>
 
 QT_BEGIN_NAMESPACE
 
@@ -50,7 +51,7 @@ class QEglFSScreen;
 class QEglFSWindow;
 class QOpenGLShaderProgram;
 
-class QEglFSCompositor : public QObject
+class QEglFSCompositor : public QObject, public QOpenGLFunctions
 {
     Q_OBJECT
 
@@ -76,6 +77,7 @@ private:
     int m_vertexCoordEntry;
     int m_textureCoordEntry;
     int m_isRasterEntry;
+    bool m_initialized;
 };
 
 QT_END_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/qeglfscursor.cpp 
b/src/plugins/platforms/eglfs/qeglfscursor.cpp
index c00e86d..0066426 100644
--- a/src/plugins/platforms/eglfs/qeglfscursor.cpp
+++ b/src/plugins/platforms/eglfs/qeglfscursor.cpp
@@ -79,7 +79,7 @@ void QEglFSCursor::resetResources()
     m_cursorAtlas.texture = 0;
 }
 
-static GLuint createShader(GLenum shaderType, const char *program)
+GLuint QEglFSCursor::createShader(GLenum shaderType, const char *program)
 {
     GLuint shader = glCreateShader(shaderType);
     glShaderSource(shader, 1 /* count */, &program, NULL /* lengths */);
@@ -98,7 +98,7 @@ static GLuint createShader(GLenum shaderType, const char 
*program)
     return 0;
 }
 
-static GLuint createProgram(GLuint vshader, GLuint fshader)
+GLuint QEglFSCursor::createProgram(GLuint vshader, GLuint fshader)
 {
     GLuint program = glCreateProgram();
     glAttachShader(program, vshader);
@@ -286,6 +286,7 @@ void QEglFSCursor::draw(const QRectF &r)
 {
     if (!m_program) {
         // one time initialization
+        initializeOpenGLFunctions();
         createShaderPrograms();
 
         if (!m_cursorAtlas.texture) {
diff --git a/src/plugins/platforms/eglfs/qeglfscursor.h 
b/src/plugins/platforms/eglfs/qeglfscursor.h
index 51a34e0..71ff73b 100644
--- a/src/plugins/platforms/eglfs/qeglfscursor.h
+++ b/src/plugins/platforms/eglfs/qeglfscursor.h
@@ -43,15 +43,15 @@
 #define QEGLFSCURSOR_H
 
 #include <qpa/qplatformcursor.h>
+#include <QtGui/QOpenGLFunctions>
 #include "qeglfsscreen.h"
-#include <GLES2/gl2.h>
 
 QT_BEGIN_NAMESPACE
 
 class QOpenGLShaderProgram;
 class QEglFSScreen;
 
-class QEglFSCursor : public QPlatformCursor
+class QEglFSCursor : public QPlatformCursor, public QOpenGLFunctions
 {
 public:
     QEglFSCursor(QEglFSScreen *screen);
@@ -78,6 +78,9 @@ protected:
     void draw(const QRectF &rect);
     void update(const QRegion &region);
 
+    GLuint createShader(GLenum shaderType, const char *program);
+    GLuint createProgram(GLuint vshader, GLuint fshader);
+
     QEglFSScreen *m_screen;
 
     // current cursor information
diff --git a/src/plugins/platforms/kms/qkmsbackingstore.cpp 
b/src/plugins/platforms/kms/qkmsbackingstore.cpp
index 29395f3..fa4ef84 100644
--- a/src/plugins/platforms/kms/qkmsbackingstore.cpp
+++ b/src/plugins/platforms/kms/qkmsbackingstore.cpp
@@ -52,6 +52,7 @@ QKmsBackingStore::QKmsBackingStore(QWindow *window)
     , m_context(new QOpenGLContext)
     , m_texture(0)
     , m_program(0)
+    , m_initialized(false)
 {
     m_context->setFormat(window->requestedFormat());
     m_context->setScreen(window->screen());
@@ -85,6 +86,11 @@ void QKmsBackingStore::flush(QWindow *window, const QRegion 
&region, const QPoin
 
     m_context->makeCurrent(window);
 
+    if (!m_initialized) {
+        initializeOpenGLFunctions();
+        m_initialized = true;
+    }
+
     if (!m_program) {
         static const char *textureVertexProgram =
             "attribute highp vec2 vertexCoordEntry;\n"
diff --git a/src/plugins/platforms/kms/qkmsbackingstore.h 
b/src/plugins/platforms/kms/qkmsbackingstore.h
index 34ea49a..c5f6c81 100644
--- a/src/plugins/platforms/kms/qkmsbackingstore.h
+++ b/src/plugins/platforms/kms/qkmsbackingstore.h
@@ -43,6 +43,7 @@
 #define QBACKINGSTORE_KMS_H
 
 #include <qpa/qplatformbackingstore.h>
+#include <QtGui/QOpenGLFunctions>
 #include <QImage>
 
 QT_BEGIN_NAMESPACE
@@ -50,7 +51,7 @@ QT_BEGIN_NAMESPACE
 class QOpenGLContext;
 class QOpenGLShaderProgram;
 
-class QKmsBackingStore : public QPlatformBackingStore
+class QKmsBackingStore : public QPlatformBackingStore, public QOpenGLFunctions
 {
 public:
     QKmsBackingStore(QWindow *window);
@@ -69,6 +70,7 @@ private:
     uint m_texture;
     QOpenGLShaderProgram *m_program;
     QRegion m_dirty;
+    bool m_initialized;
 };
 
 QT_END_NAMESPACE
diff --git a/src/plugins/platforms/kms/qkmsscreen.h 
b/src/plugins/platforms/kms/qkmsscreen.h
index a90d6fa..f0c49ad 100644
--- a/src/plugins/platforms/kms/qkmsscreen.h
+++ b/src/plugins/platforms/kms/qkmsscreen.h
@@ -55,8 +55,7 @@ extern "C" {
 
 #include <EGL/egl.h>
 #include <EGL/eglext.h>
-#include <GLES2/gl2.h>
-#include <GLES2/gl2ext.h>
+#include <QtGui/qopengl.h>
 
 #include <qpa/qplatformscreen.h>
 
-- 
1.8.4.4

++++++ 0002-Fix-configure-script-to-not-dictate-OpenGL-ES-2-when.patch ++++++
>From bad2e9fad4b9574528b02e8b60a03672f41ebe35 Mon Sep 17 00:00:00 2001
From: Jorgen Lind <[email protected]>
Date: Tue, 12 Nov 2013 09:25:23 +0100
Subject: [PATCH 1/1] Fix configure script to not dictate OpenGL ES 2 when EGL
 is enabled

Change-Id: I4d940ef436f21fd915f3d03558fd4fb4c7b3e5b7
Reviewed-by: Gunnar Sletta <[email protected]>
(cherry picked from commit 20272ad6e5c56db87146f85f98c560099bfdbb75)

Conflicts:
        configure
---
 configure | 34 +++++++---------------------------
 1 file changed, 7 insertions(+), 27 deletions(-)

diff --git a/configure b/configure
index a330dd6..a83aeb7 100755
--- a/configure
+++ b/configure
@@ -2419,7 +2419,7 @@ Additional options:
  *  -xcb ............... Compile Xcb support.
 
     -no-eglfs .......... Do not compile EGLFS (EGL Full Screen/Single Surface) 
support.
- *  -eglfs ............. Compile EGLFS support (Requires OpenGL ES 2 support).
+ *  -eglfs ............. Compile EGLFS support.
 
     -no-directfb ....... Do not compile DirectFB support.
  *  -directfb .......... Compile DirectFB support.
@@ -2428,7 +2428,7 @@ Additional options:
  *  -linuxfb ........... Compile Linux Framebuffer support.
 
     -no-kms ............ Do not compile KMS support.
- *  -kms ............... Compile KMS support (Requires EGL and OpenGL ES 2 
support).
+ *  -kms ............... Compile KMS support (Requires EGL support).
 
     -qpa <name> ......... Sets the default QPA platform (e.g xcb, cocoa, 
windows).
 
@@ -4423,11 +4423,6 @@ if [ "$CFG_EGLFS" = "yes" ]; then
         echo "The EGLFS plugin requires EGL support and cannot be built"
         exit 101
     fi
-    if [ "$CFG_OPENGL" != "es2" ]; then
-        echo "The EGLFS plugin requires OpenGL ES 2 support and cannot be 
built"
-        exit 101
-    fi
-    CFG_OPENGL="es2"
     CFG_EGL=yes
 fi
 
@@ -4436,10 +4431,6 @@ if [ "$CFG_KMS" = "yes" ]; then
         echo "The KMS plugin requires EGL support and cannot be built"
         exit 101
     fi
-    if [ "$CFG_OPENGL" != "es2" ]; then
-        echo "The KMS plugin requires OpenGL ES 2 support and cannot be built"
-        exit 101
-    fi
 fi
 
 # auto-detect SQL-modules support
@@ -5269,17 +5260,10 @@ elif [ "$CFG_XKBCOMMON" = "no" ]; then
 fi
 
 # EGL Support
-if [ "$CFG_OPENGL" != "es2" ]; then
-    if [ "$CFG_EGL" = "yes" ] && [ "$CFG_OPENGL" = "desktop" ]; then
-        echo "EGL support was requested but Qt is being configured for desktop 
OpenGL."
-        echo "Either disable EGL support or enable OpenGL ES support."
-        exit 101
-    elif [ "$CFG_EGL" = "yes" ] && [ "$CFG_OPENGL" = "no" ]; then
-        echo "EGL support was requested but OpenGL ES support is disabled."
+if [ "$CFG_EGL" = "yes" ] && [ "$CFG_OPENGL" = "no" ]; then
+        echo "EGL support was requested but OpenGL support is disabled."
         echo "Either disable EGL support or enable OpenGL ES support."
         exit 101
-    fi
-    CFG_EGL=no
 elif [ "$CFG_EGL" != "no" ]; then
     if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists egl 2>/dev/null; then
         QMAKE_INCDIR_EGL=`$PKG_CONFIG --cflags-only-I egl 2>/dev/null | sed -e 
's,^-I,,g' -e 's, -I, ,g'`
@@ -5302,7 +5286,7 @@ elif [ "$CFG_EGL" != "no" ]; then
 fi
 
 if [ "$CFG_EGLFS" != "no" ]; then
-    if [ "$CFG_OPENGL" = "es2" ] && [ "$XPLATFORM_QNX" = "no" ]; then
+    if [ "$XPLATFORM_QNX" = "no" ]; then
         CFG_EGLFS="$CFG_EGL"
     else
         CFG_EGLFS="no"
@@ -5310,7 +5294,7 @@ if [ "$CFG_EGLFS" != "no" ]; then
 fi
 
 if [ "$CFG_KMS" = "yes" ]; then
-    if [ "$CFG_OPENGL" = "es2" ] && [ "$CFG_EGL" = "yes" ]; then
+    if [ "$CFG_EGL" = "yes" ]; then
         CFG_KMS="yes"
     else
         CFG_KMS="no"
@@ -5694,11 +5678,7 @@ else
 fi
 
 if [ "$CFG_OPENGL" = "es2" ]; then
-    QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES"
-fi
-
-if [ "$CFG_OPENGL" = "es2" ]; then
-    QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES_2"
+    QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES QT_OPENGL_ES_2"
     QT_CONFIG="$QT_CONFIG opengles2"
 fi
 
-- 
1.8.4.4

++++++ 0003-EGL-convenience-deal-with-DefaultRenderableType-when.patch ++++++
>From 7b6253efbf28b43c8b2a561c188670466ac3d916 Mon Sep 17 00:00:00 2001
From: Andrew Knight <[email protected]>
Date: Wed, 20 Nov 2013 16:56:07 +0200
Subject: [PATCH 1/1] EGL convenience: deal with DefaultRenderableType when
 appropriate

When encountering QSurfaceFormat::DefaultRenderableType, the surface
format choosers should not default to OpenGL ES, but rather desktop
OpenGL when Qt has been configured without ES2 support.

Change-Id: I57aa7cfe63ebe0ffb32f4ba32808e62b0a4589f8
Reviewed-by: Gunnar Sletta <[email protected]>
---
 .../eglconvenience/qeglconvenience.cpp             | 29 ++++++++++++++++------
 .../eglconvenience/qeglplatformcontext.cpp         | 15 ++++++++---
 2 files changed, 34 insertions(+), 10 deletions(-)

diff --git a/src/platformsupport/eglconvenience/qeglconvenience.cpp 
b/src/platformsupport/eglconvenience/qeglconvenience.cpp
index b711a2a..32f553a 100644
--- a/src/platformsupport/eglconvenience/qeglconvenience.cpp
+++ b/src/platformsupport/eglconvenience/qeglconvenience.cpp
@@ -232,17 +232,28 @@ EGLConfig QEglConfigChooser::chooseConfig()
     configureAttributes.append(surfaceType());
 
     configureAttributes.append(EGL_RENDERABLE_TYPE);
-    if (m_format.renderableType() == QSurfaceFormat::OpenVG)
+    switch (m_format.renderableType()) {
+    case QSurfaceFormat::OpenVG:
         configureAttributes.append(EGL_OPENVG_BIT);
+        break;
 #ifdef EGL_VERSION_1_4
-    else if (m_format.renderableType() == QSurfaceFormat::OpenGL)
+#  if !defined(QT_OPENGL_ES_2)
+    case QSurfaceFormat::DefaultRenderableType:
+#  endif
+    case QSurfaceFormat::OpenGL:
         configureAttributes.append(EGL_OPENGL_BIT);
+        break;
 #endif
-    else if (m_format.majorVersion() == 1)
-        configureAttributes.append(EGL_OPENGL_ES_BIT);
-    else
+    case QSurfaceFormat::OpenGLES:
+        if (m_format.majorVersion() == 1) {
+            configureAttributes.append(EGL_OPENGL_ES_BIT);
+            break;
+        }
+        // fall through
+    default:
         configureAttributes.append(EGL_OPENGL_ES2_BIT);
-
+        break;
+    }
     configureAttributes.append(EGL_NONE);
 
     EGLConfig cfg = 0;
@@ -336,7 +347,11 @@ QSurfaceFormat q_glFormatFromConfig(EGLDisplay display, 
const EGLConfig config,
     if (referenceFormat.renderableType() == QSurfaceFormat::OpenVG && 
(renderableType & EGL_OPENVG_BIT))
         format.setRenderableType(QSurfaceFormat::OpenVG);
 #ifdef EGL_VERSION_1_4
-    else if (referenceFormat.renderableType() == QSurfaceFormat::OpenGL && 
(renderableType & EGL_OPENGL_BIT))
+    else if ((referenceFormat.renderableType() == QSurfaceFormat::OpenGL
+#  if !defined(QT_OPENGL_ES_2)
+              || referenceFormat.renderableType() == 
QSurfaceFormat::DefaultRenderableType
+#  endif
+              ) && (renderableType & EGL_OPENGL_BIT))
         format.setRenderableType(QSurfaceFormat::OpenGL);
 #endif
     else
diff --git a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp 
b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp
index 34ba21a..714ad8a 100644
--- a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp
+++ b/src/platformsupport/eglconvenience/qeglplatformcontext.cpp
@@ -49,14 +49,23 @@
 
 static inline void bindApi(const QSurfaceFormat &format)
 {
-    if (format.renderableType() == QSurfaceFormat::OpenVG)
+    switch (format.renderableType()) {
+    case QSurfaceFormat::OpenVG:
         eglBindAPI(EGL_OPENVG_API);
+        break;
 #ifdef EGL_VERSION_1_4
-    else if (format.renderableType() == QSurfaceFormat::OpenGL)
+#  if !defined(QT_OPENGL_ES_2)
+    case QSurfaceFormat::DefaultRenderableType:
+#  endif
+    case QSurfaceFormat::OpenGL:
         eglBindAPI(EGL_OPENGL_API);
+        break;
 #endif
-    else
+    case QSurfaceFormat::OpenGLES:
+    default:
         eglBindAPI(EGL_OPENGL_ES_API);
+        break;
+    }
 }
 
 QEGLPlatformContext::QEGLPlatformContext(const QSurfaceFormat &format, 
QPlatformOpenGLContext *share, EGLDisplay display,
-- 
1.8.4.4

++++++ 0004-Do-not-disable-egl-on-desktop-gl-automatically.patch ++++++
>From 95ffd606f8a632a8a963486ce340e7e1b707be0a Mon Sep 17 00:00:00 2001
From: Albert Astals Cid <[email protected]>
Date: Tue, 19 Nov 2013 16:53:21 +0100
Subject: [PATCH 1/1] Do not disable egl on desktop gl automatically
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

desktop opengl and egl are not incompatible with eachother, so there
is no need to disable egl when on desktop opengl

Task-number: QTBUG-34949

Change-Id: I757c38674a480910d1cb23853c255eb993e107ff
Reviewed-by: Oswald Buddenhagen <[email protected]>
Reviewed-by: Andrew Knight <[email protected]>
Reviewed-by: Jørgen Lind <[email protected]>
---
 configure | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/configure b/configure
index 120150c..72c13ab 100755
--- a/configure
+++ b/configure
@@ -5267,11 +5267,13 @@ elif [ "$CFG_XKBCOMMON" = "no" ]; then
 fi
 
 # EGL Support
-if [ "$CFG_EGL" = "yes" ] && [ "$CFG_OPENGL" = "no" ]; then
+if [ "$CFG_EGL" != "no" ]; then
+    if [ "$CFG_EGL" = "yes" ] && [ "$CFG_OPENGL" = "no" ]; then
         echo "EGL support was requested but OpenGL support is disabled."
-        echo "Either disable EGL support or enable OpenGL ES support."
+        echo "Either disable EGL support or enable OpenGL support."
         exit 101
-elif [ "$CFG_EGL" != "no" ]; then
+    fi
+
     if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists egl 2>/dev/null; then
         QMAKE_INCDIR_EGL=`$PKG_CONFIG --cflags-only-I egl 2>/dev/null | sed -e 
's,^-I,,g' -e 's, -I, ,g'`
         QMAKE_LIBS_EGL=`$PKG_CONFIG --libs egl 2>/dev/null`
-- 
1.8.4.4


++++++ qtbase-opensource-src-5.2.0-rc1.tar.xz -> 
qtbase-opensource-src-5.2.0.tar.xz ++++++
/work/SRC/openSUSE:Factory/libqt5-qtbase/qtbase-opensource-src-5.2.0-rc1.tar.xz 
/work/SRC/openSUSE:Factory/.libqt5-qtbase.new/qtbase-opensource-src-5.2.0.tar.xz
 differ: char 26, line 1

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to