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: Mon, 15 Oct 2018 04:59:14
Message-Id: 1539579542.b04680338806ed8c7c345da7f65af6673d35d59b.floppym@gentoo
1 commit: b04680338806ed8c7c345da7f65af6673d35d59b
2 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
3 AuthorDate: Mon Oct 15 04:58:03 2018 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Mon Oct 15 04:59:02 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0468033
7
8 www-client/chromium: dev channel bump (71.0.3573.0)
9
10 Package-Manager: Portage-2.3.50_p14, Repoman-2.3.11_p21
11 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
12
13 www-client/chromium/Manifest | 2 +-
14 ...0.3554.4.ebuild => chromium-71.0.3573.0.ebuild} | 41 +++--
15 www-client/chromium/files/chromium-ceil-r0.patch | 59 +++++++
16 .../chromium/files/chromium-compiler-r6.patch | 170 +++++++++++++++++++++
17 .../chromium/files/chromium-widevine-r3.patch | 23 +++
18 5 files changed, 279 insertions(+), 16 deletions(-)
19
20 diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
21 index 0dc8a80d14f..f9246fe25f2 100644
22 --- a/www-client/chromium/Manifest
23 +++ b/www-client/chromium/Manifest
24 @@ -1,5 +1,5 @@
25 DIST chromium-69.0.3497.100.tar.xz 617374764 BLAKE2B 45805e7a743982c167974cbe223b126dad83cca2eca6c78b6fe707431b2df45cb30271c0ee5002839c84f661260063852a1e1a913d26a073a87fb20e7b4d964e SHA512 bc9dd4a63eb9a8c369bd360f7fd0fb9b72addfa553e9a9d8adbfafe7ec4af39ec1fb3dd6523af1f17cb141aaf017ca4b6abc357c4a595ff627e88c58e87e8f6f
26 DIST chromium-70.0.3538.45.tar.xz 622986816 BLAKE2B f21d7755251e62c52dd8ea7a7e3300b77c8ca361671632e778becd68ff205c4d84386b7feab12aeb1f18082a79dca4d69a414294c2055bbb29ef448a27c783e0 SHA512 a5f87fd765e7cb9b07ffa3b04aed2d5a7f94c213de6b9d0abcb3e1e8e640e3b70e44d233c2865b418a021285fd1e797db49e3e9dd1cc9ac24f815419d57132a1
27 DIST chromium-70.0.3538.54.tar.xz 623081708 BLAKE2B 795bb43b3f36f9caedd72959446398b3129de7428fa055427aca8df962cb10f450ebaa32ae9bb538fd2d6842c198cab6e8eb9a4f7d2f7c74c5d6abfd75740669 SHA512 c20ee15f6f0856940ac6696de6fe258c528719101c10ef8f04773355e9c60a41eba5c3ace75f5be368c9b8107a3c5053bf56727aa3626ad012f8cd5371eb7d0e
28 -DIST chromium-71.0.3554.4.tar.xz 626667348 BLAKE2B 4cdbd7041fd087c860bfc5c731073713ac01059fa388de10684058a81178d007e6fe2ad2bf6ce58a44b5489b24ded1a29862f98dd8f9ec8484e5e0d9d7a2e38e SHA512 ad4c6bc8ab857bf1a928b959129f5b64c1333f109cc7a5482f3bea3cab070faee85e41128acc4d9e479a312dd66ec201cf115e2dd8e35587f1bdd95ff78dfd18
29 DIST chromium-71.0.3559.6.tar.xz 626881656 BLAKE2B 4712e7bb9c7018ed4ace7f8d7d7c313e26c6a156c937084f5553e18bd38edd98536b09e867718ed1e9e561c3f39ddc6de4802b780e33d72f1329f636fa356250 SHA512 12ba43ee94aa185d13035c01755b0166082fe4831f1787e755de11a9b6121c0384eb04352f0582659a23908acc4544db359a30e0f22715d69f357c8a1baa3aac
30 +DIST chromium-71.0.3573.0.tar.xz 626729588 BLAKE2B 5fc5b030f8bfef2721234026ba5411896795132592db2c4732f98b08d74b31ed2fe9b59efc78754b5f72d5908f1d5ccb1054abdead51c53235c1118fa91b2cbf SHA512 27a8dd60dc319b33d954440b1e8aac382a4fe6afaca88e63175b72c6040c5bb5653d01ecabd8e8ebd99d954781299fa3bf44518c0fc396d9d56a97bdb1291503
31
32 diff --git a/www-client/chromium/chromium-71.0.3554.4.ebuild b/www-client/chromium/chromium-71.0.3573.0.ebuild
33 similarity index 95%
34 rename from www-client/chromium/chromium-71.0.3554.4.ebuild
35 rename to www-client/chromium/chromium-71.0.3573.0.ebuild
36 index d01d061f6ab..4b58a52df69 100644
37 --- a/www-client/chromium/chromium-71.0.3554.4.ebuild
38 +++ b/www-client/chromium/chromium-71.0.3573.0.ebuild
39 @@ -1,14 +1,14 @@
40 # Copyright 1999-2018 Gentoo Authors
41 # Distributed under the terms of the GNU General Public License v2
42
43 -EAPI="6"
44 +EAPI=7
45 PYTHON_COMPAT=( python2_7 )
46
47 CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
48 hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
49 sv sw ta te th tr uk vi zh-CN zh-TW"
50
51 -inherit check-reqs chromium-2 eutils gnome2-utils flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
52 +inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
53
54 DESCRIPTION="Open-source version of Google Chrome web browser"
55 HOMEPAGE="http://chromium.org/"
56 @@ -89,6 +89,8 @@ RDEPEND="${COMMON_DEPEND}
57 # dev-vcs/git - https://bugs.gentoo.org/593476
58 # sys-apps/sandbox - https://crbug.com/586444
59 DEPEND="${COMMON_DEPEND}
60 +"
61 +BDEPEND="
62 >=app-arch/gzip-1.7
63 !arm? (
64 dev-lang/yasm
65 @@ -101,11 +103,16 @@ DEPEND="${COMMON_DEPEND}
66 sys-apps/hwids[usb(+)]
67 >=sys-devel/bison-2.4.3
68 sys-devel/flex
69 - >=sys-devel/clang-5
70 virtual/pkgconfig
71 dev-vcs/git
72 "
73
74 +: ${CHROMIUM_FORCE_CLANG=yes}
75 +
76 +if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
77 + BDEPEND+=" >=sys-devel/clang-5"
78 +fi
79 +
80 if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
81 EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
82 fi
83 @@ -130,12 +137,13 @@ GTK+ icon theme.
84 "
85
86 PATCHES=(
87 - "${FILESDIR}/chromium-compiler-r4.patch"
88 - "${FILESDIR}/chromium-widevine-r2.patch"
89 + "${FILESDIR}/chromium-compiler-r6.patch"
90 + "${FILESDIR}/chromium-widevine-r3.patch"
91 "${FILESDIR}/chromium-webrtc-r0.patch"
92 "${FILESDIR}/chromium-memcpy-r0.patch"
93 "${FILESDIR}/chromium-math.h-r0.patch"
94 "${FILESDIR}/chromium-stdint.patch"
95 + "${FILESDIR}/chromium-ceil-r0.patch"
96 )
97
98 pre_build_checks() {
99 @@ -154,14 +162,12 @@ pre_build_checks() {
100 # Check build requirements, bug #541816 and bug #471810 .
101 CHECKREQS_MEMORY="3G"
102 CHECKREQS_DISK_BUILD="5G"
103 - eshopts_push -s extglob
104 - if is-flagq '-g?(gdb)?([1-9])'; then
105 + if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
106 CHECKREQS_DISK_BUILD="25G"
107 if ! use component-build; then
108 CHECKREQS_MEMORY="16G"
109 fi
110 fi
111 - eshopts_pop
112 check-reqs_pkg_setup
113 }
114
115 @@ -317,6 +323,7 @@ src_prepare() {
116 third_party/skia/third_party/vulkan
117 third_party/smhasher
118 third_party/spirv-headers
119 + third_party/SPIRV-Tools
120 third_party/spirv-tools-angle
121 third_party/sqlite
122 third_party/swiftshader
123 @@ -380,7 +387,7 @@ src_configure() {
124 # Make sure the build system will use the right tools, bug #340795.
125 tc-export AR CC CXX NM
126
127 - if ! tc-is-clang; then
128 + if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
129 # Force clang since gcc is pretty broken at the moment.
130 CC=${CHOST}-clang
131 CXX=${CHOST}-clang++
132 @@ -677,17 +684,21 @@ src_install() {
133 readme.gentoo_create_doc
134 }
135
136 -pkg_preinst() {
137 - gnome2_icon_savelist
138 -}
139 -
140 pkg_postrm() {
141 - gnome2_icon_cache_update
142 + if type gtk-update-icon-cache &>/dev/null; then
143 + ebegin "Updating GTK icon cache"
144 + gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
145 + eend $?
146 + fi
147 xdg_desktop_database_update
148 }
149
150 pkg_postinst() {
151 - gnome2_icon_cache_update
152 + if type gtk-update-icon-cache &>/dev/null; then
153 + ebegin "Updating GTK icon cache"
154 + gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
155 + eend $?
156 + fi
157 xdg_desktop_database_update
158 readme.gentoo_print_elog
159 }
160
161 diff --git a/www-client/chromium/files/chromium-ceil-r0.patch b/www-client/chromium/files/chromium-ceil-r0.patch
162 new file mode 100644
163 index 00000000000..9e7f2a7392e
164 --- /dev/null
165 +++ b/www-client/chromium/files/chromium-ceil-r0.patch
166 @@ -0,0 +1,59 @@
167 +From cc843eb64f6599d9ede176f711fe6355015c30b1 Mon Sep 17 00:00:00 2001
168 +From: Raphael Kubo da Costa <raphael.kubo.da.costa@×××××.com>
169 +Date: Mon, 8 Oct 2018 22:33:38 +0000
170 +Subject: [PATCH] PictureLayerImpl: Use ceil() instead of ceilf()
171 +MIME-Version: 1.0
172 +Content-Type: text/plain; charset=UTF-8
173 +Content-Transfer-Encoding: 8bit
174 +
175 +ceilf() is only formally mentioned in C++17, even though previous versions
176 +of the standard say <cmath> should have the same contents as C's math.h.
177 +
178 +libstdc++ does not ship ceilf() in its cmath, but the ceil(float) overload
179 +that _is_ in the standard is available everywhere, so use that instead.
180 +
181 +This fixes the build with libstdc++ after 77b67445ba ("Elements with fixed
182 +bottom and top stick to top"):
183 +
184 + ../../cc/layers/picture_layer_impl.cc: In member function ‘void cc::PictureLayerImpl::UpdateViewportRectForTilePriorityInContentSpace()’:
185 + ../../cc/layers/picture_layer_impl.cc:738:16: error: ‘ceilf’ is not a member of ‘std’
186 + std::ceilf(-total_controls_height * hidden_ratio)); // bottom
187 + ^~~~~
188 + ../../cc/layers/picture_layer_impl.cc:738:16: note: suggested alternative: ‘ceil’
189 + std::ceilf(-total_controls_height * hidden_ratio)); // bottom
190 + ^~~~~
191 + ceil
192 +
193 +Bug: 819294
194 +Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
195 +Change-Id: Ida69eb3127ca132e7090c9aad0dd17dc314b6992
196 +Reviewed-on: https://chromium-review.googlesource.com/c/1264537
197 +Commit-Queue: David Bokan <bokan@××××××××.org>
198 +Reviewed-by: David Bokan <bokan@××××××××.org>
199 +Cr-Commit-Position: refs/heads/master@{#597709}
200 +---
201 + cc/layers/picture_layer_impl.cc | 8 ++++----
202 + 1 file changed, 4 insertions(+), 4 deletions(-)
203 +
204 +diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
205 +index 937255884a6e..020bcee55201 100644
206 +--- a/cc/layers/picture_layer_impl.cc
207 ++++ b/cc/layers/picture_layer_impl.cc
208 +@@ -727,10 +727,10 @@ void PictureLayerImpl::UpdateViewportRectForTilePriorityInContentSpace() {
209 + 1.f - layer_tree_impl()->CurrentBrowserControlsShownRatio();
210 +
211 + viewport_rect_for_tile_priority_in_content_space_.Inset(
212 +- 0, // left
213 +- 0, // top,
214 +- 0, // right,
215 +- std::ceilf(-total_controls_height * hidden_ratio)); // bottom
216 ++ 0, // left
217 ++ 0, // top,
218 ++ 0, // right,
219 ++ std::ceil(-total_controls_height * hidden_ratio)); // bottom
220 + }
221 + }
222 + }
223 +--
224 +2.19.1
225 +
226
227 diff --git a/www-client/chromium/files/chromium-compiler-r6.patch b/www-client/chromium/files/chromium-compiler-r6.patch
228 new file mode 100644
229 index 00000000000..db8d04649fd
230 --- /dev/null
231 +++ b/www-client/chromium/files/chromium-compiler-r6.patch
232 @@ -0,0 +1,170 @@
233 +From cec10e55fdb150b33342ad462907fb6202de364e Mon Sep 17 00:00:00 2001
234 +From: Mike Gilbert <floppym@g.o>
235 +Date: Wed, 25 Apr 2018 13:22:49 -0400
236 +Subject: [PATCH] Disable various compiler configs
237 +
238 +---
239 + build/config/compiler/BUILD.gn | 63 ++++++++++------------------------
240 + 1 file changed, 18 insertions(+), 45 deletions(-)
241 +
242 +diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
243 +index 0f7a6b48f7b2..c91b702147d4 100644
244 +--- a/build/config/compiler/BUILD.gn
245 ++++ b/build/config/compiler/BUILD.gn
246 +@@ -236,8 +236,6 @@ config("compiler") {
247 +
248 + configs += [
249 + # See the definitions below.
250 +- ":clang_revision",
251 +- ":compiler_cpu_abi",
252 + ":compiler_codegen",
253 + ]
254 +
255 +@@ -502,17 +500,6 @@ config("compiler") {
256 + }
257 + }
258 +
259 +- if (is_clang && !is_nacl && !use_xcode_clang) {
260 +- cflags += [
261 +- # TODO(hans): Remove this once Clang generates better optimized debug info
262 +- # by default. https://crbug.com/765793
263 +- "-Xclang",
264 +- "-mllvm",
265 +- "-Xclang",
266 +- "-instcombine-lower-dbg-declare=0",
267 +- ]
268 +- }
269 +-
270 + # Print absolute paths in diagnostics. There is no precedent for doing this
271 + # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
272 + # Windows developers rely on it (crbug.com/636109) so only do this on Windows.
273 +@@ -1498,13 +1485,6 @@ config("default_warnings") {
274 + cflags += [
275 + # TODO(thakis): https://crbug.com/753973
276 + "-Wno-enum-compare-switch",
277 +-
278 +- # Ignore warnings about MSVC optimization pragmas.
279 +- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314
280 +- "-Wno-ignored-pragma-optimize",
281 +-
282 +- # TODO(hans): https://crbug.com/890307
283 +- "-Wno-defaulted-function-deleted",
284 + ]
285 + }
286 + }
287 +@@ -1546,22 +1526,6 @@ config("chromium_code") {
288 + "__STDC_FORMAT_MACROS",
289 + ]
290 +
291 +- if (!is_debug && !using_sanitizer &&
292 +- (!is_linux || !is_clang || is_official_build) &&
293 +- current_cpu != "s390x" && current_cpu != "s390" &&
294 +- current_cpu != "ppc64" && current_cpu != "ppc64" &&
295 +- current_cpu != "mips" && current_cpu != "mips64") {
296 +- # _FORTIFY_SOURCE isn't really supported by Clang now, see
297 +- # http://llvm.org/bugs/show_bug.cgi?id=16821.
298 +- # It seems to work fine with Ubuntu 12 headers though, so use it in
299 +- # official builds.
300 +- #
301 +- # Non-chromium code is not guaranteed to compile cleanly with
302 +- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
303 +- # disabled, so only do that for Release build.
304 +- defines += [ "_FORTIFY_SOURCE=2" ]
305 +- }
306 +-
307 + if (is_mac) {
308 + cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
309 + cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
310 +@@ -1931,7 +1895,8 @@ config("default_stack_frames") {
311 + }
312 +
313 + # Default "optimization on" config.
314 +-config("optimize") {
315 ++config("optimize") { }
316 ++config("xoptimize") {
317 + if (is_win) {
318 + # TODO(thakis): Remove is_clang here, https://crbug.com/598772
319 + if (is_official_build && full_wpo_on_official && !is_clang) {
320 +@@ -1965,7 +1930,8 @@ config("optimize") {
321 + }
322 +
323 + # Same config as 'optimize' but without the WPO flag.
324 +-config("optimize_no_wpo") {
325 ++config("optimize_no_wpo") { }
326 ++config("xoptimize_no_wpo") {
327 + if (is_win) {
328 + # Favor size over speed, /O1 must be before the common flags. The GYP
329 + # build also specifies /Os and /GF but these are implied by /O1.
330 +@@ -1988,7 +1954,8 @@ config("optimize_no_wpo") {
331 + }
332 +
333 + # Turn off optimizations.
334 +-config("no_optimize") {
335 ++config("no_optimize") { }
336 ++config("xno_optimize") {
337 + if (is_win) {
338 + cflags = [
339 + "/Od", # Disable optimization.
340 +@@ -2012,7 +1979,8 @@ config("no_optimize") {
341 + # Turns up the optimization level. On Windows, this implies whole program
342 + # optimization and link-time code generation which is very expensive and should
343 + # be used sparingly.
344 +-config("optimize_max") {
345 ++config("optimize_max") { }
346 ++config("xoptimize_max") {
347 + if (is_nacl && is_nacl_irt) {
348 + # The NaCl IRT is a special case and always wants its own config.
349 + # Various components do:
350 +@@ -2059,7 +2027,8 @@ config("optimize_max") {
351 + #
352 + # TODO(crbug.com/621335) - rework how all of these configs are related
353 + # so that we don't need this disclaimer.
354 +-config("optimize_speed") {
355 ++config("optimize_speed") { }
356 ++config("xoptimize_speed") {
357 + if (is_nacl && is_nacl_irt) {
358 + # The NaCl IRT is a special case and always wants its own config.
359 + # Various components do:
360 +@@ -2097,7 +2066,8 @@ config("optimize_speed") {
361 + }
362 + }
363 +
364 +-config("optimize_fuzzing") {
365 ++config("optimize_fuzzing") { }
366 ++config("xoptimize_fuzzing") {
367 + cflags = [ "-O1" ] + common_optimize_on_cflags
368 + ldflags = common_optimize_on_ldflags
369 + visibility = [ ":default_optimization" ]
370 +@@ -2183,7 +2153,8 @@ config("afdo") {
371 + # configs += [ "//build/config/compiler:symbols" ]
372 +
373 + # Full symbols.
374 +-config("symbols") {
375 ++config("symbols") { }
376 ++config("xsymbols") {
377 + if (is_win) {
378 + if (use_goma || is_clang) {
379 + # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
380 +@@ -2281,7 +2252,8 @@ config("symbols") {
381 + # Minimal symbols.
382 + # This config guarantees to hold symbol for stack trace which are shown to user
383 + # when crash happens in unittests running on buildbot.
384 +-config("minimal_symbols") {
385 ++config("minimal_symbols") { }
386 ++config("xminimal_symbols") {
387 + if (is_win) {
388 + # Linker symbols for backtraces only.
389 + cflags = []
390 +@@ -2321,7 +2293,8 @@ config("minimal_symbols") {
391 + }
392 +
393 + # No symbols.
394 +-config("no_symbols") {
395 ++config("no_symbols") { }
396 ++config("xno_symbols") {
397 + if (!is_win) {
398 + cflags = [ "-g0" ]
399 + asmflags = cflags
400 +--
401 +2.19.1
402 +
403
404 diff --git a/www-client/chromium/files/chromium-widevine-r3.patch b/www-client/chromium/files/chromium-widevine-r3.patch
405 new file mode 100644
406 index 00000000000..a126084563c
407 --- /dev/null
408 +++ b/www-client/chromium/files/chromium-widevine-r3.patch
409 @@ -0,0 +1,23 @@
410 +From 5818fdbef3d399fe1bfbb56f81e59184e1a8e467 Mon Sep 17 00:00:00 2001
411 +From: Mike Gilbert <floppymaster@×××××.com>
412 +Date: Sun, 14 Oct 2018 20:04:03 -0400
413 +Subject: [PATCH] Define WIDEVINE_CDM_VERSION_STRING
414 +
415 +---
416 + third_party/widevine/cdm/widevine_cdm_version.h | 1 +
417 + 1 file changed, 1 insertion(+)
418 +
419 +diff --git a/third_party/widevine/cdm/widevine_cdm_version.h b/third_party/widevine/cdm/widevine_cdm_version.h
420 +index dd6efed02646..eaa017197e61 100644
421 +--- a/third_party/widevine/cdm/widevine_cdm_version.h
422 ++++ b/third_party/widevine/cdm/widevine_cdm_version.h
423 +@@ -11,5 +11,6 @@
424 + // If the Widevine CDM is available define the following:
425 + // - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
426 + // as a string, e.g., "1.0.123.456").
427 ++#define WIDEVINE_CDM_VERSION_STRING "unknown"
428 +
429 + #endif // WIDEVINE_CDM_VERSION_H_
430 +--
431 +2.19.1
432 +