Gentoo Archives: gentoo-commits

From: Mike Gilbert <floppym@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/chromium/files/, www-client/chromium/
Date: Tue, 25 Jun 2019 14:58:18
Message-Id: 1561474638.327a53f1e9de14fe01ebc94b96f5fa6178dc3fbd.floppym@gentoo
1 commit: 327a53f1e9de14fe01ebc94b96f5fa6178dc3fbd
2 Author: Stephan Hartmann <stha09 <AT> googlemail <DOT> com>
3 AuthorDate: Sun Jun 23 16:07:39 2019 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Tue Jun 25 14:57:18 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=327a53f1
7
8 www-client/chromium: fix build with -O3
9
10 In third_party/angle/src/libANGLE/validationES.cpp three specializations
11 are declared for ValidateSamplerParameterBase(). Two implicit
12 specializations are created in ValidateSamplerParameterfvRobustANGLE()
13 and ValidateSamplerParameterIivRobustANGLE(). However, with
14 -finline-functions (default enabled with -O3) those two implicit
15 symbols are optimized out. In the end linking fails with
16 unresolved references, because functions in
17 third_party/angle/src/libANGLE/validationES3.cpp use both
18 specializations.
19
20 Closes: https://bugs.gentoo.org/681870
21 Closes: https://github.com/gentoo/gentoo/pull/12312
22 Package-Manager: Portage-2.3.66, Repoman-2.3.11
23 Signed-off-by: Stephan Hartmann <stha09 <AT> googlemail.com>
24 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
25
26 www-client/chromium/chromium-75.0.3770.100.ebuild | 1 +
27 www-client/chromium/chromium-76.0.3809.36.ebuild | 1 +
28 .../chromium/files/chromium-angle-inline.patch | 26 ++++++++++++++++++++++
29 3 files changed, 28 insertions(+)
30
31 diff --git a/www-client/chromium/chromium-75.0.3770.100.ebuild b/www-client/chromium/chromium-75.0.3770.100.ebuild
32 index 0dde4528fb7..5d8ef6d0268 100644
33 --- a/www-client/chromium/chromium-75.0.3770.100.ebuild
34 +++ b/www-client/chromium/chromium-75.0.3770.100.ebuild
35 @@ -144,6 +144,7 @@ PATCHES=(
36 "${FILESDIR}/chromium-compiler-r9.patch"
37 "${FILESDIR}/chromium-widevine-r4.patch"
38 "${FILESDIR}/chromium-fix-char_traits.patch"
39 + "${FILESDIR}/chromium-angle-inline.patch"
40 "${FILESDIR}/chromium-75-fix-gn-gen.patch"
41 "${FILESDIR}/chromium-75-gcc-angle-fix.patch"
42 "${FILESDIR}/chromium-75-unique_ptr.patch"
43
44 diff --git a/www-client/chromium/chromium-76.0.3809.36.ebuild b/www-client/chromium/chromium-76.0.3809.36.ebuild
45 index 5873a5a0710..2327e60f3ce 100644
46 --- a/www-client/chromium/chromium-76.0.3809.36.ebuild
47 +++ b/www-client/chromium/chromium-76.0.3809.36.ebuild
48 @@ -144,6 +144,7 @@ PATCHES=(
49 "${FILESDIR}/chromium-compiler-r10.patch"
50 "${FILESDIR}/chromium-widevine-r4.patch"
51 "${FILESDIR}/chromium-fix-char_traits.patch"
52 + "${FILESDIR}/chromium-angle-inline.patch"
53 "${FILESDIR}/chromium-76-quiche.patch"
54 "${FILESDIR}/chromium-76-lss.patch"
55 "${FILESDIR}/chromium-76-gcc-vulkan.patch"
56
57 diff --git a/www-client/chromium/files/chromium-angle-inline.patch b/www-client/chromium/files/chromium-angle-inline.patch
58 new file mode 100644
59 index 00000000000..8ece410f104
60 --- /dev/null
61 +++ b/www-client/chromium/files/chromium-angle-inline.patch
62 @@ -0,0 +1,26 @@
63 +From 2ee4e7f857514f4c0cbff135a1c5f968d8814d31 Mon Sep 17 00:00:00 2001
64 +From: Stephan Hartmann <stha09@××××××××××.com>
65 +Date: Sun, 23 Jun 2019 12:14:57 +0000
66 +Subject: [PATCH] explicit declaration of const GLfloat/const GLint for ValidateSamplerParameterBase
67 +
68 +---
69 + third_party/angle/src/libANGLE/validationES.cpp | 2 ++
70 + 1 file changed, 2 insertions(+)
71 +
72 +diff --git a/third_party/angle/src/libANGLE/validationES.cpp b/third_party/angle/src/libANGLE/validationES.cpp
73 +index ae353f7..fdc7ac2 100644
74 +--- a/third_party/angle/src/libANGLE/validationES.cpp
75 ++++ b/third_party/angle/src/libANGLE/validationES.cpp
76 +@@ -6089,7 +6089,9 @@ bool ValidateSamplerParameterBase(Context *context,
77 + }
78 +
79 + template bool ValidateSamplerParameterBase(Context *, GLuint, GLenum, GLsizei, bool, GLfloat *);
80 ++template bool ValidateSamplerParameterBase(Context *, GLuint, GLenum, GLsizei, bool, const GLfloat *);
81 + template bool ValidateSamplerParameterBase(Context *, GLuint, GLenum, GLsizei, bool, GLint *);
82 ++template bool ValidateSamplerParameterBase(Context *, GLuint, GLenum, GLsizei, bool, const GLint *);
83 + template bool ValidateSamplerParameterBase(Context *,
84 + GLuint,
85 + GLenum,
86 +--
87 +2.21.0
88 +