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, 26 Feb 2016 22:49:51
Message-Id: 1456526978.a8a14b2bc28c79f98b7627c056a1b09e8e671d23.floppym@gentoo
1 commit: a8a14b2bc28c79f98b7627c056a1b09e8e671d23
2 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
3 AuthorDate: Fri Feb 26 22:49:38 2016 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Fri Feb 26 22:49:38 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8a14b2b
7
8 www-client/chromium: Remove old
9
10 Package-Manager: portage-2.2.27_p64
11
12 www-client/chromium/Manifest | 2 -
13 www-client/chromium/chromium-48.0.2564.109.ebuild | 690 ----------------------
14 www-client/chromium/chromium-48.0.2564.82.ebuild | 690 ----------------------
15 3 files changed, 1382 deletions(-)
16
17 diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
18 index 2dc4795..d5c7e9a 100644
19 --- a/www-client/chromium/Manifest
20 +++ b/www-client/chromium/Manifest
21 @@ -1,5 +1,3 @@
22 -DIST chromium-48.0.2564.109.tar.xz 432310300 SHA256 2eb1e5b6dda718a5e501ba26f47015c1629adeb9f2bf2877bd9d8bf346abeb03 SHA512 2891384385a6ac1ebab218837ce609c16abcf2500e1d49396fea931bf0f709097b4a99c6ca11ae409d757c7c94b0f3af9d6848084047d981597c0bb0f73257cd WHIRLPOOL b5e4e8e185937b61e3e38c74be86bb1a7808090ab713cc284a38a307ad4eca4a6080fd81c42981834857845caaedd3edcd2541f90a9514a0b95236c271d62d0c
23 DIST chromium-48.0.2564.116.tar.xz 432321192 SHA256 6a1eb9b4c853f15eeec0a55af7ac3b41835f0fc592ba6c0a500873cb12a84d0f SHA512 22c653580c1320b00e56a8b055e215b0292518af52e2d7e24b0610950ef1457a03dcec62b5417dd2e1021a2cf42b06d38b2249ee39d97aa662728f4972c54fc6 WHIRLPOOL c904185cb2e476bc253474e5ba044153bae1489a1e783bd38cd739409d46d0aa410a84553624b97e8261b1ba6ea0d6ce176703d566305634c8d8679e62c207d4
24 -DIST chromium-48.0.2564.82.tar.xz 432281684 SHA256 cda64bf427d01bae7d45863812edcd7fa43176238ec07c7752e42afd3e1714fd SHA512 45e50fa0a4a4ac593e95c27fc16c2699736fbdf0bb88fd84be70e17cf1b2058c8cc55cccfe5c7ab381e8d80a0816ffb1e327626992779204d85fc558a946d076 WHIRLPOOL db51d66242d8989f7db7a2c1a1e87c012b59fa6afd21b8dae745f8b9a7d5f8c5249dee95c152a9e9f4da13950b17cbc03a1d2bd23622c50e61d7f97d03181398
25 DIST chromium-49.0.2623.0.tar.xz 452249352 SHA256 1637e2d16c233c75c4c4094bb83af9f8ef5add2d84a1df544ad08f53d7958357 SHA512 3f1ca7cedc121fc09823a9ecd0d8a544a0ce7561e7d9e9c5c97bfab7a0d3157ede0377ace4ae124a755844eae33d551efc07b52cb55e06ffaf54749539f55edc WHIRLPOOL 06c7f034bc007a2fe04bab8323000bcaad058a2395cf7d6affcac682466f8a81e32a5fc231ab8e8851ea4f183dae51eb0842bf352c70fea2b90d2e3d6ffb39ef
26 DIST chromium-49.0.2623.28.tar.xz 452236624 SHA256 88e15a295fd584424603a3aac0f39fdb66223f2e35284ec20487bf693873efb2 SHA512 b63df71e45fb12b012d25ec2d3de66006e4597b88b814d44aa595e3762f8405f6242758729909d378fa3010634b65829d46172b07eec7639e6b65432ad5a4f63 WHIRLPOOL 62405dfd90ca731c5e8fe0d816473506fb30956493f303e55d1af8cca6604af58ac9f1a247fa774bad2db0591e7000a795d54e2e6bc4171bef16fabd92c7a0ac
27
28 diff --git a/www-client/chromium/chromium-48.0.2564.109.ebuild b/www-client/chromium/chromium-48.0.2564.109.ebuild
29 deleted file mode 100644
30 index 46cec75..0000000
31 --- a/www-client/chromium/chromium-48.0.2564.109.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-48.0.2564.82.ebuild b/www-client/chromium/chromium-48.0.2564.82.ebuild
726 deleted file mode 100644
727 index 91a3864..0000000
728 --- a/www-client/chromium/chromium-48.0.2564.82.ebuild
729 +++ /dev/null
730 @@ -1,690 +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 - dev-libs/re2:=
813 - media-libs/flac:=
814 - >=media-libs/harfbuzz-0.9.41:=[icu(+)]
815 - >=media-libs/libjpeg-turbo-1.2.0-r1:=
816 - media-libs/libpng:0=
817 - >=media-libs/libwebp-0.4.0:=
818 - sys-libs/zlib:=[minizip]
819 - )"
820 -DEPEND="${RDEPEND}
821 - !arm? (
822 - dev-lang/yasm
823 - )
824 - dev-lang/perl
825 - dev-perl/JSON
826 - >=dev-util/gperf-3.0.3
827 - dev-util/ninja
828 - sys-apps/hwids[usb(+)]
829 - >=sys-devel/bison-2.4.3
830 - sys-devel/flex
831 - virtual/pkgconfig"
832 -
833 -# For nvidia-drivers blocker, see bug #413637 .
834 -RDEPEND+="
835 - !=www-client/chromium-9999
836 - !<www-plugins/chrome-binary-plugins-37
837 - x11-misc/xdg-utils
838 - virtual/opengl
839 - virtual/ttf-fonts
840 - selinux? ( sec-policy/selinux-chromium )
841 - tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
842 - widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )"
843 -
844 -# Python dependencies. The DEPEND part needs to be kept in sync
845 -# with python_check_deps.
846 -DEPEND+=" $(python_gen_any_dep '
847 - dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]
848 - dev-python/beautifulsoup:4[${PYTHON_USEDEP}]
849 - dev-python/html5lib[${PYTHON_USEDEP}]
850 - dev-python/jinja[${PYTHON_USEDEP}]
851 - dev-python/ply[${PYTHON_USEDEP}]
852 - dev-python/simplejson[${PYTHON_USEDEP}]
853 -')"
854 -python_check_deps() {
855 - has_version "dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]" && \
856 - has_version "dev-python/beautifulsoup:4[${PYTHON_USEDEP}]" && \
857 - has_version "dev-python/html5lib[${PYTHON_USEDEP}]" && \
858 - has_version "dev-python/jinja[${PYTHON_USEDEP}]" && \
859 - has_version "dev-python/ply[${PYTHON_USEDEP}]" && \
860 - has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
861 -}
862 -
863 -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
864 - EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
865 -fi
866 -
867 -DISABLE_AUTOFORMATTING="yes"
868 -DOC_CONTENTS="
869 -Some web pages may require additional fonts to display properly.
870 -Try installing some of the following packages if some characters
871 -are not displayed properly:
872 -- media-fonts/arphicfonts
873 -- media-fonts/bitstream-cyberbit
874 -- media-fonts/droid
875 -- media-fonts/ipamonafont
876 -- media-fonts/ja-ipafonts
877 -- media-fonts/takao-fonts
878 -- media-fonts/wqy-microhei
879 -- media-fonts/wqy-zenhei
880 -
881 -Depending on your desktop environment, you may need
882 -to install additional packages to get icons on the Downloads page.
883 -
884 -For KDE, the required package is kde-frameworks/oxygen-icons.
885 -
886 -For other desktop environments, try one of the following:
887 -- x11-themes/gnome-icon-theme
888 -- x11-themes/tango-icon-theme
889 -"
890 -
891 -pkg_pretend() {
892 - if [[ $(tc-getCC)$ == *gcc* ]] && \
893 - [[ $(gcc-major-version)$(gcc-minor-version) -lt 48 ]]; then
894 - die 'At least gcc 4.8 is required, see bugs: #535730, #525374, #518668.'
895 - fi
896 -
897 - # Check build requirements, bug #541816 and bug #471810 .
898 - CHECKREQS_MEMORY="3G"
899 - CHECKREQS_DISK_BUILD="5G"
900 - eshopts_push -s extglob
901 - if is-flagq '-g?(gdb)?([1-9])'; then
902 - CHECKREQS_DISK_BUILD="25G"
903 - fi
904 - eshopts_pop
905 - check-reqs_pkg_pretend
906 -}
907 -
908 -pkg_setup() {
909 - if [[ "${SLOT}" == "0" ]]; then
910 - CHROMIUM_SUFFIX=""
911 - else
912 - CHROMIUM_SUFFIX="-${SLOT}"
913 - fi
914 - CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser${CHROMIUM_SUFFIX}"
915 -
916 - # Make sure the build system will use the right python, bug #344367.
917 - python-any-r1_pkg_setup
918 -
919 - chromium_suid_sandbox_check_kernel_config
920 -}
921 -
922 -src_prepare() {
923 - epatch "${FILESDIR}/${PN}-system-ffmpeg-r1.patch"
924 - epatch "${FILESDIR}/${PN}-system-jinja-r7.patch"
925 - epatch "${FILESDIR}/${PN}-widevine-r1.patch"
926 - epatch "${FILESDIR}/${PN}-last-commit-position-r0.patch"
927 - epatch "${FILESDIR}/${PN}-snapshot-toolchain-r0.patch"
928 - epatch "${FILESDIR}/${PN}-system-icu-r0.patch"
929 -
930 - epatch_user
931 -
932 - local conditional_bundled_libraries=""
933 - if ! use system-ffmpeg; then
934 - conditional_bundled_libraries+=" third_party/ffmpeg"
935 - fi
936 - if use gn; then
937 - conditional_bundled_libraries+="
938 - third_party/adobe
939 - third_party/ffmpeg
940 - third_party/flac
941 - third_party/harfbuzz-ng
942 - third_party/icu
943 - third_party/jinja2
944 - third_party/libevent
945 - third_party/libjpeg_turbo
946 - third_party/libpng
947 - third_party/libwebp
948 - third_party/libxml
949 - third_party/libxslt
950 - third_party/markupsafe
951 - third_party/re2
952 - third_party/snappy
953 - third_party/speech-dispatcher
954 - third_party/usb_ids
955 - third_party/xdg-utils
956 - third_party/yasm
957 - third_party/zlib
958 - "
959 - fi
960 -
961 - # Remove most bundled libraries. Some are still needed.
962 - build/linux/unbundle/remove_bundled_libraries.py \
963 - ${conditional_bundled_libraries} \
964 - 'base/third_party/dmg_fp' \
965 - 'base/third_party/dynamic_annotations' \
966 - 'base/third_party/icu' \
967 - 'base/third_party/nspr' \
968 - 'base/third_party/superfasthash' \
969 - 'base/third_party/symbolize' \
970 - 'base/third_party/valgrind' \
971 - 'base/third_party/xdg_mime' \
972 - 'base/third_party/xdg_user_dirs' \
973 - 'breakpad/src/third_party/curl' \
974 - 'chrome/third_party/mozilla_security_manager' \
975 - 'courgette/third_party' \
976 - 'crypto/third_party/nss' \
977 - 'net/third_party/mozilla_security_manager' \
978 - 'net/third_party/nss' \
979 - 'third_party/WebKit' \
980 - 'third_party/analytics' \
981 - 'third_party/angle' \
982 - 'third_party/angle/src/third_party/compiler' \
983 - 'third_party/boringssl' \
984 - 'third_party/brotli' \
985 - 'third_party/cacheinvalidation' \
986 - 'third_party/catapult' \
987 - 'third_party/catapult/third_party/py_vulcanize' \
988 - 'third_party/catapult/third_party/py_vulcanize/third_party/rcssmin' \
989 - 'third_party/catapult/third_party/py_vulcanize/third_party/rjsmin' \
990 - 'third_party/catapult/tracing/third_party/components/polymer' \
991 - 'third_party/catapult/tracing/third_party/d3' \
992 - 'third_party/catapult/tracing/third_party/gl-matrix' \
993 - 'third_party/catapult/tracing/third_party/jszip' \
994 - 'third_party/cld_2' \
995 - 'third_party/cros_system_api' \
996 - 'third_party/cython/python_flags.py' \
997 - 'third_party/devscripts' \
998 - 'third_party/dom_distiller_js' \
999 - 'third_party/dom_distiller_js/dist/proto_gen/third_party/dom_distiller_js' \
1000 - 'third_party/fips181' \
1001 - 'third_party/flot' \
1002 - 'third_party/google_input_tools' \
1003 - 'third_party/google_input_tools/third_party/closure_library' \
1004 - 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \
1005 - 'third_party/hunspell' \
1006 - 'third_party/iccjpeg' \
1007 - 'third_party/jstemplate' \
1008 - 'third_party/khronos' \
1009 - 'third_party/leveldatabase' \
1010 - 'third_party/libXNVCtrl' \
1011 - 'third_party/libaddressinput' \
1012 - 'third_party/libjingle' \
1013 - 'third_party/libphonenumber' \
1014 - 'third_party/libsecret' \
1015 - 'third_party/libsrtp' \
1016 - 'third_party/libudev' \
1017 - 'third_party/libusb' \
1018 - 'third_party/libvpx_new' \
1019 - 'third_party/libvpx_new/source/libvpx/third_party/x86inc' \
1020 - 'third_party/libxml/chromium' \
1021 - 'third_party/libwebm' \
1022 - 'third_party/libyuv' \
1023 - 'third_party/lss' \
1024 - 'third_party/lzma_sdk' \
1025 - 'third_party/mesa' \
1026 - 'third_party/modp_b64' \
1027 - 'third_party/mojo' \
1028 - 'third_party/mt19937ar' \
1029 - 'third_party/npapi' \
1030 - 'third_party/openmax_dl' \
1031 - 'third_party/opus' \
1032 - 'third_party/ots' \
1033 - 'third_party/pdfium' \
1034 - 'third_party/pdfium/third_party/agg23' \
1035 - 'third_party/pdfium/third_party/base' \
1036 - 'third_party/pdfium/third_party/bigint' \
1037 - 'third_party/pdfium/third_party/freetype' \
1038 - 'third_party/pdfium/third_party/lcms2-2.6' \
1039 - 'third_party/pdfium/third_party/libjpeg' \
1040 - 'third_party/pdfium/third_party/libopenjpeg20' \
1041 - 'third_party/pdfium/third_party/zlib_v128' \
1042 - 'third_party/polymer' \
1043 - 'third_party/protobuf' \
1044 - 'third_party/qcms' \
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/x86inc' \
1056 - 'third_party/zlib/google' \
1057 - 'url/third_party/mozilla' \
1058 - 'v8/src/third_party/fdlibm' \
1059 - 'v8/src/third_party/valgrind' \
1060 - --do-remove || die
1061 -}
1062 -
1063 -src_configure() {
1064 - local myconf_gyp=""
1065 - local myconf_gn=""
1066 -
1067 - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
1068 - myconf_gn+=" is_debug=false"
1069 -
1070 - # Never tell the build system to "enable" SSE2, it has a few unexpected
1071 - # additions, bug #336871.
1072 - myconf_gyp+=" -Ddisable_sse2=1"
1073 -
1074 - # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
1075 - myconf_gyp+=" -Ddisable_nacl=1"
1076 - myconf_gn+=" enable_nacl=false"
1077 -
1078 - # Make it possible to remove third_party/adobe.
1079 - echo > "${T}/flapper_version.h" || die
1080 - myconf_gyp+=" -Dflapper_version_h_file=${T}/flapper_version.h"
1081 -
1082 - # Use system-provided libraries.
1083 - # TODO: use_system_hunspell (upstream changes needed).
1084 - # TODO: use_system_libsrtp (bug #459932).
1085 - # TODO: use_system_libusb (http://crbug.com/266149).
1086 - # TODO: use_system_libvpx (http://crbug.com/494939).
1087 - # TODO: use_system_opus (https://code.google.com/p/webrtc/issues/detail?id=3077).
1088 - # TODO: use_system_protobuf (bug #525560).
1089 - # TODO: use_system_ssl (http://crbug.com/58087).
1090 - # TODO: use_system_sqlite (http://crbug.com/22208).
1091 - myconf_gyp+="
1092 - -Duse_system_bzip2=1
1093 - -Duse_system_ffmpeg=$(usex system-ffmpeg 1 0)
1094 - -Duse_system_flac=1
1095 - -Duse_system_harfbuzz=1
1096 - -Duse_system_icu=1
1097 - -Duse_system_jsoncpp=1
1098 - -Duse_system_libevent=1
1099 - -Duse_system_libjpeg=1
1100 - -Duse_system_libpng=1
1101 - -Duse_system_libwebp=1
1102 - -Duse_system_libxml=1
1103 - -Duse_system_libxslt=1
1104 - -Duse_system_minizip=1
1105 - -Duse_system_nspr=1
1106 - -Duse_system_re2=1
1107 - -Duse_system_snappy=1
1108 - -Duse_system_speex=1
1109 - -Duse_system_xdg_utils=1
1110 - -Duse_system_zlib=1"
1111 -
1112 - # Needed for system icu - we don't need additional data files.
1113 - myconf_gyp+=" -Dicu_use_data_file_flag=0"
1114 -
1115 - # TODO: patch gyp so that this arm conditional is not needed.
1116 - if ! use arm; then
1117 - myconf_gyp+="
1118 - -Duse_system_yasm=1"
1119 - fi
1120 -
1121 - # Optional dependencies.
1122 - # TODO: linux_link_kerberos, bug #381289.
1123 - myconf_gyp+="
1124 - $(gyp_use cups)
1125 - $(gyp_use gnome use_gconf)
1126 - $(gyp_use gnome-keyring use_gnome_keyring)
1127 - $(gyp_use gnome-keyring linux_link_gnome_keyring)
1128 - $(gyp_use gtk3)
1129 - $(gyp_use hangouts enable_hangout_services_extension)
1130 - $(gyp_use hidpi enable_hidpi)
1131 - $(gyp_use hotwording enable_hotwording)
1132 - $(gyp_use kerberos)
1133 - $(gyp_use pulseaudio)
1134 - $(gyp_use tcmalloc use_allocator tcmalloc none)
1135 - $(gyp_use widevine enable_widevine)"
1136 -
1137 - myconf_gn+=" use_cups=$(usex cups true false)"
1138 -
1139 - # Use explicit library dependencies instead of dlopen.
1140 - # This makes breakages easier to detect by revdep-rebuild.
1141 - myconf_gyp+="
1142 - -Dlinux_link_gsettings=1
1143 - -Dlinux_link_libpci=1
1144 - -Dlinux_link_libspeechd=1
1145 - -Dlibspeechd_h_prefix=speech-dispatcher/"
1146 -
1147 - # TODO: use the file at run time instead of effectively compiling it in.
1148 - myconf_gyp+="
1149 - -Dusb_ids_path=/usr/share/misc/usb.ids"
1150 -
1151 - # Save space by removing DLOG and DCHECK messages (about 6% reduction).
1152 - myconf_gyp+="
1153 - -Dlogging_like_official_build=1"
1154 -
1155 - if [[ $(tc-getCC) == *clang* ]]; then
1156 - myconf_gyp+=" -Dclang=1"
1157 - myconf_gn+=" is_clang=true"
1158 - else
1159 - myconf_gyp+=" -Dclang=0"
1160 - myconf_gn+=" is_clang=false"
1161 - fi
1162 -
1163 - # Never use bundled gold binary. Disable gold linker flags for now.
1164 - # Do not use bundled clang.
1165 - myconf_gyp+="
1166 - -Dclang_use_chrome_plugins=0
1167 - -Dhost_clang=0
1168 - -Dlinux_use_bundled_binutils=0
1169 - -Dlinux_use_bundled_gold=0
1170 - -Dlinux_use_gold_flags=0"
1171 -
1172 - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
1173 - myconf_gyp+=" -Dproprietary_codecs=1 -Dffmpeg_branding=${ffmpeg_branding}"
1174 -
1175 - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
1176 - # Note: these are for Gentoo use ONLY. For your own distribution,
1177 - # please get your own set of keys. Feel free to contact chromium@g.o
1178 - # for more info.
1179 - myconf_gyp+=" -Dgoogle_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
1180 - -Dgoogle_default_client_id=329227923882.apps.googleusercontent.com
1181 - -Dgoogle_default_client_secret=vgKG0NNv7GoDpbtoFNLxCUXu"
1182 -
1183 - local myarch="$(tc-arch)"
1184 - if [[ $myarch = amd64 ]] ; then
1185 - target_arch=x64
1186 - ffmpeg_target_arch=x64
1187 - elif [[ $myarch = x86 ]] ; then
1188 - target_arch=ia32
1189 - ffmpeg_target_arch=ia32
1190 - elif [[ $myarch = arm ]] ; then
1191 - target_arch=arm
1192 - ffmpeg_target_arch=$(usex neon arm-neon arm)
1193 - # TODO: re-enable NaCl (NativeClient).
1194 - local CTARGET=${CTARGET:-${CHOST}}
1195 - if [[ $(tc-is-softfloat) == "no" ]]; then
1196 -
1197 - myconf_gyp+=" -Darm_float_abi=hard"
1198 - fi
1199 - filter-flags "-mfpu=*"
1200 - use neon || myconf_gyp+=" -Darm_fpu=${ARM_FPU:-vfpv3-d16}"
1201 -
1202 - if [[ ${CTARGET} == armv[78]* ]]; then
1203 - myconf_gyp+=" -Darmv7=1"
1204 - else
1205 - myconf_gyp+=" -Darmv7=0"
1206 - fi
1207 - myconf_gyp+=" -Dsysroot=
1208 - $(gyp_use neon arm_neon)
1209 - -Ddisable_nacl=1"
1210 - else
1211 - die "Failed to determine target arch, got '$myarch'."
1212 - fi
1213 -
1214 - myconf_gyp+=" -Dtarget_arch=${target_arch}"
1215 -
1216 - # Make sure that -Werror doesn't get added to CFLAGS by the build system.
1217 - # Depending on GCC version the warnings are different and we don't want
1218 - # the build to fail because of that.
1219 - myconf_gyp+=" -Dwerror="
1220 - myconf_gn+=" treat_warnings_as_errors=false"
1221 -
1222 - # Disable fatal linker warnings, bug 506268.
1223 - myconf_gyp+=" -Ddisable_fatal_linker_warnings=1"
1224 -
1225 - # Avoid CFLAGS problems, bug #352457, bug #390147.
1226 - if ! use custom-cflags; then
1227 - replace-flags "-Os" "-O2"
1228 - strip-flags
1229 -
1230 - # Prevent linker from running out of address space, bug #471810 .
1231 - if use x86; then
1232 - filter-flags "-g*"
1233 - fi
1234 -
1235 - # Prevent libvpx build failures. Bug 530248, 544702, 546984.
1236 - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
1237 - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
1238 - fi
1239 - fi
1240 -
1241 - # Make sure the build system will use the right tools, bug #340795.
1242 - tc-export AR CC CXX NM
1243 -
1244 - # Tools for building programs to be executed on the build system, bug #410883.
1245 - if tc-is-cross-compiler; then
1246 - export AR_host=$(tc-getBUILD_AR)
1247 - export CC_host=$(tc-getBUILD_CC)
1248 - export CXX_host=$(tc-getBUILD_CXX)
1249 - export NM_host=$(tc-getBUILD_NM)
1250 - fi
1251 -
1252 - # Bug 491582.
1253 - export TMPDIR="${WORKDIR}/temp"
1254 - mkdir -p -m 755 "${TMPDIR}" || die
1255 -
1256 - # TODO: also do this for GN bundled ffmpeg build.
1257 - if ! use system-ffmpeg && ! use gn; then
1258 - local build_ffmpeg_args=""
1259 - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
1260 - build_ffmpeg_args+=" --disable-asm"
1261 - fi
1262 -
1263 - # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
1264 - einfo "Configuring bundled ffmpeg..."
1265 - pushd third_party/ffmpeg > /dev/null || die
1266 - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
1267 - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
1268 - chromium/scripts/copy_config.sh || die
1269 - chromium/scripts/generate_gyp.py || die
1270 - popd > /dev/null || die
1271 - fi
1272 -
1273 - third_party/libaddressinput/chromium/tools/update-strings.py || die
1274 -
1275 - touch chrome/test/data/webui/i18n_process_css_test.html || die
1276 -
1277 - einfo "Configuring Chromium..."
1278 - if use gn; then
1279 - tools/gn/bootstrap/bootstrap.py -v --gn-gen-args "${myconf_gn}" || die
1280 - out/Release/gn gen --args="${myconf_gn}" out/Release || die
1281 - else
1282 - build/linux/unbundle/replace_gyp_files.py ${myconf_gyp} || die
1283 - egyp_chromium ${myconf_gyp} || die
1284 - fi
1285 -}
1286 -
1287 -eninja() {
1288 - if [[ -z ${NINJAOPTS+set} ]]; then
1289 - local jobs=$(makeopts_jobs)
1290 - local loadavg=$(makeopts_loadavg)
1291 -
1292 - if [[ ${MAKEOPTS} == *-j* && ${jobs} != 999 ]]; then
1293 - NINJAOPTS+=" -j ${jobs}"
1294 - fi
1295 - if [[ ${MAKEOPTS} == *-l* && ${loadavg} != 999 ]]; then
1296 - NINJAOPTS+=" -l ${loadavg}"
1297 - fi
1298 - fi
1299 - set -- ninja -v ${NINJAOPTS} "$@"
1300 - echo "$@"
1301 - "$@"
1302 -}
1303 -
1304 -src_compile() {
1305 - local ninja_targets="chrome chrome_sandbox chromedriver"
1306 -
1307 - if ! use gn; then
1308 - # Build mksnapshot and pax-mark it.
1309 - eninja -C out/Release mksnapshot || die
1310 - pax-mark m out/Release/mksnapshot
1311 - fi
1312 -
1313 - # Even though ninja autodetects number of CPUs, we respect
1314 - # user's options, for debugging with -j 1 or any other reason.
1315 - eninja -C out/Release ${ninja_targets} || die
1316 -
1317 - pax-mark m out/Release/chrome
1318 -}
1319 -
1320 -src_install() {
1321 - exeinto "${CHROMIUM_HOME}"
1322 - doexe out/Release/chrome || die
1323 -
1324 - newexe out/Release/chrome_sandbox chrome-sandbox || die
1325 - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
1326 -
1327 - doexe out/Release/chromedriver || die
1328 - use widevine && doexe out/Release/libwidevinecdmadapter.so
1329 -
1330 - # if ! use arm; then
1331 - # doexe out/Release/nacl_helper{,_bootstrap} || die
1332 - # insinto "${CHROMIUM_HOME}"
1333 - # doins out/Release/nacl_irt_*.nexe || die
1334 - # doins out/Release/libppGoogleNaClPluginChrome.so || die
1335 - # fi
1336 -
1337 - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
1338 - if [[ -n ${CHROMIUM_SUFFIX} ]]; then
1339 - sedargs+=(
1340 - -e "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g"
1341 - -e "s:chromium.desktop:chromium${CHROMIUM_SUFFIX}.desktop:g"
1342 - -e "s:plugins:plugins --user-data-dir=\${HOME}/.config/chromium${CHROMIUM_SUFFIX}:"
1343 - )
1344 - fi
1345 - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
1346 - doexe chromium-launcher.sh
1347 -
1348 - # It is important that we name the target "chromium-browser",
1349 - # xdg-utils expect it; bug #355517.
1350 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser${CHROMIUM_SUFFIX} || die
1351 - # keep the old symlink around for consistency
1352 - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium${CHROMIUM_SUFFIX} || die
1353 -
1354 - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver${CHROMIUM_SUFFIX} || die
1355 -
1356 - # Allow users to override command-line options, bug #357629.
1357 - dodir /etc/chromium || die
1358 - insinto /etc/chromium
1359 - newins "${FILESDIR}/chromium.default" "default" || die
1360 -
1361 - pushd out/Release/locales > /dev/null || die
1362 - chromium_remove_language_paks
1363 - popd
1364 -
1365 - insinto "${CHROMIUM_HOME}"
1366 - doins out/Release/*.bin || die
1367 - doins out/Release/*.pak || die
1368 -
1369 - if use gn; then
1370 - doins out/Release/icudtl.dat || die
1371 - fi
1372 -
1373 - doins -r out/Release/locales || die
1374 - doins -r out/Release/resources || die
1375 -
1376 - newman out/Release/chrome.1 chromium${CHROMIUM_SUFFIX}.1 || die
1377 - newman out/Release/chrome.1 chromium-browser${CHROMIUM_SUFFIX}.1 || die
1378 -
1379 - # Install icons and desktop entry.
1380 - local branding size
1381 - for size in 16 22 24 32 48 64 128 256 ; do
1382 - case ${size} in
1383 - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
1384 - *) branding="chrome/app/theme/chromium" ;;
1385 - esac
1386 - newicon -s ${size} "${branding}/product_logo_${size}.png" \
1387 - chromium-browser${CHROMIUM_SUFFIX}.png
1388 - done
1389 -
1390 - local mime_types="text/html;text/xml;application/xhtml+xml;"
1391 - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
1392 - mime_types+="x-scheme-handler/ftp;" # bug #412185
1393 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
1394 - make_desktop_entry \
1395 - chromium-browser${CHROMIUM_SUFFIX} \
1396 - "Chromium${CHROMIUM_SUFFIX}" \
1397 - chromium-browser${CHROMIUM_SUFFIX} \
1398 - "Network;WebBrowser" \
1399 - "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
1400 - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
1401 -
1402 - # Install GNOME default application entry (bug #303100).
1403 - if use gnome; then
1404 - dodir /usr/share/gnome-control-center/default-apps || die
1405 - insinto /usr/share/gnome-control-center/default-apps
1406 - newins "${FILESDIR}"/chromium-browser.xml chromium-browser${CHROMIUM_SUFFIX}.xml || die
1407 - if [[ "${CHROMIUM_SUFFIX}" != "" ]]; then
1408 - sed "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g" -i \
1409 - "${ED}"/usr/share/gnome-control-center/default-apps/chromium-browser${CHROMIUM_SUFFIX}.xml
1410 - fi
1411 - fi
1412 -
1413 - readme.gentoo_create_doc
1414 -}
1415 -
1416 -pkg_postinst() {
1417 - fdo-mime_desktop_database_update
1418 - gnome2_icon_cache_update
1419 - readme.gentoo_print_elog
1420 -}