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/, www-client/chromium/files/
Date: Tue, 01 Oct 2019 20:19:49
Message-Id: 1569961146.271d3c45ed4e2800eefc7c6d7a9031d235e7994a.floppym@gentoo
1 commit: 271d3c45ed4e2800eefc7c6d7a9031d235e7994a
2 Author: Stephan Hartmann <stha09 <AT> googlemail <DOT> com>
3 AuthorDate: Tue Oct 1 13:08:23 2019 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Tue Oct 1 20:19:06 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=271d3c45
7
8 www-client/chromium: fix component-build for stable channel
9
10 Closes: https://github.com/gentoo/gentoo/pull/13116
11 Package-Manager: Portage-2.3.69, Repoman-2.3.16
12 Signed-off-by: Stephan Hartmann <stha09 <AT> googlemail.com>
13 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
14
15 www-client/chromium/chromium-77.0.3865.90.ebuild | 5 ++
16 .../chromium/files/chromium-77-gcc-alignas.patch | 72 ++++++++++++++++++++++
17 2 files changed, 77 insertions(+)
18
19 diff --git a/www-client/chromium/chromium-77.0.3865.90.ebuild b/www-client/chromium/chromium-77.0.3865.90.ebuild
20 index 8e52aecdb55..0dbd8e2289d 100644
21 --- a/www-client/chromium/chromium-77.0.3865.90.ebuild
22 +++ b/www-client/chromium/chromium-77.0.3865.90.ebuild
23 @@ -154,6 +154,7 @@ PATCHES=(
24 "${FILESDIR}/chromium-77-no-cups.patch"
25 "${FILESDIR}/chromium-77-gcc-abstract.patch"
26 "${FILESDIR}/chromium-77-gcc-include.patch"
27 + "${FILESDIR}/chromium-77-gcc-alignas.patch"
28 )
29
30 pre_build_checks() {
31 @@ -162,6 +163,10 @@ pre_build_checks() {
32 if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
33 die "At least gcc 8.0 is required"
34 fi
35 + # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
36 + if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
37 + die "Component build with tcmalloc requires FEATURES=-usersandbox."
38 + fi
39 fi
40
41 # Check build requirements, bug #541816 and bug #471810 .
42
43 diff --git a/www-client/chromium/files/chromium-77-gcc-alignas.patch b/www-client/chromium/files/chromium-77-gcc-alignas.patch
44 new file mode 100644
45 index 00000000000..3693ef50bed
46 --- /dev/null
47 +++ b/www-client/chromium/files/chromium-77-gcc-alignas.patch
48 @@ -0,0 +1,72 @@
49 +From 6b633c4b14850df376d5cec571699018772f358e Mon Sep 17 00:00:00 2001
50 +From: Tomas Popela <tomas.popela@×××××.com>
51 +Date: Tue, 17 Sep 2019 19:48:48 +0000
52 +Subject: [PATCH] GCC: Can't use alignas() together with __attribute__()
53 +
54 +It's because GCC has problems when mixing the alignas() together with
55 +__attribute__() (that is used to export the symbols). The best
56 +solution is to use ALIGNAS() macro from //base/compiler_specific.h
57 +together with alignof() to have the equal functionality that compiles on
58 +GCC as well as on clang.
59 +
60 +Bug: 819294
61 +Change-Id: Ieb169592a2965f17a18bfc88d28418eb723a4e5a
62 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1806735
63 +Auto-Submit: Tomáš Popela <tomas.popela@×××××.com>
64 +Commit-Queue: Alex Clarke <alexclarke@××××××××.org>
65 +Reviewed-by: Alex Clarke <alexclarke@××××××××.org>
66 +Cr-Commit-Position: refs/heads/master@{#697330}
67 +---
68 +
69 +diff --git a/base/task/promise/dependent_list.h b/base/task/promise/dependent_list.h
70 +index 020bdbfc..3245c1c 100644
71 +--- a/base/task/promise/dependent_list.h
72 ++++ b/base/task/promise/dependent_list.h
73 +@@ -59,7 +59,7 @@
74 +
75 + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can
76 + // be used to store additional state (see static_asserts below).
77 +- class BASE_EXPORT alignas(8) Node {
78 ++ class BASE_EXPORT ALIGNAS(8) Node {
79 + public:
80 + Node();
81 + explicit Node(Node&& other) noexcept;
82 +
83 +From 8148fd96ae04a1150a9c6012634dcd2a7335f87a Mon Sep 17 00:00:00 2001
84 +From: Tomas Popela <tomas.popela@×××××.com>
85 +Date: Tue, 20 Aug 2019 05:23:14 +0000
86 +Subject: [PATCH] GCC: Can't use alignas() together with __attribute__()
87 +
88 +It's because GCC has problems when mixing the alignas() together with
89 +__attribute__() (that is used to export the symbols). The best
90 +solution is to use ALIGNAS() macro from //base/compiler_specific.h
91 +together with alignof() to have the equal functionality that compiles on
92 +GCC as well as on clang.
93 +
94 +This is a regression after https://crrev.com/659933.
95 +
96 +Bug: 994581
97 +Change-Id: Ia376866ff9ac57d52d2e907fa325ae5a51893d07
98 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1758064
99 +Reviewed-by: Eric Willigers <ericwilligers@××××××××.org>
100 +Commit-Queue: Eric Willigers <ericwilligers@××××××××.org>
101 +Commit-Queue: Tomáš Popela <tomas.popela@×××××.com>
102 +Auto-Submit: Tomáš Popela <tomas.popela@×××××.com>
103 +Cr-Commit-Position: refs/heads/master@{#688417}
104 +---
105 +
106 +diff --git a/third_party/blink/renderer/core/css/css_property_value_set.h b/third_party/blink/renderer/core/css/css_property_value_set.h
107 +index 67b353d..1bd404e 100644
108 +--- a/third_party/blink/renderer/core/css/css_property_value_set.h
109 ++++ b/third_party/blink/renderer/core/css/css_property_value_set.h
110 +@@ -175,8 +175,8 @@
111 + DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser);
112 + };
113 +
114 +-class CORE_EXPORT alignas(Member<const CSSValue>) alignas(
115 +- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet
116 ++class CORE_EXPORT ALIGNAS(alignof(Member<const CSSValue>))
117 ++ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet
118 + : public CSSPropertyValueSet {
119 + public:
120 + ImmutableCSSPropertyValueSet(const CSSPropertyValue*,