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