Gentoo Archives: gentoo-commits

From: "PaweA Hajdan (phajdan.jr)" <phajdan.jr@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in www-client/chromium: chromium-34.0.1809.0.ebuild ChangeLog
Date: Wed, 29 Jan 2014 05:16:05
Message-Id: 20140129051600.A95432004E@flycatcher.gentoo.org
1 phajdan.jr 14/01/29 05:16:00
2
3 Modified: ChangeLog
4 Added: chromium-34.0.1809.0.ebuild
5 Log:
6 Dev channel bump. Aura is now default. Use bundled icu.
7
8 (Portage version: 2.2.7/cvs/Linux i686, signed Manifest commit with key 30427902)
9
10 Revision Changes Path
11 1.1016 www-client/chromium/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.1016&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.1016&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?r1=1.1015&r2=1.1016
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v
20 retrieving revision 1.1015
21 retrieving revision 1.1016
22 diff -u -r1.1015 -r1.1016
23 --- ChangeLog 28 Jan 2014 04:03:06 -0000 1.1015
24 +++ ChangeLog 29 Jan 2014 05:16:00 -0000 1.1016
25 @@ -1,6 +1,13 @@
26 # ChangeLog for www-client/chromium
27 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.1015 2014/01/28 04:03:06 floppym Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.1016 2014/01/29 05:16:00 phajdan.jr Exp $
30 +
31 +*chromium-34.0.1809.0 (29 Jan 2014)
32 +
33 + 29 Jan 2014; Pawel Hajdan jr <phajdan.jr@g.o>
34 + +chromium-34.0.1809.0.ebuild, +files/chromium-depot-tools-r0.patch,
35 + +files/chromium-system-jinja-r3.patch:
36 + Dev channel bump. Aura is now default. Use bundled icu.
37
38 *chromium-32.0.1700.102 (28 Jan 2014)
39
40
41
42
43 1.1 www-client/chromium/chromium-34.0.1809.0.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-34.0.1809.0.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-34.0.1809.0.ebuild?rev=1.1&content-type=text/plain
47
48 Index: chromium-34.0.1809.0.ebuild
49 ===================================================================
50 # Copyright 1999-2014 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-34.0.1809.0.ebuild,v 1.1 2014/01/29 05:16:00 phajdan.jr Exp $
53
54 EAPI="5"
55 PYTHON_COMPAT=( python{2_6,2_7} )
56
57 CHROMIUM_LANGS="am ar bg bn ca cs da de el en_GB es es_LA et fa fi fil fr gu he
58 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
59 sv sw ta te th tr uk vi zh_CN zh_TW"
60
61 inherit chromium eutils flag-o-matic multilib multiprocessing pax-utils \
62 portability python-any-r1 readme.gentoo toolchain-funcs versionator virtualx
63
64 DESCRIPTION="Open-source version of Google Chrome web browser"
65 HOMEPAGE="http://chromium.org/"
66 SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
67 test? ( https://commondatastorage.googleapis.com/chromium-browser-official/${P}-testdata.tar.xz )"
68
69 LICENSE="BSD"
70 SLOT="0"
71 KEYWORDS="~amd64 ~arm ~x86"
72 IUSE="+aura bindist cups gnome gnome-keyring kerberos neon pulseaudio selinux +tcmalloc"
73
74 # Native Client binaries are compiled with different set of flags, bug #452066.
75 QA_FLAGS_IGNORED=".*\.nexe"
76
77 # Native Client binaries may be stripped by the build system, which uses the
78 # right tools for it, bug #469144 .
79 QA_PRESTRIPPED=".*\.nexe"
80
81 RDEPEND=">=app-accessibility/speech-dispatcher-0.8:=
82 app-arch/bzip2:=
83 app-arch/snappy:=
84 cups? (
85 dev-libs/libgcrypt:=
86 >=net-print/cups-1.3.11:=
87 )
88 >=dev-libs/elfutils-0.149
89 dev-libs/expat:=
90 >=dev-libs/jsoncpp-0.5.0-r1:=
91 >=dev-libs/libevent-1.4.13:=
92 dev-libs/libxml2:=[icu]
93 dev-libs/libxslt:=
94 dev-libs/nspr:=
95 >=dev-libs/nss-3.14.3:=
96 >=dev-libs/protobuf-2.5.0:=
97 dev-libs/re2:=
98 gnome? ( >=gnome-base/gconf-2.24.0:= )
99 gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2:= )
100 >=media-libs/alsa-lib-1.0.19:=
101 media-libs/flac:=
102 media-libs/harfbuzz:=[icu(+)]
103 >=media-libs/libjpeg-turbo-1.2.0-r1:=
104 media-libs/libpng:0=
105 >=media-libs/libvpx-1.3.0:=
106 >=media-libs/libwebp-0.4.0:=
107 media-libs/opus:=
108 media-libs/speex:=
109 pulseaudio? ( media-sound/pulseaudio:= )
110 sys-apps/dbus:=
111 sys-apps/pciutils:=
112 >=sys-libs/libcap-2.22:=
113 sys-libs/zlib:=[minizip]
114 virtual/udev
115 x11-libs/gtk+:2=
116 >=x11-libs/libXi-1.6.0:=
117 x11-libs/libXinerama:=
118 x11-libs/libXScrnSaver:=
119 x11-libs/libXtst:=
120 kerberos? ( virtual/krb5 )
121 selinux? ( sec-policy/selinux-chromium )"
122 DEPEND="${RDEPEND}
123 !arm? (
124 dev-lang/yasm
125 )
126 dev-lang/perl
127 dev-perl/JSON
128 >=dev-util/gperf-3.0.3
129 dev-util/ninja
130 sys-apps/hwids
131 >=sys-devel/bison-2.4.3
132 sys-devel/flex
133 virtual/pkgconfig
134 test? (
135 dev-libs/openssl:0
136 )"
137 # For nvidia-drivers blocker, see bug #413637 .
138 RDEPEND+="
139 !=www-client/chromium-9999
140 x11-misc/xdg-utils
141 virtual/ttf-fonts
142 tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )"
143
144 # Python dependencies. The DEPEND part needs to be kept in sync
145 # with python_check_deps.
146 DEPEND+=" $(python_gen_any_dep '
147 >=dev-python/jinja-2.7[${PYTHON_USEDEP}]
148 dev-python/ply[${PYTHON_USEDEP}]
149 dev-python/simplejson[${PYTHON_USEDEP}]
150 test? ( dev-python/pyftpdlib[${PYTHON_USEDEP}] )
151 ')"
152 python_check_deps() {
153 has_version ">=dev-python/jinja-2.7[${PYTHON_USEDEP}]" && \
154 has_version "dev-python/ply[${PYTHON_USEDEP}]" && \
155 has_version "dev-python/simplejson[${PYTHON_USEDEP}]" && \
156 { ! use test || has_version "dev-python/pyftpdlib[${PYTHON_USEDEP}]"; }
157 }
158
159 if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
160 EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
161 fi
162
163 DISABLE_AUTOFORMATTING="yes"
164 DOC_CONTENTS="
165 Some web pages may require additional fonts to display properly.
166 Try installing some of the following packages if some characters
167 are not displayed properly:
168 - media-fonts/arphicfonts
169 - media-fonts/bitstream-cyberbit
170 - media-fonts/droid
171 - media-fonts/ipamonafont
172 - media-fonts/ja-ipafonts
173 - media-fonts/takao-fonts
174 - media-fonts/wqy-microhei
175 - media-fonts/wqy-zenhei
176
177 Depending on your desktop environment, you may need
178 to install additional packages to get icons on the Downloads page.
179
180 For KDE, the required package is kde-base/oxygen-icons.
181
182 For other desktop environments, try one of the following:
183 - x11-themes/gnome-icon-theme
184 - x11-themes/tango-icon-theme
185 "
186
187 pkg_setup() {
188 if [[ "${SLOT}" == "0" ]]; then
189 CHROMIUM_SUFFIX=""
190 else
191 CHROMIUM_SUFFIX="-${SLOT}"
192 fi
193 CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser${CHROMIUM_SUFFIX}"
194
195 # Make sure the build system will use the right python, bug #344367.
196 python-any-r1_pkg_setup
197
198 chromium_suid_sandbox_check_kernel_config
199
200 if use bindist; then
201 elog "bindist enabled: H.264 video support will be disabled."
202 else
203 elog "bindist disabled: Resulting binaries may not be legal to re-distribute."
204 fi
205 }
206
207 src_prepare() {
208 # if ! use arm; then
209 # mkdir -p out/Release/gen/sdk/toolchain || die
210 # # Do not preserve SELinux context, bug #460892 .
211 # cp -a --no-preserve=context /usr/$(get_libdir)/nacl-toolchain-newlib \
212 # out/Release/gen/sdk/toolchain/linux_x86_newlib || die
213 # touch out/Release/gen/sdk/toolchain/linux_x86_newlib/stamp.untar || die
214 # fi
215
216 epatch "${FILESDIR}/${PN}-system-jinja-r3.patch"
217 epatch "${FILESDIR}/${PN}-gn-r1.patch"
218 epatch "${FILESDIR}/${PN}-depot-tools-r0.patch"
219
220 epatch_user
221
222 # Remove most bundled libraries. Some are still needed.
223 build/linux/unbundle/remove_bundled_libraries.py \
224 'base/third_party/dmg_fp' \
225 'base/third_party/dynamic_annotations' \
226 'base/third_party/icu' \
227 'base/third_party/nspr' \
228 'base/third_party/symbolize' \
229 'base/third_party/valgrind' \
230 'base/third_party/xdg_mime' \
231 'base/third_party/xdg_user_dirs' \
232 'breakpad/src/third_party/curl' \
233 'chrome/third_party/mozilla_security_manager' \
234 'crypto/third_party/nss' \
235 'net/third_party/mozilla_security_manager' \
236 'net/third_party/nss' \
237 'third_party/WebKit' \
238 'third_party/angle' \
239 'third_party/brotli' \
240 'third_party/cacheinvalidation' \
241 'third_party/cld' \
242 'third_party/cros_system_api' \
243 'third_party/ffmpeg' \
244 'third_party/flot' \
245 'third_party/hunspell' \
246 'third_party/iccjpeg' \
247 'third_party/icu' \
248 'third_party/jstemplate' \
249 'third_party/khronos' \
250 'third_party/leveldatabase' \
251 'third_party/libaddressinput' \
252 'third_party/libjingle' \
253 'third_party/libphonenumber' \
254 'third_party/libsrtp' \
255 'third_party/libusb' \
256 'third_party/libxml/chromium' \
257 'third_party/libXNVCtrl' \
258 'third_party/libyuv' \
259 'third_party/lss' \
260 'third_party/lzma_sdk' \
261 'third_party/mesa' \
262 'third_party/modp_b64' \
263 'third_party/mt19937ar' \
264 'third_party/npapi' \
265 'third_party/ots' \
266 'third_party/polymer' \
267 'third_party/pywebsocket' \
268 'third_party/qcms' \
269 'third_party/readability' \
270 'third_party/sfntly' \
271 'third_party/skia' \
272 'third_party/smhasher' \
273 'third_party/sqlite' \
274 'third_party/tcmalloc' \
275 'third_party/tlslite' \
276 'third_party/trace-viewer' \
277 'third_party/undoview' \
278 'third_party/usrsctp' \
279 'third_party/webdriver' \
280 'third_party/webrtc' \
281 'third_party/widevine' \
282 'third_party/x86inc' \
283 'third_party/zlib/google' \
284 'url/third_party/mozilla' \
285 'v8/src/third_party/valgrind' \
286 --do-remove || die
287 }
288
289 src_configure() {
290 local myconf=""
291
292 # Never tell the build system to "enable" SSE2, it has a few unexpected
293 # additions, bug #336871.
294 myconf+=" -Ddisable_sse2=1"
295
296 # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
297 myconf+=" -Ddisable_nacl=1"
298
299 # Disable glibc Native Client toolchain, we don't need it (bug #417019).
300 # myconf+=" -Ddisable_glibc=1"
301
302 # TODO: also build with pnacl
303 # myconf+=" -Ddisable_pnacl=1"
304
305 # It would be awkward for us to tar the toolchain and get it untarred again
306 # during the build.
307 # myconf+=" -Ddisable_newlib_untar=1"
308
309 # Make it possible to remove third_party/adobe.
310 echo > "${T}/flapper_version.h" || die
311 myconf+=" -Dflapper_version_h_file=${T}/flapper_version.h"
312
313 # Use system-provided libraries.
314 # TODO: use_system_hunspell (upstream changes needed).
315 # TODO: use_system_icu (resolve startup crash).
316 # TODO: use_system_libsrtp (bug #459932).
317 # TODO: use_system_libusb (http://crbug.com/266149).
318 # TODO: use_system_ssl (http://crbug.com/58087).
319 # TODO: use_system_sqlite (http://crbug.com/22208).
320 myconf+="
321 -Duse_system_bzip2=1
322 -Duse_system_flac=1
323 -Duse_system_harfbuzz=1
324 -Duse_system_jsoncpp=1
325 -Duse_system_libevent=1
326 -Duse_system_libjpeg=1
327 -Duse_system_libpng=1
328 -Duse_system_libvpx=1
329 -Duse_system_libwebp=1
330 -Duse_system_libxml=1
331 -Duse_system_libxslt=1
332 -Duse_system_minizip=1
333 -Duse_system_nspr=1
334 -Duse_system_openssl=1
335 -Duse_system_opus=1
336 -Duse_system_protobuf=1
337 -Duse_system_re2=1
338 -Duse_system_snappy=1
339 -Duse_system_speex=1
340 -Duse_system_xdg_utils=1
341 -Duse_system_zlib=1"
342
343 # TODO: patch gyp so that this arm conditional is not needed.
344 if ! use arm; then
345 myconf+="
346 -Duse_system_yasm=1"
347 fi
348
349 # Optional dependencies.
350 # TODO: linux_link_kerberos, bug #381289.
351 myconf+="
352 $(gyp_use aura)
353 $(gyp_use cups)
354 $(gyp_use gnome use_gconf)
355 $(gyp_use gnome-keyring use_gnome_keyring)
356 $(gyp_use gnome-keyring linux_link_gnome_keyring)
357 $(gyp_use kerberos)
358 $(gyp_use pulseaudio)
359 $(gyp_use tcmalloc linux_use_tcmalloc)"
360
361 # Use explicit library dependencies instead of dlopen.
362 # This makes breakages easier to detect by revdep-rebuild.
363 myconf+="
364 -Dlinux_link_gsettings=1
365 -Dlinux_link_libpci=1
366 -Dlinux_link_libspeechd=1
367 -Dlibspeechd_h_prefix=speech-dispatcher/"
368
369 # TODO: use the file at run time instead of effectively compiling it in.
370 myconf+="
371 -Dusb_ids_path=/usr/share/misc/usb.ids"
372
373 # Save space by removing DLOG and DCHECK messages (about 6% reduction).
374 myconf+="
375 -Dlogging_like_official_build=1"
376
377 # Never use bundled gold binary. Disable gold linker flags for now.
378 myconf+="
379 -Dlinux_use_gold_binary=0
380 -Dlinux_use_gold_flags=0"
381
382 # Always support proprietary codecs.
383 myconf+=" -Dproprietary_codecs=1"
384
385 # Set python version and libdir so that python_arch.sh can find libpython.
386 # Bug 492864.
387 myconf+="
388 -Dpython_ver=${EPYTHON#python}
389 -Dsystem_libdir=$(get_libdir)"
390
391 if ! use bindist; then
392 # Enable H.264 support in bundled ffmpeg.
393 myconf+=" -Dffmpeg_branding=Chrome"
394 fi
395
396 # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
397 # Note: these are for Gentoo use ONLY. For your own distribution,
398 # please get your own set of keys. Feel free to contact chromium@g.o
399 # for more info.
400 myconf+=" -Dgoogle_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
401 -Dgoogle_default_client_id=329227923882.apps.googleusercontent.com
402 -Dgoogle_default_client_secret=vgKG0NNv7GoDpbtoFNLxCUXu"
403
404 local myarch="$(tc-arch)"
405 if [[ $myarch = amd64 ]] ; then
406 target_arch=x64
407 ffmpeg_target_arch=x64
408 elif [[ $myarch = x86 ]] ; then
409 target_arch=ia32
410 ffmpeg_target_arch=ia32
411 elif [[ $myarch = arm ]] ; then
412 target_arch=arm
413 ffmpeg_target_arch=$(usex neon arm-neon arm)
414 # TODO: re-enable NaCl (NativeClient).
415 local CTARGET=${CTARGET:-${CHOST}}
416 if [[ $(tc-is-softfloat) == "no" ]]; then
417
418 myconf+=" -Darm_float_abi=hard"
419 fi
420 filter-flags "-mfpu=*"
421 use neon || myconf+=" -Darm_fpu=${ARM_FPU:-vfpv3-d16}"
422
423 if [[ ${CTARGET} == armv[78]* ]]; then
424 myconf+=" -Darmv7=1"
425 else
426 myconf+=" -Darmv7=0"
427 fi
428 myconf+=" -Dsysroot=
429 $(gyp_use neon arm_neon)
430 -Ddisable_nacl=1"
431 else
432 die "Failed to determine target arch, got '$myarch'."
433 fi
434
435 myconf+=" -Dtarget_arch=${target_arch}"
436
437 # Make sure that -Werror doesn't get added to CFLAGS by the build system.
438 # Depending on GCC version the warnings are different and we don't want
439 # the build to fail because of that.
440 myconf+=" -Dwerror="
441
442 # Avoid CFLAGS problems, bug #352457, bug #390147.
443 if ! use custom-cflags; then
444 replace-flags "-Os" "-O2"
445 strip-flags
446
447 # Prevent linker from running out of address space, bug #471810 .
448 if use x86; then
449 filter-flags "-g*"
450 fi
451 fi
452
453 # Make sure the build system will use the right tools, bug #340795.
454 tc-export AR CC CXX RANLIB
455
456 # Tools for building programs to be executed on the build system, bug #410883.
457 export AR_host=$(tc-getBUILD_AR)
458 export CC_host=$(tc-getBUILD_CC)
459 export CXX_host=$(tc-getBUILD_CXX)
460 export LD_host=${CXX_host}
461
462 # Bug 491582.
463 export TMPDIR="${WORKDIR}/temp"
464 mkdir -m 755 "${TMPDIR}" || die
465
466 # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
467 einfo "Configuring bundled ffmpeg..."
468 pushd third_party/ffmpeg > /dev/null || die
469 chromium/scripts/build_ffmpeg.sh linux ${ffmpeg_target_arch} "${PWD}" config-only || die
470 chromium/scripts/copy_config.sh || die
471 popd > /dev/null || die
472
473 einfo "Configuring Chromium..."
474 build/linux/unbundle/replace_gyp_files.py ${myconf} || die
475 egyp_chromium ${myconf} || die
476 }
477
478 eninja() {
479 if [[ -z ${NINJAOPTS+set} ]]; then
480 local jobs=$(makeopts_jobs)
481 local loadavg=$(makeopts_loadavg)
482
483 if [[ ${MAKEOPTS} == *-j* && ${jobs} != 999 ]]; then
484 NINJAOPTS+=" -j ${jobs}"
485 fi
486 if [[ ${MAKEOPTS} == *-l* && ${loadavg} != 999 ]]; then
487 NINJAOPTS+=" -l ${loadavg}"
488 fi
489 fi
490 set -- ninja -v ${NINJAOPTS} "$@"
491 echo "$@"
492 "$@"
493 }
494
495 src_compile() {
496 # TODO: add media_unittests after fixing compile (bug #462546).
497 local test_targets=""
498 for x in base cacheinvalidation content crypto \
499 gpu net printing sql; do
500 test_targets+=" ${x}_unittests"
501 done
502
503 local ninja_targets="chrome chrome_sandbox chromedriver"
504 if use test; then
505 ninja_targets+=" $test_targets"
506 fi
507
508 # Build mksnapshot and pax-mark it.
509 eninja -C out/Release mksnapshot.${target_arch} || die
510 pax-mark m out/Release/mksnapshot.${target_arch}
511
512 # Even though ninja autodetects number of CPUs, we respect
513 # user's options, for debugging with -j 1 or any other reason.
514 eninja -C out/Release ${ninja_targets} || die
515
516 pax-mark m out/Release/chrome
517 if use test; then
518 for x in $test_targets; do
519 pax-mark m out/Release/${x}
520 done
521 fi
522 }
523
524 src_test() {
525 # For more info see bug #350349.
526 local LC_ALL="en_US.utf8"
527
528 if ! locale -a | grep -q "${LC_ALL}"; then
529 eerror "${PN} requires ${LC_ALL} locale for tests"
530 eerror "Please read the following guides for more information:"
531 eerror " http://www.gentoo.org/doc/en/guide-localization.xml"
532 eerror " http://www.gentoo.org/doc/en/utf-8.xml"
533 die "locale ${LC_ALL} is not supported"
534 fi
535
536 # If we have the right locale, export it to the environment
537 export LC_ALL
538
539 # For more info see bug #370957.
540 if [[ $UID -eq 0 ]]; then
541 die "Tests must be run as non-root. Please use FEATURES=userpriv."
542 fi
543
544 # virtualmake dies on failure, so we run our tests in a function
545 VIRTUALX_COMMAND="chromium_test" virtualmake
546 }
547
548 chromium_test() {
549 # Keep track of the cumulative exit status for all tests
550 local exitstatus=0
551
552 runtest() {
553 local cmd=$1
554 shift
555 local IFS=:
556 set -- "${cmd}" "--gtest_filter=-$*"
557 einfo "$@"
558 "$@"
559 local st=$?
560 (( st )) && eerror "${cmd} failed"
561 (( exitstatus |= st ))
562 }
563
564 local excluded_base_unittests=(
565 "OutOfMemoryDeathTest.ViaSharedLibraries" # bug #497512
566 )
567 runtest out/Release/base_unittests "${excluded_base_unittests[@]}"
568 runtest out/Release/cacheinvalidation_unittests
569
570 local excluded_content_unittests=(
571 "RendererDateTimePickerTest.*" # bug #465452
572 )
573 runtest out/Release/content_unittests "${excluded_content_unittests[@]}"
574
575 runtest out/Release/crypto_unittests
576 runtest out/Release/gpu_unittests
577
578 # TODO: add media_unittests after fixing compile (bug #462546).
579 # runtest out/Release/media_unittests
580
581 local excluded_net_unittests=(
582 "NetUtilTest.IDNToUnicode*" # bug 361885
583 "NetUtilTest.FormatUrl*" # see above
584 "SpdyFramerTests/SpdyFramerTest.CreatePushPromiseCompressed/2" # bug #478168
585 "HostResolverImplTest.BypassCache" # bug #498304
586 "HostResolverImplTest.FlushCacheOnIPAddressChange" # bug #481812
587 "HostResolverImplTest.ResolveFromCache" # see above
588 "ProxyResolverV8TracingTest.*" # see above
589 "SSLClientSocketTest.ConnectMismatched" # see above
590 "UDPSocketTest.*" # see above
591 "*EndToEndTest*" # see above
592 )
593 runtest out/Release/net_unittests "${excluded_net_unittests[@]}"
594
595 runtest out/Release/printing_unittests
596 runtest out/Release/sql_unittests
597
598 return ${exitstatus}
599 }
600
601 src_install() {
602 exeinto "${CHROMIUM_HOME}"
603 doexe out/Release/chrome || die
604
605 newexe out/Release/chrome_sandbox chrome-sandbox || die
606 fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
607
608 doexe out/Release/chromedriver || die
609
610 # if ! use arm; then
611 # doexe out/Release/nacl_helper{,_bootstrap} || die
612 # insinto "${CHROMIUM_HOME}"
613 # doins out/Release/nacl_irt_*.nexe || die
614 # doins out/Release/libppGoogleNaClPluginChrome.so || die
615 # fi
616
617 local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
618 if [[ -n ${CHROMIUM_SUFFIX} ]]; then
619 sedargs+=(
620 -e "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g"
621 -e "s:chromium.desktop:chromium${CHROMIUM_SUFFIX}.desktop:g"
622 -e "s:plugins:plugins --user-data-dir=\${HOME}/.config/chromium${CHROMIUM_SUFFIX}:"
623 )
624 fi
625 sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
626 doexe chromium-launcher.sh
627
628 # It is important that we name the target "chromium-browser",
629 # xdg-utils expect it; bug #355517.
630 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser${CHROMIUM_SUFFIX} || die
631 # keep the old symlink around for consistency
632 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium${CHROMIUM_SUFFIX} || die
633
634 # Allow users to override command-line options, bug #357629.
635 dodir /etc/chromium || die
636 insinto /etc/chromium
637 newins "${FILESDIR}/chromium.default" "default" || die
638
639 pushd out/Release/locales > /dev/null || die
640 chromium_remove_language_paks
641 popd
642
643 insinto "${CHROMIUM_HOME}"
644 doins out/Release/icudtl.dat || die
645 doins out/Release/*.pak || die
646
647 doins -r out/Release/locales || die
648 doins -r out/Release/resources || die
649
650 newman out/Release/chrome.1 chromium${CHROMIUM_SUFFIX}.1 || die
651 newman out/Release/chrome.1 chromium-browser${CHROMIUM_SUFFIX}.1 || die
652
653 doexe out/Release/libffmpegsumo.so || die
654
655 # Install icons and desktop entry.
656 local branding size
657 for size in 16 22 24 32 48 64 128 256 ; do
658 case ${size} in
659 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
660 *) branding="chrome/app/theme/chromium" ;;
661 esac
662 newicon -s ${size} "${branding}/product_logo_${size}.png" \
663 chromium-browser${CHROMIUM_SUFFIX}.png
664 done
665
666 local mime_types="text/html;text/xml;application/xhtml+xml;"
667 mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
668 mime_types+="x-scheme-handler/ftp;" # bug #412185
669 mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
670 make_desktop_entry \
671 chromium-browser${CHROMIUM_SUFFIX} \
672 "Chromium${CHROMIUM_SUFFIX}" \
673 chromium-browser${CHROMIUM_SUFFIX} \
674 "Network;WebBrowser" \
675 "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
676 sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
677
678 # Install GNOME default application entry (bug #303100).
679 if use gnome; then
680 dodir /usr/share/gnome-control-center/default-apps || die
681 insinto /usr/share/gnome-control-center/default-apps
682 newins "${FILESDIR}"/chromium-browser.xml chromium-browser${CHROMIUM_SUFFIX}.xml || die
683 if [[ "${CHROMIUM_SUFFIX}" != "" ]]; then
684 sed "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g" -i \
685 "${ED}"/usr/share/gnome-control-center/default-apps/chromium-browser${CHROMIUM_SUFFIX}.xml
686 fi
687 fi
688
689 readme.gentoo_create_doc
690 }
691
692 pkg_postinst() {
693 fdo-mime_desktop_database_update
694 gnome2_icon_cache_update
695 readme.gentoo_print_elog
696 }