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