Gentoo Archives: gentoo-commits

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