1 |
commit: 0e11bfc3ff2d1dae2d5143bef23f0b3bf4d17592 |
2 |
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Jun 26 13:31:32 2018 +0000 |
4 |
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Jun 27 19:00:20 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e11bfc3 |
7 |
|
8 |
dev-qt/qtwebengine: Fix x86 build with GCC-8 |
9 |
|
10 |
Closes: https://bugs.gentoo.org/657124 |
11 |
Package-Manager: Portage-2.3.40, Repoman-2.3.9 |
12 |
|
13 |
.../qtwebengine/files/qtwebengine-5.9.6-gcc8.patch | 24 ++++++++++++++++++++++ |
14 |
dev-qt/qtwebengine/qtwebengine-5.11.1.ebuild | 1 + |
15 |
dev-qt/qtwebengine/qtwebengine-5.9.6.ebuild | 1 + |
16 |
3 files changed, 26 insertions(+) |
17 |
|
18 |
diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.9.6-gcc8.patch b/dev-qt/qtwebengine/files/qtwebengine-5.9.6-gcc8.patch |
19 |
new file mode 100644 |
20 |
index 00000000000..ba6a49fd748 |
21 |
--- /dev/null |
22 |
+++ b/dev-qt/qtwebengine/files/qtwebengine-5.9.6-gcc8.patch |
23 |
@@ -0,0 +1,24 @@ |
24 |
+From: Fedora |
25 |
+Subject: Fix build for 32-bit platforms |
26 |
+ |
27 |
+Apparently not upstream, can't find this anywhere. So I assume Fedora is the actual source? |
28 |
+https://src.fedoraproject.org/cgit/rpms/chromium.git/tree/chromium-66.0.3359.170-gcc8-alignof.patch |
29 |
+ |
30 |
+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 |
31 |
+--- a/src/3rdparty/chromium/mojo/public/c/system/macros.h 2018-05-15 14:58:46.448912634 -0400 |
32 |
++++ b/src/3rdparty/chromium/mojo/public/c/system/macros.h 2018-05-15 14:58:52.041784613 -0400 |
33 |
+@@ -18,7 +18,13 @@ |
34 |
+ #endif |
35 |
+ |
36 |
+ // Like the C++11 |alignof| operator. |
37 |
+-#if __cplusplus >= 201103L |
38 |
++#if defined(__GNUC__) && __GNUC__ >= 8 |
39 |
++// GCC 8 has changed the alignof operator to return the minimal alignment |
40 |
++// required by the target ABI, instead of the preferred alignment. |
41 |
++// This means that on 32-bit x86, it will return 4 instead of 8. |
42 |
++// Use __alignof__ instead to avoid this. |
43 |
++#define MOJO_ALIGNOF(type) __alignof__(type) |
44 |
++#elif __cplusplus >= 201103L |
45 |
+ #define MOJO_ALIGNOF(type) alignof(type) |
46 |
+ #elif defined(__GNUC__) |
47 |
+ #define MOJO_ALIGNOF(type) __alignof__(type) |
48 |
|
49 |
diff --git a/dev-qt/qtwebengine/qtwebengine-5.11.1.ebuild b/dev-qt/qtwebengine/qtwebengine-5.11.1.ebuild |
50 |
index 05007972333..495c4d06013 100644 |
51 |
--- a/dev-qt/qtwebengine/qtwebengine-5.11.1.ebuild |
52 |
+++ b/dev-qt/qtwebengine/qtwebengine-5.11.1.ebuild |
53 |
@@ -80,6 +80,7 @@ DEPEND="${RDEPEND} |
54 |
" |
55 |
|
56 |
PATCHES+=( |
57 |
+ "${FILESDIR}/${PN}-5.9.6-gcc8.patch" # bug 657124 |
58 |
"${FILESDIR}/${P}-libxml2-disable-catalogs.patch" # bug 653078 |
59 |
"${FILESDIR}/${P}-ffmpeg4.patch" |
60 |
"${FILESDIR}/${P}-eglGetProcAddress-fallback-lookup.patch" # 5.11 branch |
61 |
|
62 |
diff --git a/dev-qt/qtwebengine/qtwebengine-5.9.6.ebuild b/dev-qt/qtwebengine/qtwebengine-5.9.6.ebuild |
63 |
index 6788f042ae3..0ee631f3821 100644 |
64 |
--- a/dev-qt/qtwebengine/qtwebengine-5.9.6.ebuild |
65 |
+++ b/dev-qt/qtwebengine/qtwebengine-5.9.6.ebuild |
66 |
@@ -82,6 +82,7 @@ DEPEND="${RDEPEND} |
67 |
PATCHES=( |
68 |
"${FILESDIR}/${PN}-5.9.4-jpeg-9-1.patch" |
69 |
"${FILESDIR}/${PN}-5.9.4-jpeg-9-2.patch" |
70 |
+ "${FILESDIR}/${PN}-5.9.6-gcc8.patch" # bug 657124 |
71 |
) |
72 |
|
73 |
src_prepare() { |