Hello community,

here is the log from the commit of package libqt5-qtwebengine for 
openSUSE:Factory checked in at 2018-06-13 15:32:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtwebengine (Old)
 and      /work/SRC/openSUSE:Factory/.libqt5-qtwebengine.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libqt5-qtwebengine"

Wed Jun 13 15:32:49 2018 rev:37 rq:615813 version:5.11.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtwebengine/libqt5-qtwebengine.changes    
2018-06-08 23:09:14.941532541 +0200
+++ 
/work/SRC/openSUSE:Factory/.libqt5-qtwebengine.new/libqt5-qtwebengine.changes   
    2018-06-13 15:32:52.430951145 +0200
@@ -1,0 +2,6 @@
+Fri Jun  8 09:16:47 UTC 2018 - guillaume.gar...@opensuse.org
+
+- Add a patch to fix build with opengles2 (means on ARM):
+  * fix-build-with-opengles2.patch
+
+-------------------------------------------------------------------

New:
----
  fix-build-with-opengles2.patch

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

Other differences:
------------------
++++++ libqt5-qtwebengine.spec ++++++
--- /var/tmp/diff_new_pack.kae0oA/_old  2018-06-13 15:32:58.450729536 +0200
+++ /var/tmp/diff_new_pack.kae0oA/_new  2018-06-13 15:32:58.458729242 +0200
@@ -76,6 +76,7 @@
 Patch7:         fix-build-with-ffmpeg4.patch
 Patch8:         fix-build-with-gcc-8.patch
 Patch9:         fix-build-with-gcc-8-for-real.patch
+Patch10:        fix-build-with-opengles2.patch
 # http://www.chromium.org/blink not ported to PowerPC
 ExcludeArch:    ppc ppc64 ppc64le s390 s390x
 # Try to fix i586 MemoryErrors with rpmlint

++++++ fix-build-with-opengles2.patch ++++++
>From 9397251b76b89b7ca244ec5225dc17dd3b9afc0b Mon Sep 17 00:00:00 2001
From: Michal Klocek <michal.klo...@qt.io>
Date: Mon, 4 Jun 2018 19:37:07 +0200
Subject: [PATCH] Fix compilation with opengl es2

Do not include <QOpenGLContext> with gl_bindings.h since
this will eventually include gl and gles heders into same
compilation unit.

Confilicting headers:

third_party/khronos/GLES3/gl32.h
third_party/mesa/src/include/GL/gl.h

Change-Id: I0450a4084011ead4bfa80d68aeea3f5859df4c94
Reviewed-by: Allan Sandfeld Jensen <allan.jen...@qt.io>
---
 src/core/gl_context_qt.cpp | 11 +++++++++++
 src/core/gl_context_qt.h   |  2 +-
 src/core/gl_surface_qt.cpp | 17 ++---------------
 3 files changed, 14 insertions(+), 16 deletions(-)

diff --git a/src/core/gl_context_qt.cpp b/src/core/gl_context_qt.cpp
index cd82b1069..9ed1db8ba 100644
--- a/src/core/gl_context_qt.cpp
+++ b/src/core/gl_context_qt.cpp
@@ -144,6 +144,17 @@ void* GLContextHelper::getNativeDisplay()
     return resourceForIntegration(QByteArrayLiteral("nativedisplay"));
 }
 
+QFunctionPointer GLContextHelper::getGlXGetProcAddress()
+{
+     QFunctionPointer get_proc_address = nullptr;
+#ifndef QT_NO_OPENGL
+    if (QOpenGLContext *context = qt_gl_global_share_context()) {
+        get_proc_address = context->getProcAddress("glXGetProcAddress");
+    }
+#endif
+    return get_proc_address;
+}
+
 QT_END_NAMESPACE
 
 #if defined(USE_OZONE) || defined(OS_WIN)
diff --git a/src/core/gl_context_qt.h b/src/core/gl_context_qt.h
index 9c8a43a0a..8ffdad583 100644
--- a/src/core/gl_context_qt.h
+++ b/src/core/gl_context_qt.h
@@ -62,7 +62,7 @@ public:
     static void* getEGLDisplay();
     static void* getXDisplay();
     static void* getNativeDisplay();
-
+    static QFunctionPointer getGlXGetProcAddress();
 private:
     Q_INVOKABLE bool initializeContextOnBrowserThread(gl::GLContext* context, 
gl::GLSurface* surface, gl::GLContextAttribs attribs);
 
diff --git a/src/core/gl_surface_qt.cpp b/src/core/gl_surface_qt.cpp
index 0d143ee18..7e5792460 100644
--- a/src/core/gl_surface_qt.cpp
+++ b/src/core/gl_surface_qt.cpp
@@ -73,13 +73,6 @@
 #include "ui/gl/gl_glx_api_implementation.h"
 #include <dlfcn.h>
 
-#ifndef QT_NO_OPENGL
-#include <QOpenGLContext>
-QT_BEGIN_NAMESPACE
-Q_GUI_EXPORT QOpenGLContext *qt_gl_global_share_context();
-QT_END_NAMESPACE
-#endif
-
 #endif
 
 #include "ozone/gl_surface_egl_qt.h"
@@ -203,16 +196,10 @@ bool InitializeStaticGLBindings(GLImplementation 
implementation) {
           reinterpret_cast<GLGetProcAddressProc>(
               base::GetFunctionPointerFromNativeLibrary(library,
                                                         "glXGetProcAddress"));
-
-#ifndef QT_NO_OPENGL
       if (!get_proc_address) {
-          // glx handle not loaded , fallback to qpa
-          if (QOpenGLContext *context = qt_gl_global_share_context()) {
-              get_proc_address = reinterpret_cast<gl::GLGetProcAddressProc>(
-                          context->getProcAddress("glXGetProcAddress"));
-          }
+          QFunctionPointer address = GLContextHelper::getGlXGetProcAddress();
+          get_proc_address = 
reinterpret_cast<gl::GLGetProcAddressProc>(address);
       }
-#endif
       if (!get_proc_address) {
           LOG(ERROR) << "glxGetProcAddress not found.";
           base::UnloadNativeLibrary(library);
-- 
2.16.3


Reply via email to