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: Sun, 10 Dec 2017 23:18:16
Message-Id: 1512947890.153ae8efdcdd14f79a57762bb51256eab855e9e4.floppym@gentoo
1 commit: 153ae8efdcdd14f79a57762bb51256eab855e9e4
2 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
3 AuthorDate: Sun Dec 10 23:10:12 2017 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Sun Dec 10 23:18:10 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=153ae8ef
7
8 www-client/chromium: remove old
9
10 Package-Manager: Portage-2.3.17, Repoman-2.3.6_p24
11
12 www-client/chromium/Manifest | 3 -
13 www-client/chromium/chromium-62.0.3202.89.ebuild | 653 ----------------------
14 www-client/chromium/chromium-62.0.3202.94.ebuild | 653 ----------------------
15 www-client/chromium/chromium-63.0.3239.70.ebuild | 657 -----------------------
16 4 files changed, 1966 deletions(-)
17
18 diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
19 index 400ca74383f..76e1a71147b 100644
20 --- a/www-client/chromium/Manifest
21 +++ b/www-client/chromium/Manifest
22 @@ -1,6 +1,3 @@
23 -DIST chromium-62.0.3202.89.tar.xz 517100784 BLAKE2B c257a554c12bba7b38c85de41e97f900efc43578f3d5a5de5adbb01eebba8ef75c885db3e9c052ce2dabf9bf63b02dbea7b54606cb8d412fb9d5f433d919dee4 SHA512 11ed71d2c9ebf82c9b704111d85d01c5600fc1caeb66e0dfaca172b20bb357817d717b3bcc13f704072b77550fa7fa74f990725b1d7d85d4d2b82cc1baec9578
24 -DIST chromium-62.0.3202.94.tar.xz 517173548 BLAKE2B 1ec2cadd6581ea14566a0ae9803aecbf176712379a5d56e9f970e7cf5de06d51e2812247c09e96fcfcd3d8f671cead224089479855379be72b591455c76b3c77 SHA512 09e05aec663de94633fb7b658154a5b0146159dea0f434ef412405530274daefc5e554be8120653b840d2b55f5e35202be1a653ece7796d00956df58bc7608ad
25 -DIST chromium-63.0.3239.70.tar.xz 534258328 BLAKE2B 8e6d846333bfea5e28f04cf2f856a295f0a179bb5d8fa8777d9b4ec8808814b79475a10a4c22dfd7bd606e7cdd99e15a32eb0aae7027a42f4526a05942f6ec85 SHA512 fdc5f433e3520cd053a48dfb107b33da6d844429169047e132663435708ed8fbbabf6949290aca0ff15eecd66fc470c9218bb9fc0376811c7684c8c67fdded6c
26 DIST chromium-63.0.3239.84.tar.xz 534280828 BLAKE2B 08437f625a97ea49f274140a0444dc5531e7a178a99d04592194158817169f4b9c42769dd76b5df624b5189705b17b9b049f61c2474b411ee520439213f12513 SHA512 049a09a821606ff7f52fa8f41d34f0e67c02a20a346841dfcbb06c4138c60a62240f33d9255662260251e5be913a14b004cb2a12873d2ed34751be2b1efb3f34
27 DIST chromium-64.0.3260.2.tar.xz 568772508 BLAKE2B 8aee43fded3504c5a64b537d8845096a4412353c16ae24b405c10b20b0e49e926bf8db531fa03390cc608c39e5cb09a2b2aab659ceda9320bf8e1f69d75e8bd2 SHA512 f7003976c8c5449569e0017fae5e1f2f7150a297a4bb4ad2a9bafe69e9fb4e931c76efeecbe07cc11a00af5a49591655734f21892e69e3ac523fc4d3faa2795f
28 DIST chromium-64.0.3282.14.tar.xz 482211216 BLAKE2B 0ffc69478719903e39998fd6f908883dadcb32580a64b1e8a93b270dfb221cb89b674c7e288649de24e468a56da78cdbf35af9693cd24f5cba158789db609d30 SHA512 75b851be4bf4814e91a4e7a036b7aa78d0c76e138605a42ebe9ce8d2017a1f95eb2dc67bd73f4fa911ce2a28cec769a699f52c98c2b1b3a037321af517692c28
29
30 diff --git a/www-client/chromium/chromium-62.0.3202.89.ebuild b/www-client/chromium/chromium-62.0.3202.89.ebuild
31 deleted file mode 100644
32 index b0de71dabd7..00000000000
33 --- a/www-client/chromium/chromium-62.0.3202.89.ebuild
34 +++ /dev/null
35 @@ -1,653 +0,0 @@
36 -# Copyright 1999-2017 Gentoo Foundation
37 -# Distributed under the terms of the GNU General Public License v2
38 -
39 -EAPI="6"
40 -PYTHON_COMPAT=( python2_7 )
41 -
42 -CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
43 - 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
44 - sv sw ta te th tr uk vi zh-CN zh-TW"
45 -
46 -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 versionator xdg-utils
47 -
48 -DESCRIPTION="Open-source version of Google Chrome web browser"
49 -HOMEPAGE="http://chromium.org/"
50 -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
51 -
52 -LICENSE="BSD"
53 -SLOT="0"
54 -KEYWORDS="amd64 ~arm ~arm64 ~x86"
55 -IUSE="component-build cups gnome-keyring +hangouts kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine"
56 -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
57 -
58 -COMMON_DEPEND="
59 - app-arch/bzip2:=
60 - cups? ( >=net-print/cups-1.3.11:= )
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.14.3:=
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-1.4.2:=[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-3:=
81 - || (
82 - media-video/ffmpeg[-samba]
83 - >=net-fs/samba-4.5.10-r1[-debug(-)]
84 - )
85 - !=net-fs/samba-4.5.12
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-client/chromium-9999
115 - !<www-plugins/chrome-binary-plugins-57
116 - x11-misc/xdg-utils
117 - virtual/opengl
118 - virtual/ttf-fonts
119 - selinux? ( sec-policy/selinux-chromium )
120 - tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
121 - widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
122 -"
123 -# dev-vcs/git - https://bugs.gentoo.org/593476
124 -# sys-apps/sandbox - https://crbug.com/586444
125 -DEPEND="${COMMON_DEPEND}
126 - >=app-arch/gzip-1.7
127 - !arm? (
128 - dev-lang/yasm
129 - )
130 - dev-lang/perl
131 - >=dev-util/gperf-3.0.3
132 - >=dev-util/ninja-1.7.2
133 - >=net-libs/nodejs-6.9.4
134 - sys-apps/hwids[usb(+)]
135 - >=sys-devel/bison-2.4.3
136 - sys-devel/flex
137 - virtual/pkgconfig
138 - dev-vcs/git
139 - $(python_gen_any_dep '
140 - dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]
141 - >=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]
142 - dev-python/html5lib[${PYTHON_USEDEP}]
143 - dev-python/simplejson[${PYTHON_USEDEP}]
144 - ')
145 -"
146 -
147 -# Keep this in sync with the python_gen_any_dep call.
148 -python_check_deps() {
149 - has_version --host-root "dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]" &&
150 - has_version --host-root ">=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" &&
151 - has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" &&
152 - has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]"
153 -}
154 -
155 -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
156 - EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
157 -fi
158 -
159 -DISABLE_AUTOFORMATTING="yes"
160 -DOC_CONTENTS="
161 -Some web pages may require additional fonts to display properly.
162 -Try installing some of the following packages if some characters
163 -are not displayed properly:
164 -- media-fonts/arphicfonts
165 -- media-fonts/bitstream-cyberbit
166 -- media-fonts/droid
167 -- media-fonts/ipamonafont
168 -- media-fonts/noto
169 -- media-fonts/ja-ipafonts
170 -- media-fonts/takao-fonts
171 -- media-fonts/wqy-microhei
172 -- media-fonts/wqy-zenhei
173 -
174 -To fix broken icons on the Downloads page, you should install an icon
175 -theme that covers the appropriate MIME types, and configure this as your
176 -GTK+ icon theme.
177 -"
178 -
179 -PATCHES=(
180 - "${FILESDIR}/${PN}-widevine-r1.patch"
181 - "${FILESDIR}/${PN}-FORTIFY_SOURCE-r2.patch"
182 - "${FILESDIR}/${PN}-gcc5-r3.patch"
183 - "${FILESDIR}/${PN}-gn-bootstrap-r17.patch"
184 - "${FILESDIR}/${PN}-glibc2.26-r1.patch"
185 -)
186 -
187 -pre_build_checks() {
188 - if [[ ${MERGE_TYPE} != binary ]]; then
189 - local -x CPP="$(tc-getCXX) -E"
190 - if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then
191 - # bugs: #601654
192 - die "At least clang 3.9.1 is required"
193 - fi
194 - if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then
195 - # bugs: #535730, #525374, #518668, #600288, #627356
196 - die "At least gcc 5.0 is required"
197 - fi
198 - fi
199 -
200 - # Check build requirements, bug #541816 and bug #471810 .
201 - CHECKREQS_MEMORY="3G"
202 - CHECKREQS_DISK_BUILD="5G"
203 - eshopts_push -s extglob
204 - if is-flagq '-g?(gdb)?([1-9])'; then
205 - CHECKREQS_DISK_BUILD="25G"
206 - if ! use component-build; then
207 - CHECKREQS_MEMORY="16G"
208 - fi
209 - fi
210 - eshopts_pop
211 - check-reqs_pkg_setup
212 -}
213 -
214 -pkg_pretend() {
215 - pre_build_checks
216 -}
217 -
218 -pkg_setup() {
219 - pre_build_checks
220 -
221 - # Make sure the build system will use the right python, bug #344367.
222 - python-any-r1_pkg_setup
223 -
224 - chromium_suid_sandbox_check_kernel_config
225 -}
226 -
227 -src_prepare() {
228 - default
229 -
230 - mkdir -p third_party/node/linux/node-linux-x64/bin || die
231 - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
232 -
233 - local keeplibs=(
234 - base/third_party/dmg_fp
235 - base/third_party/dynamic_annotations
236 - base/third_party/icu
237 - base/third_party/nspr
238 - base/third_party/superfasthash
239 - base/third_party/symbolize
240 - base/third_party/valgrind
241 - base/third_party/xdg_mime
242 - base/third_party/xdg_user_dirs
243 - breakpad/src/third_party/curl
244 - chrome/third_party/mozilla_security_manager
245 - courgette/third_party
246 - net/third_party/mozilla_security_manager
247 - net/third_party/nss
248 - third_party/WebKit
249 - third_party/analytics
250 - third_party/angle
251 - third_party/angle/src/common/third_party/base
252 - third_party/angle/src/common/third_party/murmurhash
253 - third_party/angle/src/third_party/compiler
254 - third_party/angle/src/third_party/libXNVCtrl
255 - third_party/angle/src/third_party/trace_event
256 - third_party/boringssl
257 - third_party/brotli
258 - third_party/cacheinvalidation
259 - third_party/catapult
260 - third_party/catapult/third_party/polymer
261 - third_party/catapult/third_party/py_vulcanize
262 - third_party/catapult/third_party/py_vulcanize/third_party/rcssmin
263 - third_party/catapult/third_party/py_vulcanize/third_party/rjsmin
264 - third_party/catapult/tracing/third_party/d3
265 - third_party/catapult/tracing/third_party/gl-matrix
266 - third_party/catapult/tracing/third_party/jszip
267 - third_party/catapult/tracing/third_party/mannwhitneyu
268 - third_party/catapult/tracing/third_party/oboe
269 - third_party/ced
270 - third_party/cld_2
271 - third_party/cld_3
272 - third_party/crc32c
273 - third_party/cros_system_api
274 - third_party/devscripts
275 - third_party/dom_distiller_js
276 - third_party/fips181
277 - third_party/flatbuffers
278 - third_party/flot
279 - third_party/freetype
280 - third_party/glslang-angle
281 - third_party/google_input_tools
282 - third_party/google_input_tools/third_party/closure_library
283 - third_party/google_input_tools/third_party/closure_library/third_party/closure
284 - third_party/googletest
285 - third_party/hunspell
286 - third_party/iccjpeg
287 - third_party/inspector_protocol
288 - third_party/jinja2
289 - third_party/jstemplate
290 - third_party/khronos
291 - third_party/leveldatabase
292 - third_party/libXNVCtrl
293 - third_party/libaddressinput
294 - third_party/libjingle
295 - third_party/libphonenumber
296 - third_party/libsecret
297 - third_party/libsrtp
298 - third_party/libudev
299 - third_party/libwebm
300 - third_party/libxml/chromium
301 - third_party/libyuv
302 - third_party/lss
303 - third_party/lzma_sdk
304 - third_party/markupsafe
305 - third_party/mesa
306 - third_party/modp_b64
307 - third_party/mt19937ar
308 - third_party/node
309 - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
310 - third_party/openmax_dl
311 - third_party/ots
312 - third_party/pdfium
313 - third_party/pdfium/third_party/agg23
314 - third_party/pdfium/third_party/base
315 - third_party/pdfium/third_party/build
316 - third_party/pdfium/third_party/bigint
317 - third_party/pdfium/third_party/freetype
318 - third_party/pdfium/third_party/lcms
319 - third_party/pdfium/third_party/libopenjpeg20
320 - third_party/pdfium/third_party/libpng16
321 - third_party/pdfium/third_party/libtiff
322 - third_party/ply
323 - third_party/polymer
324 - third_party/protobuf
325 - third_party/protobuf/third_party/six
326 - third_party/qcms
327 - third_party/sfntly
328 - third_party/skia
329 - third_party/skia/third_party/gif
330 - third_party/skia/third_party/vulkan
331 - third_party/smhasher
332 - third_party/spirv-headers
333 - third_party/spirv-tools-angle
334 - third_party/sqlite
335 - third_party/swiftshader
336 - third_party/swiftshader/third_party/llvm-subzero
337 - third_party/swiftshader/third_party/subzero
338 - third_party/usrsctp
339 - third_party/vulkan
340 - third_party/vulkan-validation-layers
341 - third_party/web-animations-js
342 - third_party/webdriver
343 - third_party/webrtc
344 - third_party/widevine
345 - third_party/woff2
346 - third_party/zlib/google
347 - url/third_party/mozilla
348 - v8/src/third_party/valgrind
349 - v8/third_party/inspector_protocol
350 -
351 - # gyp -> gn leftovers
352 - base/third_party/libevent
353 - third_party/adobe
354 - third_party/speech-dispatcher
355 - third_party/usb_ids
356 - third_party/xdg-utils
357 - third_party/yasm/run_yasm.py
358 - )
359 - if ! use system-ffmpeg; then
360 - keeplibs+=( third_party/ffmpeg third_party/opus )
361 - fi
362 - if ! use system-icu; then
363 - keeplibs+=( third_party/icu )
364 - fi
365 - if ! use system-libvpx; then
366 - keeplibs+=( third_party/libvpx )
367 - keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
368 - fi
369 - if use tcmalloc; then
370 - keeplibs+=( third_party/tcmalloc )
371 - fi
372 -
373 - # Remove most bundled libraries. Some are still needed.
374 - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
375 -}
376 -
377 -bootstrap_gn() {
378 - if tc-is-cross-compiler; then
379 - local -x AR=${BUILD_AR}
380 - local -x CC=${BUILD_CC}
381 - local -x CXX=${BUILD_CXX}
382 - local -x NM=${BUILD_NM}
383 - local -x CFLAGS=${BUILD_CFLAGS}
384 - local -x CXXFLAGS=${BUILD_CXXFLAGS}
385 - local -x LDFLAGS=${BUILD_LDFLAGS}
386 - fi
387 - einfo "Building GN..."
388 - set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean
389 - echo "$@"
390 - "$@" || die
391 -}
392 -
393 -src_configure() {
394 - local myconf_gn=""
395 -
396 - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
397 - myconf_gn+=" is_debug=false"
398 -
399 - # Component build isn't generally intended for use by end users. It's mostly useful
400 - # for development and debugging.
401 - myconf_gn+=" is_component_build=$(usex component-build true false)"
402 -
403 - myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
404 -
405 - # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
406 - myconf_gn+=" enable_nacl=false"
407 -
408 - # Use system-provided libraries.
409 - # TODO: freetype (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
410 - # TODO: use_system_hunspell (upstream changes needed).
411 - # TODO: use_system_libsrtp (bug #459932).
412 - # TODO: use_system_protobuf (bug #525560).
413 - # TODO: use_system_ssl (http://crbug.com/58087).
414 - # TODO: use_system_sqlite (http://crbug.com/22208).
415 -
416 - # libevent: https://bugs.gentoo.org/593458
417 - local gn_system_libraries=(
418 - flac
419 - harfbuzz-ng
420 - libdrm
421 - libjpeg
422 - libpng
423 - libwebp
424 - libxml
425 - libxslt
426 - openh264
427 - re2
428 - snappy
429 - yasm
430 - zlib
431 - )
432 - if use system-ffmpeg; then
433 - gn_system_libraries+=( ffmpeg opus )
434 - fi
435 - if use system-icu; then
436 - gn_system_libraries+=( icu )
437 - fi
438 - if use system-libvpx; then
439 - gn_system_libraries+=( libvpx )
440 - fi
441 - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
442 -
443 - # Optional dependencies.
444 - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
445 - myconf_gn+=" enable_widevine=$(usex widevine true false)"
446 - myconf_gn+=" use_cups=$(usex cups true false)"
447 - myconf_gn+=" use_gconf=false"
448 - myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
449 - myconf_gn+=" use_kerberos=$(usex kerberos true false)"
450 - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
451 -
452 - # TODO: link_pulseaudio=true for GN.
453 -
454 - myconf_gn+=" fieldtrial_testing_like_official_build=true"
455 -
456 - if tc-is-clang; then
457 - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
458 - else
459 - myconf_gn+=" is_clang=false"
460 - fi
461 -
462 - # Never use bundled gold binary. Disable gold linker flags for now.
463 - # Do not use bundled clang.
464 - # Trying to use gold results in linker crash.
465 - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
466 -
467 - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
468 - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
469 - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
470 -
471 - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
472 - # Note: these are for Gentoo use ONLY. For your own distribution,
473 - # please get your own set of keys. Feel free to contact chromium@g.o
474 - # for more info.
475 - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
476 - local google_default_client_id="329227923882.apps.googleusercontent.com"
477 - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
478 - myconf_gn+=" google_api_key=\"${google_api_key}\""
479 - myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
480 - myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
481 -
482 - local myarch="$(tc-arch)"
483 - if [[ $myarch = amd64 ]] ; then
484 - myconf_gn+=" target_cpu=\"x64\""
485 - ffmpeg_target_arch=x64
486 - elif [[ $myarch = x86 ]] ; then
487 - myconf_gn+=" target_cpu=\"x86\""
488 - ffmpeg_target_arch=ia32
489 - elif [[ $myarch = arm64 ]] ; then
490 - myconf_gn+=" target_cpu=\"arm64\""
491 - ffmpeg_target_arch=arm64
492 - elif [[ $myarch = arm ]] ; then
493 - myconf_gn+=" target_cpu=\"arm\""
494 - ffmpeg_target_arch=$(usex neon arm-neon arm)
495 - else
496 - die "Failed to determine target arch, got '$myarch'."
497 - fi
498 -
499 - # Make sure that -Werror doesn't get added to CFLAGS by the build system.
500 - # Depending on GCC version the warnings are different and we don't want
501 - # the build to fail because of that.
502 - myconf_gn+=" treat_warnings_as_errors=false"
503 -
504 - # Disable fatal linker warnings, bug 506268.
505 - myconf_gn+=" fatal_linker_warnings=false"
506 -
507 - # Avoid CFLAGS problems, bug #352457, bug #390147.
508 - if ! use custom-cflags; then
509 - replace-flags "-Os" "-O2"
510 - strip-flags
511 -
512 - # Prevent linker from running out of address space, bug #471810 .
513 - if use x86; then
514 - filter-flags "-g*"
515 - fi
516 -
517 - # Prevent libvpx build failures. Bug 530248, 544702, 546984.
518 - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
519 - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
520 - fi
521 - fi
522 -
523 - # Make sure the build system will use the right tools, bug #340795.
524 - tc-export AR CC CXX NM
525 -
526 - # Define a custom toolchain for GN
527 - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
528 -
529 - if tc-is-cross-compiler; then
530 - tc-export BUILD_{AR,CC,CXX,NM}
531 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
532 - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
533 - else
534 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
535 - fi
536 -
537 - # https://bugs.gentoo.org/588596
538 - append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
539 -
540 - # Bug 491582.
541 - export TMPDIR="${WORKDIR}/temp"
542 - mkdir -p -m 755 "${TMPDIR}" || die
543 -
544 - if ! use system-ffmpeg; then
545 - local build_ffmpeg_args=""
546 - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
547 - build_ffmpeg_args+=" --disable-asm"
548 - fi
549 -
550 - # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
551 - einfo "Configuring bundled ffmpeg..."
552 - pushd third_party/ffmpeg > /dev/null || die
553 - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
554 - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
555 - chromium/scripts/copy_config.sh || die
556 - chromium/scripts/generate_gn.py || die
557 - popd > /dev/null || die
558 - fi
559 -
560 - bootstrap_gn
561 -
562 - einfo "Configuring Chromium..."
563 - set -- out/Release/gn gen --args="${myconf_gn}" out/Release
564 - echo "$@"
565 - "$@" || die
566 -}
567 -
568 -src_compile() {
569 - local ninja_targets="chrome chromedriver"
570 - if use suid; then
571 - ninja_targets+=" chrome_sandbox"
572 - fi
573 -
574 - # Build mksnapshot and pax-mark it.
575 - if tc-is-cross-compiler; then
576 - eninja -C out/Release host/mksnapshot || die
577 - pax-mark m out/Release/host/mksnapshot
578 - else
579 - eninja -C out/Release mksnapshot || die
580 - pax-mark m out/Release/mksnapshot
581 - fi
582 -
583 - # Even though ninja autodetects number of CPUs, we respect
584 - # user's options, for debugging with -j 1 or any other reason.
585 - eninja -C out/Release ${ninja_targets} || die
586 -
587 - pax-mark m out/Release/chrome
588 -}
589 -
590 -src_install() {
591 - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
592 - exeinto "${CHROMIUM_HOME}"
593 - doexe out/Release/chrome
594 -
595 - if use suid; then
596 - newexe out/Release/chrome_sandbox chrome-sandbox
597 - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
598 - fi
599 -
600 - doexe out/Release/chromedriver
601 -
602 - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
603 - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
604 - doexe chromium-launcher.sh
605 -
606 - # It is important that we name the target "chromium-browser",
607 - # xdg-utils expect it; bug #355517.
608 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
609 - # keep the old symlink around for consistency
610 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
611 -
612 - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
613 -
614 - # Allow users to override command-line options, bug #357629.
615 - insinto /etc/chromium
616 - newins "${FILESDIR}/chromium.default" "default"
617 -
618 - pushd out/Release/locales > /dev/null || die
619 - chromium_remove_language_paks
620 - popd
621 -
622 - if use widevine; then
623 - # These will be provided by chrome-binary-plugins
624 - rm out/Release/libwidevinecdm*.so || die
625 - fi
626 -
627 - insinto "${CHROMIUM_HOME}"
628 - doins out/Release/*.bin
629 - doins out/Release/*.pak
630 - doins out/Release/*.so
631 -
632 - if ! use system-icu; then
633 - doins out/Release/icudtl.dat
634 - fi
635 -
636 - doins -r out/Release/locales
637 - doins -r out/Release/resources
638 -
639 - insinto "${CHROMIUM_HOME}/swiftshader"
640 - doins out/Release/swiftshader/*.so
641 -
642 - newman out/Release/chrome.1 chromium.1
643 - newman out/Release/chrome.1 chromium-browser.1
644 -
645 - # Install icons and desktop entry.
646 - local branding size
647 - for size in 16 22 24 32 48 64 128 256 ; do
648 - case ${size} in
649 - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
650 - *) branding="chrome/app/theme/chromium" ;;
651 - esac
652 - newicon -s ${size} "${branding}/product_logo_${size}.png" \
653 - chromium-browser.png
654 - done
655 -
656 - local mime_types="text/html;text/xml;application/xhtml+xml;"
657 - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
658 - mime_types+="x-scheme-handler/ftp;" # bug #412185
659 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
660 - make_desktop_entry \
661 - chromium-browser \
662 - "Chromium" \
663 - chromium-browser \
664 - "Network;WebBrowser" \
665 - "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
666 - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
667 -
668 - # Install GNOME default application entry (bug #303100).
669 - insinto /usr/share/gnome-control-center/default-apps
670 - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
671 -
672 - readme.gentoo_create_doc
673 -}
674 -
675 -pkg_preinst() {
676 - gnome2_icon_savelist
677 -}
678 -
679 -pkg_postrm() {
680 - gnome2_icon_cache_update
681 - xdg_desktop_database_update
682 -}
683 -
684 -pkg_postinst() {
685 - gnome2_icon_cache_update
686 - xdg_desktop_database_update
687 - readme.gentoo_print_elog
688 -}
689
690 diff --git a/www-client/chromium/chromium-62.0.3202.94.ebuild b/www-client/chromium/chromium-62.0.3202.94.ebuild
691 deleted file mode 100644
692 index 2ae4fb01ad0..00000000000
693 --- a/www-client/chromium/chromium-62.0.3202.94.ebuild
694 +++ /dev/null
695 @@ -1,653 +0,0 @@
696 -# Copyright 1999-2017 Gentoo Foundation
697 -# Distributed under the terms of the GNU General Public License v2
698 -
699 -EAPI="6"
700 -PYTHON_COMPAT=( python2_7 )
701 -
702 -CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
703 - 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
704 - sv sw ta te th tr uk vi zh-CN zh-TW"
705 -
706 -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 versionator xdg-utils
707 -
708 -DESCRIPTION="Open-source version of Google Chrome web browser"
709 -HOMEPAGE="http://chromium.org/"
710 -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
711 -
712 -LICENSE="BSD"
713 -SLOT="0"
714 -KEYWORDS="amd64 ~arm ~arm64 ~x86"
715 -IUSE="component-build cups gnome-keyring +hangouts kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine"
716 -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
717 -
718 -COMMON_DEPEND="
719 - app-arch/bzip2:=
720 - cups? ( >=net-print/cups-1.3.11:= )
721 - dev-libs/expat:=
722 - dev-libs/glib:2
723 - system-icu? ( >=dev-libs/icu-59 <dev-libs/icu-60:= )
724 - >=dev-libs/libxml2-2.9.4-r3:=[icu]
725 - dev-libs/libxslt:=
726 - dev-libs/nspr:=
727 - >=dev-libs/nss-3.14.3:=
728 - >=dev-libs/re2-0.2016.05.01:=
729 - gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
730 - >=media-libs/alsa-lib-1.0.19:=
731 - media-libs/fontconfig:=
732 - media-libs/freetype:=
733 - >=media-libs/harfbuzz-1.4.2:=[icu(-)]
734 - media-libs/libjpeg-turbo:=
735 - media-libs/libpng:=
736 - system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
737 - >=media-libs/openh264-1.6.0:=
738 - pulseaudio? ( media-sound/pulseaudio:= )
739 - system-ffmpeg? (
740 - >=media-video/ffmpeg-3:=
741 - || (
742 - media-video/ffmpeg[-samba]
743 - >=net-fs/samba-4.5.10-r1[-debug(-)]
744 - )
745 - !=net-fs/samba-4.5.12
746 - media-libs/opus:=
747 - )
748 - sys-apps/dbus:=
749 - sys-apps/pciutils:=
750 - virtual/udev
751 - x11-libs/cairo:=
752 - x11-libs/gdk-pixbuf:2
753 - x11-libs/gtk+:3[X]
754 - x11-libs/libX11:=
755 - x11-libs/libXcomposite:=
756 - x11-libs/libXcursor:=
757 - x11-libs/libXdamage:=
758 - x11-libs/libXext:=
759 - x11-libs/libXfixes:=
760 - >=x11-libs/libXi-1.6.0:=
761 - x11-libs/libXrandr:=
762 - x11-libs/libXrender:=
763 - x11-libs/libXScrnSaver:=
764 - x11-libs/libXtst:=
765 - x11-libs/pango:=
766 - app-arch/snappy:=
767 - media-libs/flac:=
768 - >=media-libs/libwebp-0.4.0:=
769 - sys-libs/zlib:=[minizip]
770 - kerberos? ( virtual/krb5 )
771 -"
772 -# For nvidia-drivers blocker, see bug #413637 .
773 -RDEPEND="${COMMON_DEPEND}
774 - !=www-client/chromium-9999
775 - !<www-plugins/chrome-binary-plugins-57
776 - x11-misc/xdg-utils
777 - virtual/opengl
778 - virtual/ttf-fonts
779 - selinux? ( sec-policy/selinux-chromium )
780 - tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
781 - widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
782 -"
783 -# dev-vcs/git - https://bugs.gentoo.org/593476
784 -# sys-apps/sandbox - https://crbug.com/586444
785 -DEPEND="${COMMON_DEPEND}
786 - >=app-arch/gzip-1.7
787 - !arm? (
788 - dev-lang/yasm
789 - )
790 - dev-lang/perl
791 - >=dev-util/gperf-3.0.3
792 - >=dev-util/ninja-1.7.2
793 - >=net-libs/nodejs-6.9.4
794 - sys-apps/hwids[usb(+)]
795 - >=sys-devel/bison-2.4.3
796 - sys-devel/flex
797 - virtual/pkgconfig
798 - dev-vcs/git
799 - $(python_gen_any_dep '
800 - dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]
801 - >=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]
802 - dev-python/html5lib[${PYTHON_USEDEP}]
803 - dev-python/simplejson[${PYTHON_USEDEP}]
804 - ')
805 -"
806 -
807 -# Keep this in sync with the python_gen_any_dep call.
808 -python_check_deps() {
809 - has_version --host-root "dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]" &&
810 - has_version --host-root ">=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" &&
811 - has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" &&
812 - has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]"
813 -}
814 -
815 -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
816 - EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
817 -fi
818 -
819 -DISABLE_AUTOFORMATTING="yes"
820 -DOC_CONTENTS="
821 -Some web pages may require additional fonts to display properly.
822 -Try installing some of the following packages if some characters
823 -are not displayed properly:
824 -- media-fonts/arphicfonts
825 -- media-fonts/bitstream-cyberbit
826 -- media-fonts/droid
827 -- media-fonts/ipamonafont
828 -- media-fonts/noto
829 -- media-fonts/ja-ipafonts
830 -- media-fonts/takao-fonts
831 -- media-fonts/wqy-microhei
832 -- media-fonts/wqy-zenhei
833 -
834 -To fix broken icons on the Downloads page, you should install an icon
835 -theme that covers the appropriate MIME types, and configure this as your
836 -GTK+ icon theme.
837 -"
838 -
839 -PATCHES=(
840 - "${FILESDIR}/${PN}-widevine-r1.patch"
841 - "${FILESDIR}/${PN}-FORTIFY_SOURCE-r2.patch"
842 - "${FILESDIR}/${PN}-gcc5-r3.patch"
843 - "${FILESDIR}/${PN}-gn-bootstrap-r17.patch"
844 - "${FILESDIR}/${PN}-glibc2.26-r1.patch"
845 -)
846 -
847 -pre_build_checks() {
848 - if [[ ${MERGE_TYPE} != binary ]]; then
849 - local -x CPP="$(tc-getCXX) -E"
850 - if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then
851 - # bugs: #601654
852 - die "At least clang 3.9.1 is required"
853 - fi
854 - if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then
855 - # bugs: #535730, #525374, #518668, #600288, #627356
856 - die "At least gcc 5.0 is required"
857 - fi
858 - fi
859 -
860 - # Check build requirements, bug #541816 and bug #471810 .
861 - CHECKREQS_MEMORY="3G"
862 - CHECKREQS_DISK_BUILD="5G"
863 - eshopts_push -s extglob
864 - if is-flagq '-g?(gdb)?([1-9])'; then
865 - CHECKREQS_DISK_BUILD="25G"
866 - if ! use component-build; then
867 - CHECKREQS_MEMORY="16G"
868 - fi
869 - fi
870 - eshopts_pop
871 - check-reqs_pkg_setup
872 -}
873 -
874 -pkg_pretend() {
875 - pre_build_checks
876 -}
877 -
878 -pkg_setup() {
879 - pre_build_checks
880 -
881 - # Make sure the build system will use the right python, bug #344367.
882 - python-any-r1_pkg_setup
883 -
884 - chromium_suid_sandbox_check_kernel_config
885 -}
886 -
887 -src_prepare() {
888 - default
889 -
890 - mkdir -p third_party/node/linux/node-linux-x64/bin || die
891 - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
892 -
893 - local keeplibs=(
894 - base/third_party/dmg_fp
895 - base/third_party/dynamic_annotations
896 - base/third_party/icu
897 - base/third_party/nspr
898 - base/third_party/superfasthash
899 - base/third_party/symbolize
900 - base/third_party/valgrind
901 - base/third_party/xdg_mime
902 - base/third_party/xdg_user_dirs
903 - breakpad/src/third_party/curl
904 - chrome/third_party/mozilla_security_manager
905 - courgette/third_party
906 - net/third_party/mozilla_security_manager
907 - net/third_party/nss
908 - third_party/WebKit
909 - third_party/analytics
910 - third_party/angle
911 - third_party/angle/src/common/third_party/base
912 - third_party/angle/src/common/third_party/murmurhash
913 - third_party/angle/src/third_party/compiler
914 - third_party/angle/src/third_party/libXNVCtrl
915 - third_party/angle/src/third_party/trace_event
916 - third_party/boringssl
917 - third_party/brotli
918 - third_party/cacheinvalidation
919 - third_party/catapult
920 - third_party/catapult/third_party/polymer
921 - third_party/catapult/third_party/py_vulcanize
922 - third_party/catapult/third_party/py_vulcanize/third_party/rcssmin
923 - third_party/catapult/third_party/py_vulcanize/third_party/rjsmin
924 - third_party/catapult/tracing/third_party/d3
925 - third_party/catapult/tracing/third_party/gl-matrix
926 - third_party/catapult/tracing/third_party/jszip
927 - third_party/catapult/tracing/third_party/mannwhitneyu
928 - third_party/catapult/tracing/third_party/oboe
929 - third_party/ced
930 - third_party/cld_2
931 - third_party/cld_3
932 - third_party/crc32c
933 - third_party/cros_system_api
934 - third_party/devscripts
935 - third_party/dom_distiller_js
936 - third_party/fips181
937 - third_party/flatbuffers
938 - third_party/flot
939 - third_party/freetype
940 - third_party/glslang-angle
941 - third_party/google_input_tools
942 - third_party/google_input_tools/third_party/closure_library
943 - third_party/google_input_tools/third_party/closure_library/third_party/closure
944 - third_party/googletest
945 - third_party/hunspell
946 - third_party/iccjpeg
947 - third_party/inspector_protocol
948 - third_party/jinja2
949 - third_party/jstemplate
950 - third_party/khronos
951 - third_party/leveldatabase
952 - third_party/libXNVCtrl
953 - third_party/libaddressinput
954 - third_party/libjingle
955 - third_party/libphonenumber
956 - third_party/libsecret
957 - third_party/libsrtp
958 - third_party/libudev
959 - third_party/libwebm
960 - third_party/libxml/chromium
961 - third_party/libyuv
962 - third_party/lss
963 - third_party/lzma_sdk
964 - third_party/markupsafe
965 - third_party/mesa
966 - third_party/modp_b64
967 - third_party/mt19937ar
968 - third_party/node
969 - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
970 - third_party/openmax_dl
971 - third_party/ots
972 - third_party/pdfium
973 - third_party/pdfium/third_party/agg23
974 - third_party/pdfium/third_party/base
975 - third_party/pdfium/third_party/build
976 - third_party/pdfium/third_party/bigint
977 - third_party/pdfium/third_party/freetype
978 - third_party/pdfium/third_party/lcms
979 - third_party/pdfium/third_party/libopenjpeg20
980 - third_party/pdfium/third_party/libpng16
981 - third_party/pdfium/third_party/libtiff
982 - third_party/ply
983 - third_party/polymer
984 - third_party/protobuf
985 - third_party/protobuf/third_party/six
986 - third_party/qcms
987 - third_party/sfntly
988 - third_party/skia
989 - third_party/skia/third_party/gif
990 - third_party/skia/third_party/vulkan
991 - third_party/smhasher
992 - third_party/spirv-headers
993 - third_party/spirv-tools-angle
994 - third_party/sqlite
995 - third_party/swiftshader
996 - third_party/swiftshader/third_party/llvm-subzero
997 - third_party/swiftshader/third_party/subzero
998 - third_party/usrsctp
999 - third_party/vulkan
1000 - third_party/vulkan-validation-layers
1001 - third_party/web-animations-js
1002 - third_party/webdriver
1003 - third_party/webrtc
1004 - third_party/widevine
1005 - third_party/woff2
1006 - third_party/zlib/google
1007 - url/third_party/mozilla
1008 - v8/src/third_party/valgrind
1009 - v8/third_party/inspector_protocol
1010 -
1011 - # gyp -> gn leftovers
1012 - base/third_party/libevent
1013 - third_party/adobe
1014 - third_party/speech-dispatcher
1015 - third_party/usb_ids
1016 - third_party/xdg-utils
1017 - third_party/yasm/run_yasm.py
1018 - )
1019 - if ! use system-ffmpeg; then
1020 - keeplibs+=( third_party/ffmpeg third_party/opus )
1021 - fi
1022 - if ! use system-icu; then
1023 - keeplibs+=( third_party/icu )
1024 - fi
1025 - if ! use system-libvpx; then
1026 - keeplibs+=( third_party/libvpx )
1027 - keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
1028 - fi
1029 - if use tcmalloc; then
1030 - keeplibs+=( third_party/tcmalloc )
1031 - fi
1032 -
1033 - # Remove most bundled libraries. Some are still needed.
1034 - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
1035 -}
1036 -
1037 -bootstrap_gn() {
1038 - if tc-is-cross-compiler; then
1039 - local -x AR=${BUILD_AR}
1040 - local -x CC=${BUILD_CC}
1041 - local -x CXX=${BUILD_CXX}
1042 - local -x NM=${BUILD_NM}
1043 - local -x CFLAGS=${BUILD_CFLAGS}
1044 - local -x CXXFLAGS=${BUILD_CXXFLAGS}
1045 - local -x LDFLAGS=${BUILD_LDFLAGS}
1046 - fi
1047 - einfo "Building GN..."
1048 - set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean
1049 - echo "$@"
1050 - "$@" || die
1051 -}
1052 -
1053 -src_configure() {
1054 - local myconf_gn=""
1055 -
1056 - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
1057 - myconf_gn+=" is_debug=false"
1058 -
1059 - # Component build isn't generally intended for use by end users. It's mostly useful
1060 - # for development and debugging.
1061 - myconf_gn+=" is_component_build=$(usex component-build true false)"
1062 -
1063 - myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
1064 -
1065 - # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
1066 - myconf_gn+=" enable_nacl=false"
1067 -
1068 - # Use system-provided libraries.
1069 - # TODO: freetype (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
1070 - # TODO: use_system_hunspell (upstream changes needed).
1071 - # TODO: use_system_libsrtp (bug #459932).
1072 - # TODO: use_system_protobuf (bug #525560).
1073 - # TODO: use_system_ssl (http://crbug.com/58087).
1074 - # TODO: use_system_sqlite (http://crbug.com/22208).
1075 -
1076 - # libevent: https://bugs.gentoo.org/593458
1077 - local gn_system_libraries=(
1078 - flac
1079 - harfbuzz-ng
1080 - libdrm
1081 - libjpeg
1082 - libpng
1083 - libwebp
1084 - libxml
1085 - libxslt
1086 - openh264
1087 - re2
1088 - snappy
1089 - yasm
1090 - zlib
1091 - )
1092 - if use system-ffmpeg; then
1093 - gn_system_libraries+=( ffmpeg opus )
1094 - fi
1095 - if use system-icu; then
1096 - gn_system_libraries+=( icu )
1097 - fi
1098 - if use system-libvpx; then
1099 - gn_system_libraries+=( libvpx )
1100 - fi
1101 - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
1102 -
1103 - # Optional dependencies.
1104 - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
1105 - myconf_gn+=" enable_widevine=$(usex widevine true false)"
1106 - myconf_gn+=" use_cups=$(usex cups true false)"
1107 - myconf_gn+=" use_gconf=false"
1108 - myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
1109 - myconf_gn+=" use_kerberos=$(usex kerberos true false)"
1110 - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
1111 -
1112 - # TODO: link_pulseaudio=true for GN.
1113 -
1114 - myconf_gn+=" fieldtrial_testing_like_official_build=true"
1115 -
1116 - if tc-is-clang; then
1117 - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
1118 - else
1119 - myconf_gn+=" is_clang=false"
1120 - fi
1121 -
1122 - # Never use bundled gold binary. Disable gold linker flags for now.
1123 - # Do not use bundled clang.
1124 - # Trying to use gold results in linker crash.
1125 - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
1126 -
1127 - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
1128 - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
1129 - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
1130 -
1131 - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
1132 - # Note: these are for Gentoo use ONLY. For your own distribution,
1133 - # please get your own set of keys. Feel free to contact chromium@g.o
1134 - # for more info.
1135 - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
1136 - local google_default_client_id="329227923882.apps.googleusercontent.com"
1137 - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
1138 - myconf_gn+=" google_api_key=\"${google_api_key}\""
1139 - myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
1140 - myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
1141 -
1142 - local myarch="$(tc-arch)"
1143 - if [[ $myarch = amd64 ]] ; then
1144 - myconf_gn+=" target_cpu=\"x64\""
1145 - ffmpeg_target_arch=x64
1146 - elif [[ $myarch = x86 ]] ; then
1147 - myconf_gn+=" target_cpu=\"x86\""
1148 - ffmpeg_target_arch=ia32
1149 - elif [[ $myarch = arm64 ]] ; then
1150 - myconf_gn+=" target_cpu=\"arm64\""
1151 - ffmpeg_target_arch=arm64
1152 - elif [[ $myarch = arm ]] ; then
1153 - myconf_gn+=" target_cpu=\"arm\""
1154 - ffmpeg_target_arch=$(usex neon arm-neon arm)
1155 - else
1156 - die "Failed to determine target arch, got '$myarch'."
1157 - fi
1158 -
1159 - # Make sure that -Werror doesn't get added to CFLAGS by the build system.
1160 - # Depending on GCC version the warnings are different and we don't want
1161 - # the build to fail because of that.
1162 - myconf_gn+=" treat_warnings_as_errors=false"
1163 -
1164 - # Disable fatal linker warnings, bug 506268.
1165 - myconf_gn+=" fatal_linker_warnings=false"
1166 -
1167 - # Avoid CFLAGS problems, bug #352457, bug #390147.
1168 - if ! use custom-cflags; then
1169 - replace-flags "-Os" "-O2"
1170 - strip-flags
1171 -
1172 - # Prevent linker from running out of address space, bug #471810 .
1173 - if use x86; then
1174 - filter-flags "-g*"
1175 - fi
1176 -
1177 - # Prevent libvpx build failures. Bug 530248, 544702, 546984.
1178 - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
1179 - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
1180 - fi
1181 - fi
1182 -
1183 - # Make sure the build system will use the right tools, bug #340795.
1184 - tc-export AR CC CXX NM
1185 -
1186 - # Define a custom toolchain for GN
1187 - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
1188 -
1189 - if tc-is-cross-compiler; then
1190 - tc-export BUILD_{AR,CC,CXX,NM}
1191 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
1192 - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
1193 - else
1194 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
1195 - fi
1196 -
1197 - # https://bugs.gentoo.org/588596
1198 - append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
1199 -
1200 - # Bug 491582.
1201 - export TMPDIR="${WORKDIR}/temp"
1202 - mkdir -p -m 755 "${TMPDIR}" || die
1203 -
1204 - if ! use system-ffmpeg; then
1205 - local build_ffmpeg_args=""
1206 - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
1207 - build_ffmpeg_args+=" --disable-asm"
1208 - fi
1209 -
1210 - # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
1211 - einfo "Configuring bundled ffmpeg..."
1212 - pushd third_party/ffmpeg > /dev/null || die
1213 - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
1214 - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
1215 - chromium/scripts/copy_config.sh || die
1216 - chromium/scripts/generate_gn.py || die
1217 - popd > /dev/null || die
1218 - fi
1219 -
1220 - bootstrap_gn
1221 -
1222 - einfo "Configuring Chromium..."
1223 - set -- out/Release/gn gen --args="${myconf_gn}" out/Release
1224 - echo "$@"
1225 - "$@" || die
1226 -}
1227 -
1228 -src_compile() {
1229 - local ninja_targets="chrome chromedriver"
1230 - if use suid; then
1231 - ninja_targets+=" chrome_sandbox"
1232 - fi
1233 -
1234 - # Build mksnapshot and pax-mark it.
1235 - if tc-is-cross-compiler; then
1236 - eninja -C out/Release host/mksnapshot || die
1237 - pax-mark m out/Release/host/mksnapshot
1238 - else
1239 - eninja -C out/Release mksnapshot || die
1240 - pax-mark m out/Release/mksnapshot
1241 - fi
1242 -
1243 - # Even though ninja autodetects number of CPUs, we respect
1244 - # user's options, for debugging with -j 1 or any other reason.
1245 - eninja -C out/Release ${ninja_targets} || die
1246 -
1247 - pax-mark m out/Release/chrome
1248 -}
1249 -
1250 -src_install() {
1251 - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
1252 - exeinto "${CHROMIUM_HOME}"
1253 - doexe out/Release/chrome
1254 -
1255 - if use suid; then
1256 - newexe out/Release/chrome_sandbox chrome-sandbox
1257 - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
1258 - fi
1259 -
1260 - doexe out/Release/chromedriver
1261 -
1262 - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
1263 - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
1264 - doexe chromium-launcher.sh
1265 -
1266 - # It is important that we name the target "chromium-browser",
1267 - # xdg-utils expect it; bug #355517.
1268 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
1269 - # keep the old symlink around for consistency
1270 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
1271 -
1272 - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
1273 -
1274 - # Allow users to override command-line options, bug #357629.
1275 - insinto /etc/chromium
1276 - newins "${FILESDIR}/chromium.default" "default"
1277 -
1278 - pushd out/Release/locales > /dev/null || die
1279 - chromium_remove_language_paks
1280 - popd
1281 -
1282 - if use widevine; then
1283 - # These will be provided by chrome-binary-plugins
1284 - rm out/Release/libwidevinecdm*.so || die
1285 - fi
1286 -
1287 - insinto "${CHROMIUM_HOME}"
1288 - doins out/Release/*.bin
1289 - doins out/Release/*.pak
1290 - doins out/Release/*.so
1291 -
1292 - if ! use system-icu; then
1293 - doins out/Release/icudtl.dat
1294 - fi
1295 -
1296 - doins -r out/Release/locales
1297 - doins -r out/Release/resources
1298 -
1299 - insinto "${CHROMIUM_HOME}/swiftshader"
1300 - doins out/Release/swiftshader/*.so
1301 -
1302 - newman out/Release/chrome.1 chromium.1
1303 - newman out/Release/chrome.1 chromium-browser.1
1304 -
1305 - # Install icons and desktop entry.
1306 - local branding size
1307 - for size in 16 22 24 32 48 64 128 256 ; do
1308 - case ${size} in
1309 - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
1310 - *) branding="chrome/app/theme/chromium" ;;
1311 - esac
1312 - newicon -s ${size} "${branding}/product_logo_${size}.png" \
1313 - chromium-browser.png
1314 - done
1315 -
1316 - local mime_types="text/html;text/xml;application/xhtml+xml;"
1317 - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
1318 - mime_types+="x-scheme-handler/ftp;" # bug #412185
1319 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
1320 - make_desktop_entry \
1321 - chromium-browser \
1322 - "Chromium" \
1323 - chromium-browser \
1324 - "Network;WebBrowser" \
1325 - "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
1326 - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
1327 -
1328 - # Install GNOME default application entry (bug #303100).
1329 - insinto /usr/share/gnome-control-center/default-apps
1330 - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
1331 -
1332 - readme.gentoo_create_doc
1333 -}
1334 -
1335 -pkg_preinst() {
1336 - gnome2_icon_savelist
1337 -}
1338 -
1339 -pkg_postrm() {
1340 - gnome2_icon_cache_update
1341 - xdg_desktop_database_update
1342 -}
1343 -
1344 -pkg_postinst() {
1345 - gnome2_icon_cache_update
1346 - xdg_desktop_database_update
1347 - readme.gentoo_print_elog
1348 -}
1349
1350 diff --git a/www-client/chromium/chromium-63.0.3239.70.ebuild b/www-client/chromium/chromium-63.0.3239.70.ebuild
1351 deleted file mode 100644
1352 index c228cfc0c39..00000000000
1353 --- a/www-client/chromium/chromium-63.0.3239.70.ebuild
1354 +++ /dev/null
1355 @@ -1,657 +0,0 @@
1356 -# Copyright 1999-2017 Gentoo Foundation
1357 -# Distributed under the terms of the GNU General Public License v2
1358 -
1359 -EAPI="6"
1360 -PYTHON_COMPAT=( python2_7 )
1361 -
1362 -CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
1363 - 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
1364 - sv sw ta te th tr uk vi zh-CN zh-TW"
1365 -
1366 -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 versionator xdg-utils
1367 -
1368 -DESCRIPTION="Open-source version of Google Chrome web browser"
1369 -HOMEPAGE="http://chromium.org/"
1370 -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
1371 -
1372 -LICENSE="BSD"
1373 -SLOT="0"
1374 -KEYWORDS="~amd64 ~arm ~arm64 ~x86"
1375 -IUSE="component-build cups gnome-keyring +hangouts kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine"
1376 -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
1377 -
1378 -COMMON_DEPEND="
1379 - app-arch/bzip2:=
1380 - cups? ( >=net-print/cups-1.3.11:= )
1381 - dev-libs/expat:=
1382 - dev-libs/glib:2
1383 - system-icu? ( >=dev-libs/icu-59 <dev-libs/icu-60:= )
1384 - >=dev-libs/libxml2-2.9.4-r3:=[icu]
1385 - dev-libs/libxslt:=
1386 - dev-libs/nspr:=
1387 - >=dev-libs/nss-3.14.3:=
1388 - >=dev-libs/re2-0.2016.05.01:=
1389 - gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
1390 - >=media-libs/alsa-lib-1.0.19:=
1391 - media-libs/fontconfig:=
1392 - media-libs/freetype:=
1393 - >=media-libs/harfbuzz-1.5.0:=[icu(-)]
1394 - media-libs/libjpeg-turbo:=
1395 - media-libs/libpng:=
1396 - system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
1397 - >=media-libs/openh264-1.6.0:=
1398 - pulseaudio? ( media-sound/pulseaudio:= )
1399 - system-ffmpeg? (
1400 - >=media-video/ffmpeg-3:=
1401 - || (
1402 - media-video/ffmpeg[-samba]
1403 - >=net-fs/samba-4.5.10-r1[-debug(-)]
1404 - )
1405 - !=net-fs/samba-4.5.12
1406 - media-libs/opus:=
1407 - )
1408 - sys-apps/dbus:=
1409 - sys-apps/pciutils:=
1410 - virtual/udev
1411 - x11-libs/cairo:=
1412 - x11-libs/gdk-pixbuf:2
1413 - x11-libs/gtk+:3[X]
1414 - x11-libs/libX11:=
1415 - x11-libs/libXcomposite:=
1416 - x11-libs/libXcursor:=
1417 - x11-libs/libXdamage:=
1418 - x11-libs/libXext:=
1419 - x11-libs/libXfixes:=
1420 - >=x11-libs/libXi-1.6.0:=
1421 - x11-libs/libXrandr:=
1422 - x11-libs/libXrender:=
1423 - x11-libs/libXScrnSaver:=
1424 - x11-libs/libXtst:=
1425 - x11-libs/pango:=
1426 - app-arch/snappy:=
1427 - media-libs/flac:=
1428 - >=media-libs/libwebp-0.4.0:=
1429 - sys-libs/zlib:=[minizip]
1430 - kerberos? ( virtual/krb5 )
1431 -"
1432 -# For nvidia-drivers blocker, see bug #413637 .
1433 -RDEPEND="${COMMON_DEPEND}
1434 - !=www-client/chromium-9999
1435 - !<www-plugins/chrome-binary-plugins-57
1436 - x11-misc/xdg-utils
1437 - virtual/opengl
1438 - virtual/ttf-fonts
1439 - selinux? ( sec-policy/selinux-chromium )
1440 - tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
1441 - widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
1442 -"
1443 -# dev-vcs/git - https://bugs.gentoo.org/593476
1444 -# sys-apps/sandbox - https://crbug.com/586444
1445 -DEPEND="${COMMON_DEPEND}
1446 - >=app-arch/gzip-1.7
1447 - !arm? (
1448 - dev-lang/yasm
1449 - )
1450 - dev-lang/perl
1451 - >=dev-util/gperf-3.0.3
1452 - >=dev-util/ninja-1.7.2
1453 - >=net-libs/nodejs-6.9.4
1454 - sys-apps/hwids[usb(+)]
1455 - >=sys-devel/bison-2.4.3
1456 - sys-devel/flex
1457 - virtual/pkgconfig
1458 - dev-vcs/git
1459 - $(python_gen_any_dep '
1460 - dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]
1461 - >=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]
1462 - dev-python/html5lib[${PYTHON_USEDEP}]
1463 - dev-python/simplejson[${PYTHON_USEDEP}]
1464 - ')
1465 -"
1466 -
1467 -# Keep this in sync with the python_gen_any_dep call.
1468 -python_check_deps() {
1469 - has_version --host-root "dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]" &&
1470 - has_version --host-root ">=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" &&
1471 - has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" &&
1472 - has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]"
1473 -}
1474 -
1475 -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
1476 - EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
1477 -fi
1478 -
1479 -DISABLE_AUTOFORMATTING="yes"
1480 -DOC_CONTENTS="
1481 -Some web pages may require additional fonts to display properly.
1482 -Try installing some of the following packages if some characters
1483 -are not displayed properly:
1484 -- media-fonts/arphicfonts
1485 -- media-fonts/bitstream-cyberbit
1486 -- media-fonts/droid
1487 -- media-fonts/ipamonafont
1488 -- media-fonts/noto
1489 -- media-fonts/ja-ipafonts
1490 -- media-fonts/takao-fonts
1491 -- media-fonts/wqy-microhei
1492 -- media-fonts/wqy-zenhei
1493 -
1494 -To fix broken icons on the Downloads page, you should install an icon
1495 -theme that covers the appropriate MIME types, and configure this as your
1496 -GTK+ icon theme.
1497 -"
1498 -
1499 -PATCHES=(
1500 - "${FILESDIR}/${PN}-widevine-r1.patch"
1501 - "${FILESDIR}/${PN}-FORTIFY_SOURCE-r2.patch"
1502 - "${FILESDIR}/${PN}-gcc5-r4.patch"
1503 - "${FILESDIR}/${PN}-clang-r1.patch"
1504 - "${FILESDIR}/${PN}-webrtc-r0.patch"
1505 - "${FILESDIR}/${PN}-gcc5-r5.patch"
1506 -)
1507 -
1508 -pre_build_checks() {
1509 - if [[ ${MERGE_TYPE} != binary ]]; then
1510 - local -x CPP="$(tc-getCXX) -E"
1511 - if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then
1512 - # bugs: #601654
1513 - die "At least clang 3.9.1 is required"
1514 - fi
1515 - if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then
1516 - # bugs: #535730, #525374, #518668, #600288, #627356
1517 - die "At least gcc 5.0 is required"
1518 - fi
1519 - fi
1520 -
1521 - # Check build requirements, bug #541816 and bug #471810 .
1522 - CHECKREQS_MEMORY="3G"
1523 - CHECKREQS_DISK_BUILD="5G"
1524 - eshopts_push -s extglob
1525 - if is-flagq '-g?(gdb)?([1-9])'; then
1526 - CHECKREQS_DISK_BUILD="25G"
1527 - if ! use component-build; then
1528 - CHECKREQS_MEMORY="16G"
1529 - fi
1530 - fi
1531 - eshopts_pop
1532 - check-reqs_pkg_setup
1533 -}
1534 -
1535 -pkg_pretend() {
1536 - pre_build_checks
1537 -}
1538 -
1539 -pkg_setup() {
1540 - pre_build_checks
1541 -
1542 - # Make sure the build system will use the right python, bug #344367.
1543 - python-any-r1_pkg_setup
1544 -
1545 - chromium_suid_sandbox_check_kernel_config
1546 -}
1547 -
1548 -src_prepare() {
1549 - default
1550 -
1551 - mkdir -p third_party/node/linux/node-linux-x64/bin || die
1552 - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
1553 -
1554 - local keeplibs=(
1555 - base/third_party/dmg_fp
1556 - base/third_party/dynamic_annotations
1557 - base/third_party/icu
1558 - base/third_party/nspr
1559 - base/third_party/superfasthash
1560 - base/third_party/symbolize
1561 - base/third_party/valgrind
1562 - base/third_party/xdg_mime
1563 - base/third_party/xdg_user_dirs
1564 - chrome/third_party/mozilla_security_manager
1565 - courgette/third_party
1566 - net/third_party/mozilla_security_manager
1567 - net/third_party/nss
1568 - third_party/WebKit
1569 - third_party/analytics
1570 - third_party/angle
1571 - third_party/angle/src/common/third_party/base
1572 - third_party/angle/src/common/third_party/smhasher
1573 - third_party/angle/src/third_party/compiler
1574 - third_party/angle/src/third_party/libXNVCtrl
1575 - third_party/angle/src/third_party/trace_event
1576 - third_party/blink
1577 - third_party/boringssl
1578 - third_party/breakpad
1579 - third_party/breakpad/breakpad/src/third_party/curl
1580 - third_party/brotli
1581 - third_party/cacheinvalidation
1582 - third_party/catapult
1583 - third_party/catapult/common/py_vulcanize/third_party/rcssmin
1584 - third_party/catapult/common/py_vulcanize/third_party/rjsmin
1585 - third_party/catapult/third_party/polymer
1586 - third_party/catapult/tracing/third_party/d3
1587 - third_party/catapult/tracing/third_party/gl-matrix
1588 - third_party/catapult/tracing/third_party/jszip
1589 - third_party/catapult/tracing/third_party/mannwhitneyu
1590 - third_party/catapult/tracing/third_party/oboe
1591 - third_party/catapult/tracing/third_party/pako
1592 - third_party/ced
1593 - third_party/cld_2
1594 - third_party/cld_3
1595 - third_party/crc32c
1596 - third_party/cros_system_api
1597 - third_party/devscripts
1598 - third_party/dom_distiller_js
1599 - third_party/fips181
1600 - third_party/flatbuffers
1601 - third_party/flot
1602 - third_party/freetype
1603 - third_party/glslang-angle
1604 - third_party/google_input_tools
1605 - third_party/google_input_tools/third_party/closure_library
1606 - third_party/google_input_tools/third_party/closure_library/third_party/closure
1607 - third_party/googletest
1608 - third_party/hunspell
1609 - third_party/iccjpeg
1610 - third_party/inspector_protocol
1611 - third_party/jinja2
1612 - third_party/jstemplate
1613 - third_party/khronos
1614 - third_party/leveldatabase
1615 - third_party/libXNVCtrl
1616 - third_party/libaddressinput
1617 - third_party/libjingle
1618 - third_party/libphonenumber
1619 - third_party/libsecret
1620 - third_party/libsrtp
1621 - third_party/libudev
1622 - third_party/libwebm
1623 - third_party/libxml/chromium
1624 - third_party/libyuv
1625 - third_party/lss
1626 - third_party/lzma_sdk
1627 - third_party/markupsafe
1628 - third_party/mesa
1629 - third_party/modp_b64
1630 - third_party/mt19937ar
1631 - third_party/node
1632 - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
1633 - third_party/openmax_dl
1634 - third_party/ots
1635 - third_party/pdfium
1636 - third_party/pdfium/third_party/agg23
1637 - third_party/pdfium/third_party/base
1638 - third_party/pdfium/third_party/build
1639 - third_party/pdfium/third_party/bigint
1640 - third_party/pdfium/third_party/freetype
1641 - third_party/pdfium/third_party/lcms
1642 - third_party/pdfium/third_party/libopenjpeg20
1643 - third_party/pdfium/third_party/libpng16
1644 - third_party/pdfium/third_party/libtiff
1645 - third_party/ply
1646 - third_party/polymer
1647 - third_party/protobuf
1648 - third_party/protobuf/third_party/six
1649 - third_party/qcms
1650 - third_party/sfntly
1651 - third_party/skia
1652 - third_party/skia/third_party/gif
1653 - third_party/skia/third_party/vulkan
1654 - third_party/smhasher
1655 - third_party/spirv-headers
1656 - third_party/spirv-tools-angle
1657 - third_party/sqlite
1658 - third_party/swiftshader
1659 - third_party/swiftshader/third_party/llvm-subzero
1660 - third_party/swiftshader/third_party/subzero
1661 - third_party/usrsctp
1662 - third_party/vulkan
1663 - third_party/vulkan-validation-layers
1664 - third_party/web-animations-js
1665 - third_party/webdriver
1666 - third_party/webrtc
1667 - third_party/widevine
1668 - third_party/woff2
1669 - third_party/zlib/google
1670 - url/third_party/mozilla
1671 - v8/src/third_party/valgrind
1672 - v8/third_party/inspector_protocol
1673 -
1674 - # gyp -> gn leftovers
1675 - base/third_party/libevent
1676 - third_party/adobe
1677 - third_party/speech-dispatcher
1678 - third_party/usb_ids
1679 - third_party/xdg-utils
1680 - third_party/yasm/run_yasm.py
1681 - )
1682 - if ! use system-ffmpeg; then
1683 - keeplibs+=( third_party/ffmpeg third_party/opus )
1684 - fi
1685 - if ! use system-icu; then
1686 - keeplibs+=( third_party/icu )
1687 - fi
1688 - if ! use system-libvpx; then
1689 - keeplibs+=( third_party/libvpx )
1690 - keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
1691 - fi
1692 - if use tcmalloc; then
1693 - keeplibs+=( third_party/tcmalloc )
1694 - fi
1695 -
1696 - # Remove most bundled libraries. Some are still needed.
1697 - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
1698 -}
1699 -
1700 -bootstrap_gn() {
1701 - if tc-is-cross-compiler; then
1702 - local -x AR=${BUILD_AR}
1703 - local -x CC=${BUILD_CC}
1704 - local -x CXX=${BUILD_CXX}
1705 - local -x NM=${BUILD_NM}
1706 - local -x CFLAGS=${BUILD_CFLAGS}
1707 - local -x CXXFLAGS=${BUILD_CXXFLAGS}
1708 - local -x LDFLAGS=${BUILD_LDFLAGS}
1709 - fi
1710 - einfo "Building GN..."
1711 - set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean
1712 - echo "$@"
1713 - "$@" || die
1714 -}
1715 -
1716 -src_configure() {
1717 - local myconf_gn=""
1718 -
1719 - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
1720 - myconf_gn+=" is_debug=false"
1721 -
1722 - # Component build isn't generally intended for use by end users. It's mostly useful
1723 - # for development and debugging.
1724 - myconf_gn+=" is_component_build=$(usex component-build true false)"
1725 -
1726 - myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
1727 -
1728 - # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
1729 - myconf_gn+=" enable_nacl=false"
1730 -
1731 - # Use system-provided libraries.
1732 - # TODO: freetype (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
1733 - # TODO: use_system_hunspell (upstream changes needed).
1734 - # TODO: use_system_libsrtp (bug #459932).
1735 - # TODO: use_system_protobuf (bug #525560).
1736 - # TODO: use_system_ssl (http://crbug.com/58087).
1737 - # TODO: use_system_sqlite (http://crbug.com/22208).
1738 -
1739 - # libevent: https://bugs.gentoo.org/593458
1740 - local gn_system_libraries=(
1741 - flac
1742 - # Need harfbuzz_from_pkgconfig target
1743 - #harfbuzz-ng
1744 - libdrm
1745 - libjpeg
1746 - libpng
1747 - libwebp
1748 - libxml
1749 - libxslt
1750 - openh264
1751 - re2
1752 - snappy
1753 - yasm
1754 - zlib
1755 - )
1756 - if use system-ffmpeg; then
1757 - gn_system_libraries+=( ffmpeg opus )
1758 - fi
1759 - if use system-icu; then
1760 - gn_system_libraries+=( icu )
1761 - fi
1762 - if use system-libvpx; then
1763 - gn_system_libraries+=( libvpx )
1764 - fi
1765 - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
1766 -
1767 - # See dependency logic in third_party/BUILD.gn
1768 - myconf_gn+=" use_system_harfbuzz=true"
1769 -
1770 - # Optional dependencies.
1771 - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
1772 - myconf_gn+=" enable_widevine=$(usex widevine true false)"
1773 - myconf_gn+=" use_cups=$(usex cups true false)"
1774 - myconf_gn+=" use_gconf=false"
1775 - myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
1776 - myconf_gn+=" use_kerberos=$(usex kerberos true false)"
1777 - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
1778 -
1779 - # TODO: link_pulseaudio=true for GN.
1780 -
1781 - myconf_gn+=" fieldtrial_testing_like_official_build=true"
1782 -
1783 - if tc-is-clang; then
1784 - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
1785 - else
1786 - myconf_gn+=" is_clang=false"
1787 - fi
1788 -
1789 - # Never use bundled gold binary. Disable gold linker flags for now.
1790 - # Do not use bundled clang.
1791 - # Trying to use gold results in linker crash.
1792 - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
1793 -
1794 - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
1795 - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
1796 - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
1797 -
1798 - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
1799 - # Note: these are for Gentoo use ONLY. For your own distribution,
1800 - # please get your own set of keys. Feel free to contact chromium@g.o
1801 - # for more info.
1802 - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
1803 - local google_default_client_id="329227923882.apps.googleusercontent.com"
1804 - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
1805 - myconf_gn+=" google_api_key=\"${google_api_key}\""
1806 - myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
1807 - myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
1808 -
1809 - local myarch="$(tc-arch)"
1810 - if [[ $myarch = amd64 ]] ; then
1811 - myconf_gn+=" target_cpu=\"x64\""
1812 - ffmpeg_target_arch=x64
1813 - elif [[ $myarch = x86 ]] ; then
1814 - myconf_gn+=" target_cpu=\"x86\""
1815 - ffmpeg_target_arch=ia32
1816 - elif [[ $myarch = arm64 ]] ; then
1817 - myconf_gn+=" target_cpu=\"arm64\""
1818 - ffmpeg_target_arch=arm64
1819 - elif [[ $myarch = arm ]] ; then
1820 - myconf_gn+=" target_cpu=\"arm\""
1821 - ffmpeg_target_arch=$(usex neon arm-neon arm)
1822 - else
1823 - die "Failed to determine target arch, got '$myarch'."
1824 - fi
1825 -
1826 - # Make sure that -Werror doesn't get added to CFLAGS by the build system.
1827 - # Depending on GCC version the warnings are different and we don't want
1828 - # the build to fail because of that.
1829 - myconf_gn+=" treat_warnings_as_errors=false"
1830 -
1831 - # Disable fatal linker warnings, bug 506268.
1832 - myconf_gn+=" fatal_linker_warnings=false"
1833 -
1834 - # Avoid CFLAGS problems, bug #352457, bug #390147.
1835 - if ! use custom-cflags; then
1836 - replace-flags "-Os" "-O2"
1837 - strip-flags
1838 -
1839 - # Prevent linker from running out of address space, bug #471810 .
1840 - if use x86; then
1841 - filter-flags "-g*"
1842 - fi
1843 -
1844 - # Prevent libvpx build failures. Bug 530248, 544702, 546984.
1845 - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
1846 - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
1847 - fi
1848 - fi
1849 -
1850 - # Make sure the build system will use the right tools, bug #340795.
1851 - tc-export AR CC CXX NM
1852 -
1853 - # Define a custom toolchain for GN
1854 - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
1855 -
1856 - if tc-is-cross-compiler; then
1857 - tc-export BUILD_{AR,CC,CXX,NM}
1858 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
1859 - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
1860 - else
1861 - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
1862 - fi
1863 -
1864 - # https://bugs.gentoo.org/588596
1865 - append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
1866 -
1867 - # Bug 491582.
1868 - export TMPDIR="${WORKDIR}/temp"
1869 - mkdir -p -m 755 "${TMPDIR}" || die
1870 -
1871 - if ! use system-ffmpeg; then
1872 - local build_ffmpeg_args=""
1873 - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
1874 - build_ffmpeg_args+=" --disable-asm"
1875 - fi
1876 -
1877 - # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
1878 - einfo "Configuring bundled ffmpeg..."
1879 - pushd third_party/ffmpeg > /dev/null || die
1880 - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
1881 - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
1882 - chromium/scripts/copy_config.sh || die
1883 - chromium/scripts/generate_gn.py || die
1884 - popd > /dev/null || die
1885 - fi
1886 -
1887 - bootstrap_gn
1888 -
1889 - einfo "Configuring Chromium..."
1890 - set -- out/Release/gn gen --args="${myconf_gn}" out/Release
1891 - echo "$@"
1892 - "$@" || die
1893 -}
1894 -
1895 -src_compile() {
1896 - local ninja_targets="chrome chromedriver"
1897 - if use suid; then
1898 - ninja_targets+=" chrome_sandbox"
1899 - fi
1900 -
1901 - # Build mksnapshot and pax-mark it.
1902 - if tc-is-cross-compiler; then
1903 - eninja -C out/Release host/mksnapshot || die
1904 - pax-mark m out/Release/host/mksnapshot
1905 - else
1906 - eninja -C out/Release mksnapshot || die
1907 - pax-mark m out/Release/mksnapshot
1908 - fi
1909 -
1910 - # Even though ninja autodetects number of CPUs, we respect
1911 - # user's options, for debugging with -j 1 or any other reason.
1912 - eninja -C out/Release ${ninja_targets} || die
1913 -
1914 - pax-mark m out/Release/chrome
1915 -}
1916 -
1917 -src_install() {
1918 - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
1919 - exeinto "${CHROMIUM_HOME}"
1920 - doexe out/Release/chrome
1921 -
1922 - if use suid; then
1923 - newexe out/Release/chrome_sandbox chrome-sandbox
1924 - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
1925 - fi
1926 -
1927 - doexe out/Release/chromedriver
1928 -
1929 - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
1930 - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
1931 - doexe chromium-launcher.sh
1932 -
1933 - # It is important that we name the target "chromium-browser",
1934 - # xdg-utils expect it; bug #355517.
1935 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
1936 - # keep the old symlink around for consistency
1937 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
1938 -
1939 - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
1940 -
1941 - # Allow users to override command-line options, bug #357629.
1942 - insinto /etc/chromium
1943 - newins "${FILESDIR}/chromium.default" "default"
1944 -
1945 - pushd out/Release/locales > /dev/null || die
1946 - chromium_remove_language_paks
1947 - popd
1948 -
1949 - if use widevine; then
1950 - # These will be provided by chrome-binary-plugins
1951 - rm out/Release/libwidevinecdm*.so || die
1952 - fi
1953 -
1954 - insinto "${CHROMIUM_HOME}"
1955 - doins out/Release/*.bin
1956 - doins out/Release/*.pak
1957 - doins out/Release/*.so
1958 -
1959 - if ! use system-icu; then
1960 - doins out/Release/icudtl.dat
1961 - fi
1962 -
1963 - doins -r out/Release/locales
1964 - doins -r out/Release/resources
1965 -
1966 - insinto "${CHROMIUM_HOME}/swiftshader"
1967 - doins out/Release/swiftshader/*.so
1968 -
1969 - # Install icons and desktop entry.
1970 - local branding size
1971 - for size in 16 22 24 32 48 64 128 256 ; do
1972 - case ${size} in
1973 - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
1974 - *) branding="chrome/app/theme/chromium" ;;
1975 - esac
1976 - newicon -s ${size} "${branding}/product_logo_${size}.png" \
1977 - chromium-browser.png
1978 - done
1979 -
1980 - local mime_types="text/html;text/xml;application/xhtml+xml;"
1981 - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
1982 - mime_types+="x-scheme-handler/ftp;" # bug #412185
1983 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
1984 - make_desktop_entry \
1985 - chromium-browser \
1986 - "Chromium" \
1987 - chromium-browser \
1988 - "Network;WebBrowser" \
1989 - "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
1990 - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
1991 -
1992 - # Install GNOME default application entry (bug #303100).
1993 - insinto /usr/share/gnome-control-center/default-apps
1994 - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
1995 -
1996 - readme.gentoo_create_doc
1997 -}
1998 -
1999 -pkg_preinst() {
2000 - gnome2_icon_savelist
2001 -}
2002 -
2003 -pkg_postrm() {
2004 - gnome2_icon_cache_update
2005 - xdg_desktop_database_update
2006 -}
2007 -
2008 -pkg_postinst() {
2009 - gnome2_icon_cache_update
2010 - xdg_desktop_database_update
2011 - readme.gentoo_print_elog
2012 -}