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/
Date: Thu, 13 Dec 2018 04:41:36
Message-Id: 1544676085.998c4962994456a225544f56af1c3466a90698df.floppym@gentoo
1 commit: 998c4962994456a225544f56af1c3466a90698df
2 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
3 AuthorDate: Thu Dec 13 02:08:03 2018 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Thu Dec 13 04:41:25 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=998c4962
7
8 www-client/chromium: remove old
9
10 Package-Manager: Portage-2.3.52_p8, Repoman-2.3.12_p20
11 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
12
13 www-client/chromium/Manifest | 2 -
14 www-client/chromium/chromium-70.0.3538.110.ebuild | 711 ---------------------
15 www-client/chromium/chromium-71.0.3578.62.ebuild | 713 ----------------------
16 3 files changed, 1426 deletions(-)
17
18 diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
19 index 26adc675e5e..130bee3cceb 100644
20 --- a/www-client/chromium/Manifest
21 +++ b/www-client/chromium/Manifest
22 @@ -1,4 +1,2 @@
23 -DIST chromium-70.0.3538.110.tar.xz 623056692 BLAKE2B 2242310df67d3a3137fe17d02808be2fcf2e478f74744860e5a3b67e540f58ae5b6df36cc5483ccf91656a85229b879176cf9a81fcf681c5788c3e4e92b032ba SHA512 8989b92315304567b9a6ece074938b97aaadcd117b99c73bf2a599b8544a1726f5b5dc1e6245db2a5eb6ad12b952ded578b87ba405b3c177a1315e34c3143f6b
24 -DIST chromium-71.0.3578.62.tar.xz 633783044 BLAKE2B 85c5eeef05159aa4d5e07b450183fae2f9e352317b0449471a8b53bbcf501a0df620aa3720f20a5fe98c2992762b7c9863823c5bc9b78216929b539cd2393f5f SHA512 2f8cb403f8a0991dc56714df87a2320b5c9d0d33ec5d2a8be81367b110dcdb455ad64795b01acb2f27c5d614f94bea82bce9a5c6f045a87f2183e43b6cceca76
25 DIST chromium-71.0.3578.80.tar.xz 633878288 BLAKE2B be6dcb4c1123830f8f0413e52e46c6e3356356cbfadcaa77c3960f22a6f1f2f5a7a2e7da415b7c19b75d6cd4b881d45a8aeaa7c311547ac58fc34c87fdf23891 SHA512 79b0f5ebe71a34d9f5215df1b4e47071f2337bb480fbec591011653acdfe524419bd10efdeab334ac34c07bc4eb2c485d60a9c3b2f053a721271130ff98af516
26 DIST chromium-72.0.3595.2.tar.xz 658797888 BLAKE2B 7f0274693e8fac283d75c7e7ff6f672a10937454d989e9aa728b4a9646fe92bd8aaa8c154913d71dd86fd7ced595c1b2475248a9fb521984049af04f289f3f43 SHA512 7d5130e45e28ccf7389c64ca24a12ffc84922ca40d2c0e9a2d9caf27eb40a08cfdda8a902c6d747f864071b6eec752287fe2654f62e7e6c5c42c1334c5f35766
27
28 diff --git a/www-client/chromium/chromium-70.0.3538.110.ebuild b/www-client/chromium/chromium-70.0.3538.110.ebuild
29 deleted file mode 100644
30 index 0b329169bad..00000000000
31 --- a/www-client/chromium/chromium-70.0.3538.110.ebuild
32 +++ /dev/null
33 @@ -1,711 +0,0 @@
34 -# Copyright 1999-2018 Gentoo Authors
35 -# Distributed under the terms of the GNU General Public License v2
36 -
37 -EAPI="6"
38 -PYTHON_COMPAT=( python2_7 )
39 -
40 -CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
41 - 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
42 - sv sw ta te th tr uk vi zh-CN zh-TW"
43 -
44 -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
45 -
46 -DESCRIPTION="Open-source version of Google Chrome web browser"
47 -HOMEPAGE="http://chromium.org/"
48 -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
49 -
50 -LICENSE="BSD"
51 -SLOT="0"
52 -KEYWORDS="amd64 ~x86"
53 -IUSE="component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine"
54 -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
55 -
56 -COMMON_DEPEND="
57 - app-accessibility/at-spi2-atk:2
58 - app-arch/bzip2:=
59 - cups? ( >=net-print/cups-1.3.11:= )
60 - dev-libs/atk
61 - dev-libs/expat:=
62 - dev-libs/glib:2
63 - system-icu? ( >=dev-libs/icu-59:= )
64 - >=dev-libs/libxml2-2.9.4-r3:=[icu]
65 - dev-libs/libxslt:=
66 - dev-libs/nspr:=
67 - >=dev-libs/nss-3.26:=
68 - >=dev-libs/re2-0.2016.05.01:=
69 - gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
70 - >=media-libs/alsa-lib-1.0.19:=
71 - media-libs/fontconfig:=
72 - media-libs/freetype:=
73 - >=media-libs/harfbuzz-2.0.0:0=[icu(-)]
74 - media-libs/libjpeg-turbo:=
75 - media-libs/libpng:=
76 - system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
77 - >=media-libs/openh264-1.6.0:=
78 - pulseaudio? ( media-sound/pulseaudio:= )
79 - system-ffmpeg? (
80 - >=media-video/ffmpeg-4:=
81 - || (
82 - media-video/ffmpeg[-samba]
83 - >=net-fs/samba-4.5.10-r1[-debug(-)]
84 - )
85 - !=net-fs/samba-4.5.12-r0
86 - media-libs/opus:=
87 - )
88 - sys-apps/dbus:=
89 - sys-apps/pciutils:=
90 - virtual/udev
91 - x11-libs/cairo:=
92 - x11-libs/gdk-pixbuf:2
93 - x11-libs/gtk+:3[X]
94 - x11-libs/libX11:=
95 - x11-libs/libXcomposite:=
96 - x11-libs/libXcursor:=
97 - x11-libs/libXdamage:=
98 - x11-libs/libXext:=
99 - x11-libs/libXfixes:=
100 - >=x11-libs/libXi-1.6.0:=
101 - x11-libs/libXrandr:=
102 - x11-libs/libXrender:=
103 - x11-libs/libXScrnSaver:=
104 - x11-libs/libXtst:=
105 - x11-libs/pango:=
106 - app-arch/snappy:=
107 - media-libs/flac:=
108 - >=media-libs/libwebp-0.4.0:=
109 - sys-libs/zlib:=[minizip]
110 - kerberos? ( virtual/krb5 )
111 -"
112 -# For nvidia-drivers blocker, see bug #413637 .
113 -RDEPEND="${COMMON_DEPEND}
114 - !<www-plugins/chrome-binary-plugins-57
115 - x11-misc/xdg-utils
116 - virtual/opengl
117 - virtual/ttf-fonts
118 - selinux? ( sec-policy/selinux-chromium )
119 - tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
120 - widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
121 -"
122 -# dev-vcs/git - https://bugs.gentoo.org/593476
123 -# sys-apps/sandbox - https://crbug.com/586444
124 -DEPEND="${COMMON_DEPEND}
125 - >=app-arch/gzip-1.7
126 - !arm? (
127 - dev-lang/yasm
128 - )
129 - dev-lang/perl
130 - dev-util/gn
131 - >=dev-util/gperf-3.0.3
132 - >=dev-util/ninja-1.7.2
133 - >=net-libs/nodejs-7.6.0[inspector]
134 - sys-apps/hwids[usb(+)]
135 - >=sys-devel/bison-2.4.3
136 - sys-devel/flex
137 - virtual/pkgconfig
138 - dev-vcs/git
139 -"
140 -
141 -: ${CHROMIUM_FORCE_CLANG=no}
142 -
143 -if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
144 - DEPEND+=" >=sys-devel/clang-5"
145 -fi
146 -
147 -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
148 - EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
149 -fi
150 -
151 -DISABLE_AUTOFORMATTING="yes"
152 -DOC_CONTENTS="
153 -Some web pages may require additional fonts to display properly.
154 -Try installing some of the following packages if some characters
155 -are not displayed properly:
156 -- media-fonts/arphicfonts
157 -- media-fonts/droid
158 -- media-fonts/ipamonafont
159 -- media-fonts/noto
160 -- media-fonts/ja-ipafonts
161 -- media-fonts/takao-fonts
162 -- media-fonts/wqy-microhei
163 -- media-fonts/wqy-zenhei
164 -
165 -To fix broken icons on the Downloads page, you should install an icon
166 -theme that covers the appropriate MIME types, and configure this as your
167 -GTK+ icon theme.
168 -"
169 -
170 -PATCHES=(
171 - "${FILESDIR}/chromium-compiler-r4.patch"
172 - "${FILESDIR}/chromium-widevine-r2.patch"
173 - "${FILESDIR}/chromium-webrtc-r0.patch"
174 - "${FILESDIR}/chromium-memcpy-r0.patch"
175 - "${FILESDIR}/chromium-math.h-r0.patch"
176 - "${FILESDIR}/chromium-stdint.patch"
177 - "${FILESDIR}/chromium-pdfium-stdlib-r0.patch"
178 - "${FILESDIR}/chromium-harfbuzz-r0.patch"
179 - "${FILESDIR}/chromium-70-gcc-0.patch"
180 - "${FILESDIR}/chromium-70-gcc-1.patch"
181 - "${FILESDIR}/chromium-70-gcc-2.patch"
182 -)
183 -
184 -pre_build_checks() {
185 - #if [[ ${MERGE_TYPE} != binary ]]; then
186 - # local -x CPP="$(tc-getCXX) -E"
187 - # if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then
188 - # # bugs: #601654
189 - # die "At least clang 3.9.1 is required"
190 - # fi
191 - # if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then
192 - # # bugs: #535730, #525374, #518668, #600288, #627356
193 - # die "At least gcc 5.0 is required"
194 - # fi
195 - #fi
196 -
197 - # Check build requirements, bug #541816 and bug #471810 .
198 - CHECKREQS_MEMORY="3G"
199 - CHECKREQS_DISK_BUILD="5G"
200 - eshopts_push -s extglob
201 - if is-flagq '-g?(gdb)?([1-9])'; then
202 - CHECKREQS_DISK_BUILD="25G"
203 - if ! use component-build; then
204 - CHECKREQS_MEMORY="16G"
205 - fi
206 - fi
207 - eshopts_pop
208 - check-reqs_pkg_setup
209 -}
210 -
211 -pkg_pretend() {
212 - pre_build_checks
213 -}
214 -
215 -pkg_setup() {
216 - pre_build_checks
217 -
218 - chromium_suid_sandbox_check_kernel_config
219 -}
220 -
221 -src_prepare() {
222 - # Calling this here supports resumption via FEATURES=keepwork
223 - python_setup
224 -
225 - default
226 -
227 - mkdir -p third_party/node/linux/node-linux-x64/bin || die
228 - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
229 -
230 - local keeplibs=(
231 - base/third_party/dmg_fp
232 - base/third_party/dynamic_annotations
233 - base/third_party/icu
234 - base/third_party/nspr
235 - base/third_party/superfasthash
236 - base/third_party/symbolize
237 - base/third_party/valgrind
238 - base/third_party/xdg_mime
239 - base/third_party/xdg_user_dirs
240 - buildtools/third_party/libc++
241 - buildtools/third_party/libc++abi
242 - chrome/third_party/mozilla_security_manager
243 - courgette/third_party
244 - net/third_party/http2
245 - net/third_party/mozilla_security_manager
246 - net/third_party/nss
247 - net/third_party/quic
248 - net/third_party/spdy
249 - net/third_party/uri_template
250 - third_party/WebKit
251 - third_party/abseil-cpp
252 - third_party/analytics
253 - third_party/angle
254 - third_party/angle/src/common/third_party/base
255 - third_party/angle/src/common/third_party/smhasher
256 - third_party/angle/src/third_party/compiler
257 - third_party/angle/src/third_party/libXNVCtrl
258 - third_party/angle/src/third_party/trace_event
259 - third_party/angle/third_party/glslang
260 - third_party/angle/third_party/spirv-headers
261 - third_party/angle/third_party/spirv-tools
262 - third_party/angle/third_party/vulkan-headers
263 - third_party/angle/third_party/vulkan-loader
264 - third_party/angle/third_party/vulkan-tools
265 - third_party/angle/third_party/vulkan-validation-layers
266 - third_party/apple_apsl
267 - third_party/blink
268 - third_party/boringssl
269 - third_party/boringssl/src/third_party/fiat
270 - third_party/breakpad
271 - third_party/breakpad/breakpad/src/third_party/curl
272 - third_party/brotli
273 - third_party/cacheinvalidation
274 - third_party/catapult
275 - third_party/catapult/common/py_vulcanize/third_party/rcssmin
276 - third_party/catapult/common/py_vulcanize/third_party/rjsmin
277 - third_party/catapult/third_party/beautifulsoup4
278 - third_party/catapult/third_party/html5lib-python
279 - third_party/catapult/third_party/polymer
280 - third_party/catapult/third_party/six
281 - third_party/catapult/tracing/third_party/d3
282 - third_party/catapult/tracing/third_party/gl-matrix
283 - third_party/catapult/tracing/third_party/jszip
284 - third_party/catapult/tracing/third_party/mannwhitneyu
285 - third_party/catapult/tracing/third_party/oboe
286 - third_party/catapult/tracing/third_party/pako
287 - third_party/ced
288 - third_party/cld_3
289 - third_party/crashpad
290 - third_party/crashpad/crashpad/third_party/zlib
291 - third_party/crc32c
292 - third_party/cros_system_api
293 - third_party/devscripts
294 - third_party/dom_distiller_js
295 - third_party/fips181
296 - third_party/flatbuffers
297 - third_party/flot
298 - third_party/freetype
299 - third_party/glslang-angle
300 - third_party/google_input_tools
301 - third_party/google_input_tools/third_party/closure_library
302 - third_party/google_input_tools/third_party/closure_library/third_party/closure
303 - third_party/googletest
304 - third_party/hunspell
305 - third_party/iccjpeg
306 - third_party/inspector_protocol
307 - third_party/jinja2
308 - third_party/jstemplate
309 - third_party/khronos
310 - third_party/leveldatabase
311 - third_party/libXNVCtrl
312 - third_party/libaddressinput
313 - third_party/libaom
314 - third_party/libaom/source/libaom/third_party/vector
315 - third_party/libaom/source/libaom/third_party/x86inc
316 - third_party/libjingle
317 - third_party/libphonenumber
318 - third_party/libsecret
319 - third_party/libsrtp
320 - third_party/libsync
321 - third_party/libudev
322 - third_party/libwebm
323 - third_party/libxml/chromium
324 - third_party/libyuv
325 - third_party/llvm
326 - third_party/lss
327 - third_party/lzma_sdk
328 - third_party/markupsafe
329 - third_party/mesa
330 - third_party/metrics_proto
331 - third_party/modp_b64
332 - third_party/node
333 - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
334 - third_party/openmax_dl
335 - third_party/ots
336 - third_party/pdfium
337 - third_party/pdfium/third_party/agg23
338 - third_party/pdfium/third_party/base
339 - third_party/pdfium/third_party/bigint
340 - third_party/pdfium/third_party/freetype
341 - third_party/pdfium/third_party/lcms
342 - third_party/pdfium/third_party/libopenjpeg20
343 - third_party/pdfium/third_party/libpng16
344 - third_party/pdfium/third_party/libtiff
345 - third_party/pdfium/third_party/skia_shared
346 - third_party/perfetto
347 - third_party/ply
348 - third_party/polymer
349 - third_party/protobuf
350 - third_party/protobuf/third_party/six
351 - third_party/pyjson5
352 - third_party/qcms
353 - third_party/rnnoise
354 - third_party/s2cellid
355 - third_party/sfntly
356 - third_party/simplejson
357 - third_party/skia
358 - third_party/skia/third_party/gif
359 - third_party/skia/third_party/skcms
360 - third_party/skia/third_party/vulkan
361 - third_party/smhasher
362 - third_party/spirv-headers
363 - third_party/spirv-tools-angle
364 - third_party/sqlite
365 - third_party/swiftshader
366 - third_party/swiftshader/third_party/llvm-subzero
367 - third_party/swiftshader/third_party/subzero
368 - third_party/unrar
369 - third_party/usrsctp
370 - third_party/vulkan
371 - third_party/vulkan-validation-layers
372 - third_party/web-animations-js
373 - third_party/webdriver
374 - third_party/webrtc
375 - third_party/webrtc/common_audio/third_party/fft4g
376 - third_party/webrtc/common_audio/third_party/spl_sqrt_floor
377 - third_party/webrtc/modules/third_party/fft
378 - third_party/webrtc/modules/third_party/g711
379 - third_party/webrtc/modules/third_party/g722
380 - third_party/webrtc/rtc_base/third_party/base64
381 - third_party/webrtc/rtc_base/third_party/sigslot
382 - third_party/widevine
383 - third_party/woff2
384 - third_party/zlib/google
385 - url/third_party/mozilla
386 - v8/src/third_party/valgrind
387 - v8/src/third_party/utf8-decoder
388 - v8/third_party/inspector_protocol
389 - v8/third_party/v8
390 -
391 - # gyp -> gn leftovers
392 - base/third_party/libevent
393 - third_party/adobe
394 - third_party/speech-dispatcher
395 - third_party/usb_ids
396 - third_party/xdg-utils
397 - third_party/yasm/run_yasm.py
398 - )
399 - if ! use system-ffmpeg; then
400 - keeplibs+=( third_party/ffmpeg third_party/opus )
401 - fi
402 - if ! use system-icu; then
403 - keeplibs+=( third_party/icu )
404 - fi
405 - if ! use system-libvpx; then
406 - keeplibs+=( third_party/libvpx )
407 - keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
408 - fi
409 - if use tcmalloc; then
410 - keeplibs+=( third_party/tcmalloc )
411 - fi
412 -
413 - # Remove most bundled libraries. Some are still needed.
414 - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
415 -}
416 -
417 -src_configure() {
418 - # Calling this here supports resumption via FEATURES=keepwork
419 - python_setup
420 -
421 - local myconf_gn=""
422 -
423 - # Make sure the build system will use the right tools, bug #340795.
424 - tc-export AR CC CXX NM
425 -
426 - if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
427 - # Force clang since gcc is pretty broken at the moment.
428 - CC=${CHOST}-clang
429 - CXX=${CHOST}-clang++
430 - strip-unsupported-flags
431 - fi
432 -
433 - if tc-is-clang; then
434 - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
435 - else
436 - myconf_gn+=" is_clang=false"
437 - fi
438 -
439 - # Define a custom toolchain for GN
440 - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
441 -
442 - if tc-is-cross-compiler; then
443 - tc-export BUILD_{AR,CC,CXX,NM}
444 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
445 - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
446 - else
447 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
448 - fi
449 -
450 - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
451 - myconf_gn+=" is_debug=false"
452 -
453 - # Component build isn't generally intended for use by end users. It's mostly useful
454 - # for development and debugging.
455 - myconf_gn+=" is_component_build=$(usex component-build true false)"
456 -
457 - # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
458 - myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
459 -
460 - myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
461 -
462 - # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
463 - myconf_gn+=" enable_nacl=false"
464 -
465 - # Use system-provided libraries.
466 - # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
467 - # TODO: use_system_hunspell (upstream changes needed).
468 - # TODO: use_system_libsrtp (bug #459932).
469 - # TODO: use_system_protobuf (bug #525560).
470 - # TODO: use_system_ssl (http://crbug.com/58087).
471 - # TODO: use_system_sqlite (http://crbug.com/22208).
472 -
473 - # libevent: https://bugs.gentoo.org/593458
474 - local gn_system_libraries=(
475 - flac
476 - fontconfig
477 - freetype
478 - # Need harfbuzz_from_pkgconfig target
479 - #harfbuzz-ng
480 - libdrm
481 - libjpeg
482 - libpng
483 - libwebp
484 - libxml
485 - libxslt
486 - openh264
487 - re2
488 - snappy
489 - yasm
490 - zlib
491 - )
492 - if use system-ffmpeg; then
493 - gn_system_libraries+=( ffmpeg opus )
494 - fi
495 - if use system-icu; then
496 - gn_system_libraries+=( icu )
497 - fi
498 - if use system-libvpx; then
499 - gn_system_libraries+=( libvpx )
500 - fi
501 - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
502 -
503 - # See dependency logic in third_party/BUILD.gn
504 - myconf_gn+=" use_system_harfbuzz=true"
505 -
506 - # Optional dependencies.
507 - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
508 - myconf_gn+=" enable_widevine=$(usex widevine true false)"
509 - myconf_gn+=" use_cups=$(usex cups true false)"
510 - myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
511 - myconf_gn+=" use_kerberos=$(usex kerberos true false)"
512 - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
513 -
514 - # TODO: link_pulseaudio=true for GN.
515 -
516 - myconf_gn+=" fieldtrial_testing_like_official_build=true"
517 -
518 - # Never use bundled gold binary. Disable gold linker flags for now.
519 - # Do not use bundled clang.
520 - # Trying to use gold results in linker crash.
521 - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
522 -
523 - # Disable forced lld, bug 641556
524 - myconf_gn+=" use_lld=false"
525 -
526 - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
527 - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
528 - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
529 -
530 - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
531 - # Note: these are for Gentoo use ONLY. For your own distribution,
532 - # please get your own set of keys. Feel free to contact chromium@g.o
533 - # for more info.
534 - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
535 - local google_default_client_id="329227923882.apps.googleusercontent.com"
536 - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
537 - myconf_gn+=" google_api_key=\"${google_api_key}\""
538 - myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
539 - myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
540 -
541 - local myarch="$(tc-arch)"
542 - if [[ $myarch = amd64 ]] ; then
543 - myconf_gn+=" target_cpu=\"x64\""
544 - ffmpeg_target_arch=x64
545 - elif [[ $myarch = x86 ]] ; then
546 - myconf_gn+=" target_cpu=\"x86\""
547 - ffmpeg_target_arch=ia32
548 -
549 - # This is normally defined by compiler_cpu_abi in
550 - # build/config/compiler/BUILD.gn, but we patch that part out.
551 - append-flags -msse2 -mfpmath=sse -mmmx
552 - elif [[ $myarch = arm64 ]] ; then
553 - myconf_gn+=" target_cpu=\"arm64\""
554 - ffmpeg_target_arch=arm64
555 - elif [[ $myarch = arm ]] ; then
556 - myconf_gn+=" target_cpu=\"arm\""
557 - ffmpeg_target_arch=$(usex neon arm-neon arm)
558 - else
559 - die "Failed to determine target arch, got '$myarch'."
560 - fi
561 -
562 - # Make sure that -Werror doesn't get added to CFLAGS by the build system.
563 - # Depending on GCC version the warnings are different and we don't want
564 - # the build to fail because of that.
565 - myconf_gn+=" treat_warnings_as_errors=false"
566 -
567 - # Disable fatal linker warnings, bug 506268.
568 - myconf_gn+=" fatal_linker_warnings=false"
569 -
570 - # Avoid CFLAGS problems, bug #352457, bug #390147.
571 - if ! use custom-cflags; then
572 - replace-flags "-Os" "-O2"
573 - strip-flags
574 -
575 - # Prevent linker from running out of address space, bug #471810 .
576 - if use x86; then
577 - filter-flags "-g*"
578 - fi
579 -
580 - # Prevent libvpx build failures. Bug 530248, 544702, 546984.
581 - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
582 - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
583 - fi
584 - fi
585 -
586 - # https://bugs.gentoo.org/588596
587 - #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
588 -
589 - # Bug 491582.
590 - export TMPDIR="${WORKDIR}/temp"
591 - mkdir -p -m 755 "${TMPDIR}" || die
592 -
593 - # https://bugs.gentoo.org/654216
594 - addpredict /dev/dri/ #nowarn
595 -
596 - #if ! use system-ffmpeg; then
597 - if false; then
598 - local build_ffmpeg_args=""
599 - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
600 - build_ffmpeg_args+=" --disable-asm"
601 - fi
602 -
603 - # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
604 - einfo "Configuring bundled ffmpeg..."
605 - pushd third_party/ffmpeg > /dev/null || die
606 - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
607 - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
608 - chromium/scripts/copy_config.sh || die
609 - chromium/scripts/generate_gn.py || die
610 - popd > /dev/null || die
611 - fi
612 -
613 - einfo "Configuring Chromium..."
614 - set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
615 - echo "$@"
616 - "$@" || die
617 -}
618 -
619 -src_compile() {
620 - # Final link uses lots of file descriptors.
621 - ulimit -n 2048 || die
622 -
623 - # Calling this here supports resumption via FEATURES=keepwork
624 - python_setup
625 -
626 - #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
627 -
628 - # Build mksnapshot and pax-mark it.
629 - local x
630 - for x in mksnapshot v8_context_snapshot_generator; do
631 - if tc-is-cross-compiler; then
632 - eninja -C out/Release "host/${x}"
633 - pax-mark m "out/Release/host/${x}"
634 - else
635 - eninja -C out/Release "${x}"
636 - pax-mark m "out/Release/${x}"
637 - fi
638 - done
639 -
640 - # Work around broken deps
641 - eninja -C out/Release gen/ui/accessibility/ax_enums.mojom.h
642 - eninja -C out/Release gen/ui/accessibility/ax_enums.mojom-shared.h
643 -
644 - # Even though ninja autodetects number of CPUs, we respect
645 - # user's options, for debugging with -j 1 or any other reason.
646 - eninja -C out/Release chrome chromedriver
647 - use suid && eninja -C out/Release chrome_sandbox
648 -
649 - pax-mark m out/Release/chrome
650 -}
651 -
652 -src_install() {
653 - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
654 - exeinto "${CHROMIUM_HOME}"
655 - doexe out/Release/chrome
656 -
657 - if use suid; then
658 - newexe out/Release/chrome_sandbox chrome-sandbox
659 - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
660 - fi
661 -
662 - doexe out/Release/chromedriver
663 -
664 - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
665 - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
666 - doexe chromium-launcher.sh
667 -
668 - # It is important that we name the target "chromium-browser",
669 - # xdg-utils expect it; bug #355517.
670 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
671 - # keep the old symlink around for consistency
672 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
673 -
674 - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
675 -
676 - # Allow users to override command-line options, bug #357629.
677 - insinto /etc/chromium
678 - newins "${FILESDIR}/chromium.default" "default"
679 -
680 - pushd out/Release/locales > /dev/null || die
681 - chromium_remove_language_paks
682 - popd
683 -
684 - insinto "${CHROMIUM_HOME}"
685 - doins out/Release/*.bin
686 - doins out/Release/*.pak
687 - doins out/Release/*.so
688 -
689 - if ! use system-icu; then
690 - doins out/Release/icudtl.dat
691 - fi
692 -
693 - doins -r out/Release/locales
694 - doins -r out/Release/resources
695 -
696 - if [[ -d out/Release/swiftshader ]]; then
697 - insinto "${CHROMIUM_HOME}/swiftshader"
698 - doins out/Release/swiftshader/*.so
699 - fi
700 -
701 - # Install icons and desktop entry.
702 - local branding size
703 - for size in 16 22 24 32 48 64 128 256 ; do
704 - case ${size} in
705 - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
706 - *) branding="chrome/app/theme/chromium" ;;
707 - esac
708 - newicon -s ${size} "${branding}/product_logo_${size}.png" \
709 - chromium-browser.png
710 - done
711 -
712 - local mime_types="text/html;text/xml;application/xhtml+xml;"
713 - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
714 - mime_types+="x-scheme-handler/ftp;" # bug #412185
715 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
716 - make_desktop_entry \
717 - chromium-browser \
718 - "Chromium" \
719 - chromium-browser \
720 - "Network;WebBrowser" \
721 - "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
722 - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
723 -
724 - # Install GNOME default application entry (bug #303100).
725 - insinto /usr/share/gnome-control-center/default-apps
726 - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
727 -
728 - readme.gentoo_create_doc
729 -}
730 -
731 -pkg_preinst() {
732 - gnome2_icon_savelist
733 -}
734 -
735 -pkg_postrm() {
736 - gnome2_icon_cache_update
737 - xdg_desktop_database_update
738 -}
739 -
740 -pkg_postinst() {
741 - gnome2_icon_cache_update
742 - xdg_desktop_database_update
743 - readme.gentoo_print_elog
744 -}
745
746 diff --git a/www-client/chromium/chromium-71.0.3578.62.ebuild b/www-client/chromium/chromium-71.0.3578.62.ebuild
747 deleted file mode 100644
748 index fd9d0c56bc0..00000000000
749 --- a/www-client/chromium/chromium-71.0.3578.62.ebuild
750 +++ /dev/null
751 @@ -1,713 +0,0 @@
752 -# Copyright 1999-2018 Gentoo Authors
753 -# Distributed under the terms of the GNU General Public License v2
754 -
755 -EAPI=7
756 -PYTHON_COMPAT=( python2_7 )
757 -
758 -CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
759 - 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
760 - sv sw ta te th tr uk vi zh-CN zh-TW"
761 -
762 -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
763 -
764 -DESCRIPTION="Open-source version of Google Chrome web browser"
765 -HOMEPAGE="http://chromium.org/"
766 -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
767 -
768 -LICENSE="BSD"
769 -SLOT="0"
770 -KEYWORDS="~amd64 ~x86"
771 -IUSE="component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine"
772 -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
773 -
774 -COMMON_DEPEND="
775 - >=app-accessibility/at-spi2-atk-2.26:2
776 - app-arch/bzip2:=
777 - cups? ( >=net-print/cups-1.3.11:= )
778 - >=dev-libs/atk-2.26
779 - dev-libs/expat:=
780 - dev-libs/glib:2
781 - system-icu? ( >=dev-libs/icu-59:= )
782 - >=dev-libs/libxml2-2.9.4-r3:=[icu]
783 - dev-libs/libxslt:=
784 - dev-libs/nspr:=
785 - >=dev-libs/nss-3.26:=
786 - >=dev-libs/re2-0.2016.11.01:=
787 - gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
788 - >=media-libs/alsa-lib-1.0.19:=
789 - media-libs/fontconfig:=
790 - media-libs/freetype:=
791 - >=media-libs/harfbuzz-2.0.0:0=[icu(-)]
792 - media-libs/libjpeg-turbo:=
793 - media-libs/libpng:=
794 - system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
795 - >=media-libs/openh264-1.6.0:=
796 - pulseaudio? ( media-sound/pulseaudio:= )
797 - system-ffmpeg? (
798 - >=media-video/ffmpeg-4:=
799 - || (
800 - media-video/ffmpeg[-samba]
801 - >=net-fs/samba-4.5.10-r1[-debug(-)]
802 - )
803 - !=net-fs/samba-4.5.12-r0
804 - media-libs/opus:=
805 - )
806 - sys-apps/dbus:=
807 - sys-apps/pciutils:=
808 - virtual/udev
809 - x11-libs/cairo:=
810 - x11-libs/gdk-pixbuf:2
811 - x11-libs/gtk+:3[X]
812 - x11-libs/libX11:=
813 - x11-libs/libXcomposite:=
814 - x11-libs/libXcursor:=
815 - x11-libs/libXdamage:=
816 - x11-libs/libXext:=
817 - x11-libs/libXfixes:=
818 - >=x11-libs/libXi-1.6.0:=
819 - x11-libs/libXrandr:=
820 - x11-libs/libXrender:=
821 - x11-libs/libXScrnSaver:=
822 - x11-libs/libXtst:=
823 - x11-libs/pango:=
824 - app-arch/snappy:=
825 - media-libs/flac:=
826 - >=media-libs/libwebp-0.4.0:=
827 - sys-libs/zlib:=[minizip]
828 - kerberos? ( virtual/krb5 )
829 -"
830 -# For nvidia-drivers blocker, see bug #413637 .
831 -RDEPEND="${COMMON_DEPEND}
832 - !<www-plugins/chrome-binary-plugins-57
833 - x11-misc/xdg-utils
834 - virtual/opengl
835 - virtual/ttf-fonts
836 - selinux? ( sec-policy/selinux-chromium )
837 - tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
838 - widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
839 -"
840 -# dev-vcs/git - https://bugs.gentoo.org/593476
841 -# sys-apps/sandbox - https://crbug.com/586444
842 -DEPEND="${COMMON_DEPEND}
843 -"
844 -BDEPEND="
845 - >=app-arch/gzip-1.7
846 - !arm? (
847 - dev-lang/yasm
848 - )
849 - dev-lang/perl
850 - dev-util/gn
851 - >=dev-util/gperf-3.0.3
852 - >=dev-util/ninja-1.7.2
853 - >=net-libs/nodejs-7.6.0[inspector]
854 - sys-apps/hwids[usb(+)]
855 - >=sys-devel/bison-2.4.3
856 - sys-devel/flex
857 - virtual/pkgconfig
858 - dev-vcs/git
859 -"
860 -
861 -: ${CHROMIUM_FORCE_CLANG=no}
862 -
863 -if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
864 - BDEPEND+=" >=sys-devel/clang-5"
865 -fi
866 -
867 -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
868 - EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
869 -fi
870 -
871 -DISABLE_AUTOFORMATTING="yes"
872 -DOC_CONTENTS="
873 -Some web pages may require additional fonts to display properly.
874 -Try installing some of the following packages if some characters
875 -are not displayed properly:
876 -- media-fonts/arphicfonts
877 -- media-fonts/droid
878 -- media-fonts/ipamonafont
879 -- media-fonts/noto
880 -- media-fonts/ja-ipafonts
881 -- media-fonts/takao-fonts
882 -- media-fonts/wqy-microhei
883 -- media-fonts/wqy-zenhei
884 -
885 -To fix broken icons on the Downloads page, you should install an icon
886 -theme that covers the appropriate MIME types, and configure this as your
887 -GTK+ icon theme.
888 -"
889 -
890 -PATCHES=(
891 - "${FILESDIR}/chromium-compiler-r6.patch"
892 - "${FILESDIR}/chromium-widevine-r3.patch"
893 - "${FILESDIR}/chromium-webrtc-r0.patch"
894 - "${FILESDIR}/chromium-memcpy-r0.patch"
895 - "${FILESDIR}/chromium-math.h-r0.patch"
896 - "${FILESDIR}/chromium-stdint.patch"
897 - "${FILESDIR}/chromium-harfbuzz-r0.patch"
898 - "${FILESDIR}/chromium-71-gcc-0.patch"
899 -)
900 -
901 -pre_build_checks() {
902 - #if [[ ${MERGE_TYPE} != binary ]]; then
903 - # local -x CPP="$(tc-getCXX) -E"
904 - # if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then
905 - # # bugs: #601654
906 - # die "At least clang 3.9.1 is required"
907 - # fi
908 - # if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then
909 - # # bugs: #535730, #525374, #518668, #600288, #627356
910 - # die "At least gcc 5.0 is required"
911 - # fi
912 - #fi
913 -
914 - # Check build requirements, bug #541816 and bug #471810 .
915 - CHECKREQS_MEMORY="3G"
916 - CHECKREQS_DISK_BUILD="5G"
917 - if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
918 - CHECKREQS_DISK_BUILD="25G"
919 - if ! use component-build; then
920 - CHECKREQS_MEMORY="16G"
921 - fi
922 - fi
923 - check-reqs_pkg_setup
924 -}
925 -
926 -pkg_pretend() {
927 - pre_build_checks
928 -}
929 -
930 -pkg_setup() {
931 - pre_build_checks
932 -
933 - chromium_suid_sandbox_check_kernel_config
934 -}
935 -
936 -src_prepare() {
937 - # Calling this here supports resumption via FEATURES=keepwork
938 - python_setup
939 -
940 - default
941 -
942 - mkdir -p third_party/node/linux/node-linux-x64/bin || die
943 - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
944 -
945 - local keeplibs=(
946 - base/third_party/dmg_fp
947 - base/third_party/dynamic_annotations
948 - base/third_party/icu
949 - base/third_party/nspr
950 - base/third_party/superfasthash
951 - base/third_party/symbolize
952 - base/third_party/valgrind
953 - base/third_party/xdg_mime
954 - base/third_party/xdg_user_dirs
955 - buildtools/third_party/libc++
956 - buildtools/third_party/libc++abi
957 - chrome/third_party/mozilla_security_manager
958 - courgette/third_party
959 - net/third_party/http2
960 - net/third_party/mozilla_security_manager
961 - net/third_party/nss
962 - net/third_party/quic
963 - net/third_party/spdy
964 - net/third_party/uri_template
965 - third_party/WebKit
966 - third_party/abseil-cpp
967 - third_party/analytics
968 - third_party/angle
969 - third_party/angle/src/common/third_party/base
970 - third_party/angle/src/common/third_party/smhasher
971 - third_party/angle/src/third_party/compiler
972 - third_party/angle/src/third_party/libXNVCtrl
973 - third_party/angle/src/third_party/trace_event
974 - third_party/angle/third_party/glslang
975 - third_party/angle/third_party/spirv-headers
976 - third_party/angle/third_party/spirv-tools
977 - third_party/angle/third_party/vulkan-headers
978 - third_party/angle/third_party/vulkan-loader
979 - third_party/angle/third_party/vulkan-tools
980 - third_party/angle/third_party/vulkan-validation-layers
981 - third_party/apple_apsl
982 - third_party/blink
983 - third_party/boringssl
984 - third_party/boringssl/src/third_party/fiat
985 - third_party/breakpad
986 - third_party/breakpad/breakpad/src/third_party/curl
987 - third_party/brotli
988 - third_party/cacheinvalidation
989 - third_party/catapult
990 - third_party/catapult/common/py_vulcanize/third_party/rcssmin
991 - third_party/catapult/common/py_vulcanize/third_party/rjsmin
992 - third_party/catapult/third_party/beautifulsoup4
993 - third_party/catapult/third_party/html5lib-python
994 - third_party/catapult/third_party/polymer
995 - third_party/catapult/third_party/six
996 - third_party/catapult/tracing/third_party/d3
997 - third_party/catapult/tracing/third_party/gl-matrix
998 - third_party/catapult/tracing/third_party/jszip
999 - third_party/catapult/tracing/third_party/mannwhitneyu
1000 - third_party/catapult/tracing/third_party/oboe
1001 - third_party/catapult/tracing/third_party/pako
1002 - third_party/ced
1003 - third_party/cld_3
1004 - third_party/crashpad
1005 - third_party/crashpad/crashpad/third_party/zlib
1006 - third_party/crc32c
1007 - third_party/cros_system_api
1008 - third_party/devscripts
1009 - third_party/dom_distiller_js
1010 - third_party/fips181
1011 - third_party/flatbuffers
1012 - third_party/flot
1013 - third_party/freetype
1014 - third_party/glslang-angle
1015 - third_party/google_input_tools
1016 - third_party/google_input_tools/third_party/closure_library
1017 - third_party/google_input_tools/third_party/closure_library/third_party/closure
1018 - third_party/googletest
1019 - third_party/hunspell
1020 - third_party/iccjpeg
1021 - third_party/inspector_protocol
1022 - third_party/jinja2
1023 - third_party/jsoncpp
1024 - third_party/jstemplate
1025 - third_party/khronos
1026 - third_party/leveldatabase
1027 - third_party/libXNVCtrl
1028 - third_party/libaddressinput
1029 - third_party/libaom
1030 - third_party/libaom/source/libaom/third_party/vector
1031 - third_party/libaom/source/libaom/third_party/x86inc
1032 - third_party/libjingle
1033 - third_party/libphonenumber
1034 - third_party/libsecret
1035 - third_party/libsrtp
1036 - third_party/libsync
1037 - third_party/libudev
1038 - third_party/libwebm
1039 - third_party/libxml/chromium
1040 - third_party/libyuv
1041 - third_party/llvm
1042 - third_party/lss
1043 - third_party/lzma_sdk
1044 - third_party/markupsafe
1045 - third_party/mesa
1046 - third_party/metrics_proto
1047 - third_party/modp_b64
1048 - third_party/node
1049 - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
1050 - third_party/openmax_dl
1051 - third_party/ots
1052 - third_party/pdfium
1053 - third_party/pdfium/third_party/agg23
1054 - third_party/pdfium/third_party/base
1055 - third_party/pdfium/third_party/bigint
1056 - third_party/pdfium/third_party/freetype
1057 - third_party/pdfium/third_party/lcms
1058 - third_party/pdfium/third_party/libopenjpeg20
1059 - third_party/pdfium/third_party/libpng16
1060 - third_party/pdfium/third_party/libtiff
1061 - third_party/pdfium/third_party/skia_shared
1062 - third_party/perfetto
1063 - third_party/ply
1064 - third_party/polymer
1065 - third_party/protobuf
1066 - third_party/protobuf/third_party/six
1067 - third_party/pyjson5
1068 - third_party/qcms
1069 - third_party/rnnoise
1070 - third_party/s2cellid
1071 - third_party/sfntly
1072 - third_party/simplejson
1073 - third_party/skia
1074 - third_party/skia/third_party/gif
1075 - third_party/skia/third_party/skcms
1076 - third_party/skia/third_party/vulkan
1077 - third_party/smhasher
1078 - third_party/spirv-headers
1079 - third_party/SPIRV-Tools
1080 - third_party/spirv-tools-angle
1081 - third_party/sqlite
1082 - third_party/swiftshader
1083 - third_party/swiftshader/third_party/llvm-subzero
1084 - third_party/swiftshader/third_party/subzero
1085 - third_party/unrar
1086 - third_party/usrsctp
1087 - third_party/vulkan
1088 - third_party/vulkan-validation-layers
1089 - third_party/web-animations-js
1090 - third_party/webdriver
1091 - third_party/webrtc
1092 - third_party/webrtc/common_audio/third_party/fft4g
1093 - third_party/webrtc/common_audio/third_party/spl_sqrt_floor
1094 - third_party/webrtc/modules/third_party/fft
1095 - third_party/webrtc/modules/third_party/g711
1096 - third_party/webrtc/modules/third_party/g722
1097 - third_party/webrtc/rtc_base/third_party/base64
1098 - third_party/webrtc/rtc_base/third_party/sigslot
1099 - third_party/widevine
1100 - third_party/woff2
1101 - third_party/zlib/google
1102 - url/third_party/mozilla
1103 - v8/src/third_party/valgrind
1104 - v8/src/third_party/utf8-decoder
1105 - v8/third_party/inspector_protocol
1106 - v8/third_party/v8
1107 -
1108 - # gyp -> gn leftovers
1109 - base/third_party/libevent
1110 - third_party/adobe
1111 - third_party/speech-dispatcher
1112 - third_party/usb_ids
1113 - third_party/xdg-utils
1114 - third_party/yasm/run_yasm.py
1115 - )
1116 - if ! use system-ffmpeg; then
1117 - keeplibs+=( third_party/ffmpeg third_party/opus )
1118 - fi
1119 - if ! use system-icu; then
1120 - keeplibs+=( third_party/icu )
1121 - fi
1122 - if ! use system-libvpx; then
1123 - keeplibs+=( third_party/libvpx )
1124 - keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
1125 - fi
1126 - if use tcmalloc; then
1127 - keeplibs+=( third_party/tcmalloc )
1128 - fi
1129 -
1130 - # Remove most bundled libraries. Some are still needed.
1131 - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
1132 -}
1133 -
1134 -src_configure() {
1135 - # Calling this here supports resumption via FEATURES=keepwork
1136 - python_setup
1137 -
1138 - local myconf_gn=""
1139 -
1140 - # Make sure the build system will use the right tools, bug #340795.
1141 - tc-export AR CC CXX NM
1142 -
1143 - if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
1144 - # Force clang since gcc is pretty broken at the moment.
1145 - CC=${CHOST}-clang
1146 - CXX=${CHOST}-clang++
1147 - strip-unsupported-flags
1148 - fi
1149 -
1150 - if tc-is-clang; then
1151 - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
1152 - else
1153 - myconf_gn+=" is_clang=false"
1154 - fi
1155 -
1156 - # Define a custom toolchain for GN
1157 - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
1158 -
1159 - if tc-is-cross-compiler; then
1160 - tc-export BUILD_{AR,CC,CXX,NM}
1161 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
1162 - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
1163 - else
1164 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
1165 - fi
1166 -
1167 - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
1168 - myconf_gn+=" is_debug=false"
1169 -
1170 - # Component build isn't generally intended for use by end users. It's mostly useful
1171 - # for development and debugging.
1172 - myconf_gn+=" is_component_build=$(usex component-build true false)"
1173 -
1174 - # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
1175 - myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
1176 -
1177 - myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
1178 -
1179 - # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
1180 - myconf_gn+=" enable_nacl=false"
1181 -
1182 - # Use system-provided libraries.
1183 - # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
1184 - # TODO: use_system_hunspell (upstream changes needed).
1185 - # TODO: use_system_libsrtp (bug #459932).
1186 - # TODO: use_system_protobuf (bug #525560).
1187 - # TODO: use_system_ssl (http://crbug.com/58087).
1188 - # TODO: use_system_sqlite (http://crbug.com/22208).
1189 -
1190 - # libevent: https://bugs.gentoo.org/593458
1191 - local gn_system_libraries=(
1192 - flac
1193 - fontconfig
1194 - freetype
1195 - # Need harfbuzz_from_pkgconfig target
1196 - #harfbuzz-ng
1197 - libdrm
1198 - libjpeg
1199 - libpng
1200 - libwebp
1201 - libxml
1202 - libxslt
1203 - openh264
1204 - re2
1205 - snappy
1206 - yasm
1207 - zlib
1208 - )
1209 - if use system-ffmpeg; then
1210 - gn_system_libraries+=( ffmpeg opus )
1211 - fi
1212 - if use system-icu; then
1213 - gn_system_libraries+=( icu )
1214 - fi
1215 - if use system-libvpx; then
1216 - gn_system_libraries+=( libvpx )
1217 - fi
1218 - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
1219 -
1220 - # See dependency logic in third_party/BUILD.gn
1221 - myconf_gn+=" use_system_harfbuzz=true"
1222 -
1223 - # Optional dependencies.
1224 - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
1225 - myconf_gn+=" enable_widevine=$(usex widevine true false)"
1226 - myconf_gn+=" use_cups=$(usex cups true false)"
1227 - myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
1228 - myconf_gn+=" use_kerberos=$(usex kerberos true false)"
1229 - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
1230 -
1231 - # TODO: link_pulseaudio=true for GN.
1232 -
1233 - myconf_gn+=" fieldtrial_testing_like_official_build=true"
1234 -
1235 - # Never use bundled gold binary. Disable gold linker flags for now.
1236 - # Do not use bundled clang.
1237 - # Trying to use gold results in linker crash.
1238 - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
1239 -
1240 - # Disable forced lld, bug 641556
1241 - myconf_gn+=" use_lld=false"
1242 -
1243 - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
1244 - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
1245 - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
1246 -
1247 - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
1248 - # Note: these are for Gentoo use ONLY. For your own distribution,
1249 - # please get your own set of keys. Feel free to contact chromium@g.o
1250 - # for more info.
1251 - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
1252 - local google_default_client_id="329227923882.apps.googleusercontent.com"
1253 - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
1254 - myconf_gn+=" google_api_key=\"${google_api_key}\""
1255 - myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
1256 - myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
1257 -
1258 - local myarch="$(tc-arch)"
1259 - if [[ $myarch = amd64 ]] ; then
1260 - myconf_gn+=" target_cpu=\"x64\""
1261 - ffmpeg_target_arch=x64
1262 - elif [[ $myarch = x86 ]] ; then
1263 - myconf_gn+=" target_cpu=\"x86\""
1264 - ffmpeg_target_arch=ia32
1265 -
1266 - # This is normally defined by compiler_cpu_abi in
1267 - # build/config/compiler/BUILD.gn, but we patch that part out.
1268 - append-flags -msse2 -mfpmath=sse -mmmx
1269 - elif [[ $myarch = arm64 ]] ; then
1270 - myconf_gn+=" target_cpu=\"arm64\""
1271 - ffmpeg_target_arch=arm64
1272 - elif [[ $myarch = arm ]] ; then
1273 - myconf_gn+=" target_cpu=\"arm\""
1274 - ffmpeg_target_arch=$(usex neon arm-neon arm)
1275 - else
1276 - die "Failed to determine target arch, got '$myarch'."
1277 - fi
1278 -
1279 - # Make sure that -Werror doesn't get added to CFLAGS by the build system.
1280 - # Depending on GCC version the warnings are different and we don't want
1281 - # the build to fail because of that.
1282 - myconf_gn+=" treat_warnings_as_errors=false"
1283 -
1284 - # Disable fatal linker warnings, bug 506268.
1285 - myconf_gn+=" fatal_linker_warnings=false"
1286 -
1287 - # Avoid CFLAGS problems, bug #352457, bug #390147.
1288 - if ! use custom-cflags; then
1289 - replace-flags "-Os" "-O2"
1290 - strip-flags
1291 -
1292 - # Prevent linker from running out of address space, bug #471810 .
1293 - if use x86; then
1294 - filter-flags "-g*"
1295 - fi
1296 -
1297 - # Prevent libvpx build failures. Bug 530248, 544702, 546984.
1298 - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
1299 - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
1300 - fi
1301 - fi
1302 -
1303 - # https://bugs.gentoo.org/588596
1304 - #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
1305 -
1306 - # Bug 491582.
1307 - export TMPDIR="${WORKDIR}/temp"
1308 - mkdir -p -m 755 "${TMPDIR}" || die
1309 -
1310 - # https://bugs.gentoo.org/654216
1311 - addpredict /dev/dri/ #nowarn
1312 -
1313 - #if ! use system-ffmpeg; then
1314 - if false; then
1315 - local build_ffmpeg_args=""
1316 - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
1317 - build_ffmpeg_args+=" --disable-asm"
1318 - fi
1319 -
1320 - # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
1321 - einfo "Configuring bundled ffmpeg..."
1322 - pushd third_party/ffmpeg > /dev/null || die
1323 - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
1324 - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
1325 - chromium/scripts/copy_config.sh || die
1326 - chromium/scripts/generate_gn.py || die
1327 - popd > /dev/null || die
1328 - fi
1329 -
1330 - einfo "Configuring Chromium..."
1331 - set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
1332 - echo "$@"
1333 - "$@" || die
1334 -}
1335 -
1336 -src_compile() {
1337 - # Final link uses lots of file descriptors.
1338 - ulimit -n 2048
1339 -
1340 - # Calling this here supports resumption via FEATURES=keepwork
1341 - python_setup
1342 -
1343 - #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
1344 -
1345 - # Work around broken deps
1346 - eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
1347 -
1348 - # Build mksnapshot and pax-mark it.
1349 - local x
1350 - for x in mksnapshot v8_context_snapshot_generator; do
1351 - if tc-is-cross-compiler; then
1352 - eninja -C out/Release "host/${x}"
1353 - pax-mark m "out/Release/host/${x}"
1354 - else
1355 - eninja -C out/Release "${x}"
1356 - pax-mark m "out/Release/${x}"
1357 - fi
1358 - done
1359 -
1360 - # Even though ninja autodetects number of CPUs, we respect
1361 - # user's options, for debugging with -j 1 or any other reason.
1362 - eninja -C out/Release chrome chromedriver
1363 - use suid && eninja -C out/Release chrome_sandbox
1364 -
1365 - pax-mark m out/Release/chrome
1366 -}
1367 -
1368 -src_install() {
1369 - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
1370 - exeinto "${CHROMIUM_HOME}"
1371 - doexe out/Release/chrome
1372 -
1373 - if use suid; then
1374 - newexe out/Release/chrome_sandbox chrome-sandbox
1375 - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
1376 - fi
1377 -
1378 - doexe out/Release/chromedriver
1379 -
1380 - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
1381 - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
1382 - doexe chromium-launcher.sh
1383 -
1384 - # It is important that we name the target "chromium-browser",
1385 - # xdg-utils expect it; bug #355517.
1386 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
1387 - # keep the old symlink around for consistency
1388 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
1389 -
1390 - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
1391 -
1392 - # Allow users to override command-line options, bug #357629.
1393 - insinto /etc/chromium
1394 - newins "${FILESDIR}/chromium.default" "default"
1395 -
1396 - pushd out/Release/locales > /dev/null || die
1397 - chromium_remove_language_paks
1398 - popd
1399 -
1400 - insinto "${CHROMIUM_HOME}"
1401 - doins out/Release/*.bin
1402 - doins out/Release/*.pak
1403 - doins out/Release/*.so
1404 -
1405 - if ! use system-icu; then
1406 - doins out/Release/icudtl.dat
1407 - fi
1408 -
1409 - doins -r out/Release/locales
1410 - doins -r out/Release/resources
1411 -
1412 - if [[ -d out/Release/swiftshader ]]; then
1413 - insinto "${CHROMIUM_HOME}/swiftshader"
1414 - doins out/Release/swiftshader/*.so
1415 - fi
1416 -
1417 - # Install icons and desktop entry.
1418 - local branding size
1419 - for size in 16 22 24 32 48 64 128 256 ; do
1420 - case ${size} in
1421 - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
1422 - *) branding="chrome/app/theme/chromium" ;;
1423 - esac
1424 - newicon -s ${size} "${branding}/product_logo_${size}.png" \
1425 - chromium-browser.png
1426 - done
1427 -
1428 - local mime_types="text/html;text/xml;application/xhtml+xml;"
1429 - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
1430 - mime_types+="x-scheme-handler/ftp;" # bug #412185
1431 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
1432 - make_desktop_entry \
1433 - chromium-browser \
1434 - "Chromium" \
1435 - chromium-browser \
1436 - "Network;WebBrowser" \
1437 - "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
1438 - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
1439 -
1440 - # Install GNOME default application entry (bug #303100).
1441 - insinto /usr/share/gnome-control-center/default-apps
1442 - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
1443 -
1444 - readme.gentoo_create_doc
1445 -}
1446 -
1447 -pkg_postrm() {
1448 - if type gtk-update-icon-cache &>/dev/null; then
1449 - ebegin "Updating GTK icon cache"
1450 - gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
1451 - eend $?
1452 - fi
1453 - xdg_desktop_database_update
1454 -}
1455 -
1456 -pkg_postinst() {
1457 - if type gtk-update-icon-cache &>/dev/null; then
1458 - ebegin "Updating GTK icon cache"
1459 - gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
1460 - eend $?
1461 - fi
1462 - xdg_desktop_database_update
1463 - readme.gentoo_print_elog
1464 -}