Dominique Leuenberger 2018-06-26 08:32:01 +00:00 committed by Git OBS Bridge
parent 024550585a
commit 5fd1f07ec6
8 changed files with 46 additions and 183 deletions

View File

@ -0,0 +1,24 @@
From: Fedora
Subject: Fix build for 32-bit platforms
Apparently not upstream, can't find this anywhere. So I assume Fedora is the actual source?
https://src.fedoraproject.org/cgit/rpms/chromium.git/tree/chromium-66.0.3359.170-gcc8-alignof.patch
diff -up chromium-66.0.3359.170/src/3rdparty/chromium/mojo/public/c/system/macros.h.gcc8-alignof chromium-66.0.3359.170/src/3rdparty/chromium/mojo/public/c/system/macros.h
--- chromium-66.0.3359.170/src/3rdparty/chromium/mojo/public/c/system/macros.h.gcc8-alignof 2018-05-15 14:58:46.448912634 -0400
+++ chromium-66.0.3359.170/src/3rdparty/chromium/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400
@@ -18,7 +18,13 @@
#endif
// Like the C++11 |alignof| operator.
-#if __cplusplus >= 201103L
+#if defined(__GNUC__) && __GNUC__ >= 8
+// GCC 8 has changed the alignof operator to return the minimal alignment
+// required by the target ABI, instead of the preferred alignment.
+// This means that on 32-bit x86, it will return 4 instead of 8.
+// Use __alignof__ instead to avoid this.
+#define MOJO_ALIGNOF(type) __alignof__(type)
+#elif __cplusplus >= 201103L
#define MOJO_ALIGNOF(type) alignof(type)
#elif defined(__GNUC__)
#define MOJO_ALIGNOF(type) __alignof__(type)

View File

@ -1,30 +0,0 @@
From b8eb1cbe818f3cf1e6518dadb21cb54b84d890b9 Mon Sep 17 00:00:00 2001
From: Scott Violet <sky@chromium.org>
Date: Fri, 2 Mar 2018 00:39:29 +0000
Subject: [PATCH] Fixes operator bool in InterfaceRequest
BUG=none
TEST=none
Change-Id: Iaa66929033aeea93fcbb31c2793f0251b3b7db8b
Reviewed-on: https://chromium-review.googlesource.com/944253
Reviewed-by: Ken Rockot <rockot@chromium.org>
Commit-Queue: Scott Violet <sky@chromium.org>
Cr-Commit-Position: refs/heads/master@{#540376}
---
src/3rdparty/chromium/mojo/public/cpp/bindings/interface_request.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_request.h b/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_request.h
index 1007cb0b8c80f..ccfdb3716e5d9 100644
--- a/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_request.h
+++ b/src/3rdparty/chromium/mojo/public/cpp/bindings/interface_request.h
@@ -54,7 +54,7 @@ class InterfaceRequest {
// Indicates whether the request currently contains a valid message pipe.
bool is_pending() const { return handle_.is_valid(); }
- explicit operator bool() const { return handle_; }
+ explicit operator bool() const { return handle_.is_valid(); }
// Removes the message pipe from the request and returns it.
ScopedMessagePipeHandle PassMessagePipe() { return std::move(handle_); }

View File

@ -1,46 +0,0 @@
From b65488bce5e804e97acb64ccb696195699a26b8a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCri=20Valdmann?= <juri.valdmann@qt.io>
Date: Wed, 16 May 2018 02:27:40 +0000
Subject: [PATCH] Fix operator bool in AssociatedInterfacePtrInfo and
AssociatedInterfaceRequest
Current version does not compile with GCC 8.1 and for good reason: there's no
operator bool defined in ScopedInterfaceEndpointHandle.
Bug: 795173, 819294
Change-Id: Ia0677af3160fb24c376c66863956ee6d171d7caf
Reviewed-on: https://chromium-review.googlesource.com/1059153
Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558931}
---
src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h | 2 +-
src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_request.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h b/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h
index 1f79662bd7945..cc3f627167956 100644
--- a/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h
+++ b/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_ptr_info.h
@@ -45,7 +45,7 @@ class AssociatedInterfacePtrInfo {
bool is_valid() const { return handle_.is_valid(); }
- explicit operator bool() const { return handle_; }
+ explicit operator bool() const { return handle_.is_valid(); }
ScopedInterfaceEndpointHandle PassHandle() {
return std::move(handle_);
diff --git a/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_request.h b/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_request.h
index 12d2f3ce1df1a..0926f3df92f85 100644
--- a/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_request.h
+++ b/src/3rdparty/chromium/mojo/public/cpp/bindings/associated_interface_request.h
@@ -50,7 +50,7 @@ class AssociatedInterfaceRequest {
// handle.
bool is_pending() const { return handle_.is_valid(); }
- explicit operator bool() const { return handle_; }
+ explicit operator bool() const { return handle_.is_valid(); }
ScopedInterfaceEndpointHandle PassHandle() { return std::move(handle_); }

View File

@ -1,97 +0,0 @@
From 9397251b76b89b7ca244ec5225dc17dd3b9afc0b Mon Sep 17 00:00:00 2001
From: Michal Klocek <michal.klocek@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.jensen@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

View File

@ -1,3 +1,17 @@
-------------------------------------------------------------------
Tue Jun 19 10:52:44 CEST 2018 - fabian@ritter-vogt.de
- Update to 5.11.1
* New bugfix release
* For more details please see:
* http://code.qt.io/cgit/qt/qtwebengine.git/plain/dist/changes-5.11.1/?h=v5.11.1
- Remove patches, now upstream:
* fix-build-with-gcc-8.patch
* fix-build-with-gcc-8-for-real.patch
* fix-build-with-opengles2.patch
- Add patch to fix build on 32-bit:
* chromium-66.0.3359.170-gcc8-alignof.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jun 8 09:16:47 UTC 2018 - guillaume.gardet@opensuse.org Fri Jun 8 09:16:47 UTC 2018 - guillaume.gardet@opensuse.org

View File

@ -53,16 +53,16 @@
%global _qtwebengine_dictionaries_dir %{_libqt5_datadir}/qtwebengine_dictionaries %global _qtwebengine_dictionaries_dir %{_libqt5_datadir}/qtwebengine_dictionaries
Name: libqt5-qtwebengine Name: libqt5-qtwebengine
Version: 5.11.0 Version: 5.11.1
Release: 0 Release: 0
Summary: Qt 5 WebEngine Library Summary: Qt 5 WebEngine Library
License: LGPL-3.0-only or GPL-2.0-only or GPL-3.0-only License: LGPL-3.0-only or GPL-2.0-only or GPL-3.0-only
Group: Development/Libraries/X11 Group: Development/Libraries/X11
Url: https://www.qt.io Url: https://www.qt.io
%define base_name libqt5 %define base_name libqt5
%define real_version 5.11.0 %define real_version 5.11.1
%define so_version 5.11.0 %define so_version 5.11.1
%define tar_version qtwebengine-everywhere-src-5.11.0 %define tar_version qtwebengine-everywhere-src-5.11.1
Source: https://download.qt.io/official_releases/qt/5.11/%{real_version}/submodules/%{tar_version}.tar.xz Source: https://download.qt.io/official_releases/qt/5.11/%{real_version}/submodules/%{tar_version}.tar.xz
Source1: baselibs.conf Source1: baselibs.conf
# PATCH-FIX-UPSTREAM armv6-ffmpeg-no-thumb.patch - Fix ffmpeg configuration for armv6 # PATCH-FIX-UPSTREAM armv6-ffmpeg-no-thumb.patch - Fix ffmpeg configuration for armv6
@ -74,9 +74,7 @@ Patch5: harmony-fix.diff
Patch6: no-return-in-nonvoid-function.diff Patch6: no-return-in-nonvoid-function.diff
# PATCH-FIX-UPSTREAM # PATCH-FIX-UPSTREAM
Patch7: fix-build-with-ffmpeg4.patch Patch7: fix-build-with-ffmpeg4.patch
Patch8: fix-build-with-gcc-8.patch Patch8: chromium-66.0.3359.170-gcc8-alignof.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 # http://www.chromium.org/blink not ported to PowerPC
ExcludeArch: ppc ppc64 ppc64le s390 s390x ExcludeArch: ppc ppc64 ppc64le s390 s390x
# Try to fix i586 MemoryErrors with rpmlint # Try to fix i586 MemoryErrors with rpmlint

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5dd754d603c66d36e93b96b4f7c24a6e6269ae6a1682a524b8baa664d5c44b45
size 233619512

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:389d9f42ca393ac11ec8932ce9771766dec91a4c761ffb685cc429c2a760d48c
size 233633572