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.1847.14.ebuild ChangeLog chromium-34.0.1833.5.ebuild
Date: Thu, 27 Feb 2014 05:31:05
Message-Id: 20140227053057.072F92004C@flycatcher.gentoo.org
1 phajdan.jr 14/02/27 05:30:56
2
3 Modified: ChangeLog
4 Added: chromium-34.0.1847.14.ebuild
5 Removed: chromium-34.0.1833.5.ebuild
6 Log:
7 Dev channel bump. Remove old.
8
9 (Portage version: 2.2.7/cvs/Linux i686, signed Manifest commit with key 0x4F1A2555EA71991D!)
10
11 Revision Changes Path
12 1.1029 www-client/chromium/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.1029&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?rev=1.1029&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/ChangeLog?r1=1.1028&r2=1.1029
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v
21 retrieving revision 1.1028
22 retrieving revision 1.1029
23 diff -u -r1.1028 -r1.1029
24 --- ChangeLog 22 Feb 2014 07:33:57 -0000 1.1028
25 +++ ChangeLog 27 Feb 2014 05:30:56 -0000 1.1029
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.1028 2014/02/22 07:33:57 ago Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.1029 2014/02/27 05:30:56 phajdan.jr Exp $
31 +
32 +*chromium-34.0.1847.14 (26 Feb 2014)
33 +
34 + 26 Feb 2014; Pawel Hajdan jr <phajdan.jr@g.o>
35 + +chromium-34.0.1847.14.ebuild, -chromium-34.0.1833.5.ebuild:
36 + Dev channel bump. Remove old.
37
38 22 Feb 2014; Agostino Sarubbo <ago@g.o> chromium-33.0.1750.117.ebuild:
39 Stable for x86, wrt bug #501948
40
41
42
43 1.1 www-client/chromium/chromium-34.0.1847.14.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-34.0.1847.14.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/chromium/chromium-34.0.1847.14.ebuild?rev=1.1&content-type=text/plain
47
48 Index: chromium-34.0.1847.14.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.14.ebuild,v 1.1 2014/02/27 05:30:56 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-r4.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/libwebm' \
257 'third_party/libxml/chromium' \
258 'third_party/libXNVCtrl' \
259 'third_party/libyuv' \
260 'third_party/lss' \
261 'third_party/lzma_sdk' \
262 'third_party/mesa' \
263 'third_party/modp_b64' \
264 'third_party/mt19937ar' \
265 'third_party/npapi' \
266 'third_party/nss.isolate' \
267 'third_party/ots' \
268 'third_party/polymer' \
269 'third_party/pywebsocket' \
270 'third_party/qcms' \
271 'third_party/readability' \
272 'third_party/sfntly' \
273 'third_party/skia' \
274 'third_party/smhasher' \
275 'third_party/sqlite' \
276 'third_party/tcmalloc' \
277 'third_party/tlslite' \
278 'third_party/trace-viewer' \
279 'third_party/undoview' \
280 'third_party/usrsctp' \
281 'third_party/webdriver' \
282 'third_party/webrtc' \
283 'third_party/widevine' \
284 'third_party/x86inc' \
285 'third_party/zlib/google' \
286 'url/third_party/mozilla' \
287 'v8/src/third_party/valgrind' \
288 --do-remove || die
289 }
290
291 src_configure() {
292 local myconf=""
293
294 # Never tell the build system to "enable" SSE2, it has a few unexpected
295 # additions, bug #336871.
296 myconf+=" -Ddisable_sse2=1"
297
298 # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
299 myconf+=" -Ddisable_nacl=1"
300
301 # Disable glibc Native Client toolchain, we don't need it (bug #417019).
302 # myconf+=" -Ddisable_glibc=1"
303
304 # TODO: also build with pnacl
305 # myconf+=" -Ddisable_pnacl=1"
306
307 # It would be awkward for us to tar the toolchain and get it untarred again
308 # during the build.
309 # myconf+=" -Ddisable_newlib_untar=1"
310
311 # Make it possible to remove third_party/adobe.
312 echo > "${T}/flapper_version.h" || die
313 myconf+=" -Dflapper_version_h_file=${T}/flapper_version.h"
314
315 # Use system-provided libraries.
316 # TODO: use_system_hunspell (upstream changes needed).
317 # TODO: use_system_icu (resolve startup crash).
318 # TODO: use_system_libsrtp (bug #459932).
319 # TODO: use_system_libusb (http://crbug.com/266149).
320 # TODO: use_system_ssl (http://crbug.com/58087).
321 # TODO: use_system_sqlite (http://crbug.com/22208).
322 myconf+="
323 -Duse_system_bzip2=1
324 -Duse_system_flac=1
325 -Duse_system_harfbuzz=1
326 -Duse_system_jsoncpp=1
327 -Duse_system_libevent=1
328 -Duse_system_libjpeg=1
329 -Duse_system_libpng=1
330 -Duse_system_libvpx=1
331 -Duse_system_libwebp=1
332 -Duse_system_libxml=1
333 -Duse_system_libxslt=1
334 -Duse_system_minizip=1
335 -Duse_system_nspr=1
336 -Duse_system_openssl=1
337 -Duse_system_opus=1
338 -Duse_system_protobuf=1
339 -Duse_system_re2=1
340 -Duse_system_snappy=1
341 -Duse_system_speex=1
342 -Duse_system_xdg_utils=1
343 -Duse_system_zlib=1"
344
345 # TODO: patch gyp so that this arm conditional is not needed.
346 if ! use arm; then
347 myconf+="
348 -Duse_system_yasm=1"
349 fi
350
351 # Optional dependencies.
352 # TODO: linux_link_kerberos, bug #381289.
353 myconf+="
354 $(gyp_use aura)
355 $(gyp_use cups)
356 $(gyp_use gnome use_gconf)
357 $(gyp_use gnome-keyring use_gnome_keyring)
358 $(gyp_use gnome-keyring linux_link_gnome_keyring)
359 $(gyp_use kerberos)
360 $(gyp_use pulseaudio)
361 $(gyp_use tcmalloc linux_use_tcmalloc)"
362
363 # Use explicit library dependencies instead of dlopen.
364 # This makes breakages easier to detect by revdep-rebuild.
365 myconf+="
366 -Dlinux_link_gsettings=1
367 -Dlinux_link_libpci=1
368 -Dlinux_link_libspeechd=1
369 -Dlibspeechd_h_prefix=speech-dispatcher/"
370
371 # TODO: use the file at run time instead of effectively compiling it in.
372 myconf+="
373 -Dusb_ids_path=/usr/share/misc/usb.ids"
374
375 # Save space by removing DLOG and DCHECK messages (about 6% reduction).
376 myconf+="
377 -Dlogging_like_official_build=1"
378
379 # Never use bundled gold binary. Disable gold linker flags for now.
380 myconf+="
381 -Dlinux_use_gold_binary=0
382 -Dlinux_use_gold_flags=0"
383
384 # Always support proprietary codecs.
385 myconf+=" -Dproprietary_codecs=1"
386
387 # Set python version and libdir so that python_arch.sh can find libpython.
388 # Bug 492864.
389 myconf+="
390 -Dpython_ver=${EPYTHON#python}
391 -Dsystem_libdir=$(get_libdir)"
392
393 if ! use bindist; then
394 # Enable H.264 support in bundled ffmpeg.
395 myconf+=" -Dffmpeg_branding=Chrome"
396 fi
397
398 # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
399 # Note: these are for Gentoo use ONLY. For your own distribution,
400 # please get your own set of keys. Feel free to contact chromium@g.o
401 # for more info.
402 myconf+=" -Dgoogle_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
403 -Dgoogle_default_client_id=329227923882.apps.googleusercontent.com
404 -Dgoogle_default_client_secret=vgKG0NNv7GoDpbtoFNLxCUXu"
405
406 local myarch="$(tc-arch)"
407 if [[ $myarch = amd64 ]] ; then
408 target_arch=x64
409 ffmpeg_target_arch=x64
410 elif [[ $myarch = x86 ]] ; then
411 target_arch=ia32
412 ffmpeg_target_arch=ia32
413 elif [[ $myarch = arm ]] ; then
414 target_arch=arm
415 ffmpeg_target_arch=$(usex neon arm-neon arm)
416 # TODO: re-enable NaCl (NativeClient).
417 local CTARGET=${CTARGET:-${CHOST}}
418 if [[ $(tc-is-softfloat) == "no" ]]; then
419
420 myconf+=" -Darm_float_abi=hard"
421 fi
422 filter-flags "-mfpu=*"
423 use neon || myconf+=" -Darm_fpu=${ARM_FPU:-vfpv3-d16}"
424
425 if [[ ${CTARGET} == armv[78]* ]]; then
426 myconf+=" -Darmv7=1"
427 else
428 myconf+=" -Darmv7=0"
429 fi
430 myconf+=" -Dsysroot=
431 $(gyp_use neon arm_neon)
432 -Ddisable_nacl=1"
433 else
434 die "Failed to determine target arch, got '$myarch'."
435 fi
436
437 myconf+=" -Dtarget_arch=${target_arch}"
438
439 # Make sure that -Werror doesn't get added to CFLAGS by the build system.
440 # Depending on GCC version the warnings are different and we don't want
441 # the build to fail because of that.
442 myconf+=" -Dwerror="
443
444 # Avoid CFLAGS problems, bug #352457, bug #390147.
445 if ! use custom-cflags; then
446 replace-flags "-Os" "-O2"
447 strip-flags
448
449 # Prevent linker from running out of address space, bug #471810 .
450 if use x86; then
451 filter-flags "-g*"
452 fi
453 fi
454
455 # Make sure the build system will use the right tools, bug #340795.
456 tc-export AR CC CXX RANLIB
457
458 # Tools for building programs to be executed on the build system, bug #410883.
459 export AR_host=$(tc-getBUILD_AR)
460 export CC_host=$(tc-getBUILD_CC)
461 export CXX_host=$(tc-getBUILD_CXX)
462 export LD_host=${CXX_host}
463
464 # Bug 491582.
465 export TMPDIR="${WORKDIR}/temp"
466 mkdir -m 755 "${TMPDIR}" || die
467
468 # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
469 einfo "Configuring bundled ffmpeg..."
470 pushd third_party/ffmpeg > /dev/null || die
471 chromium/scripts/build_ffmpeg.sh linux ${ffmpeg_target_arch} "${PWD}" config-only || die
472 chromium/scripts/copy_config.sh || die
473 popd > /dev/null || die
474
475 einfo "Configuring Chromium..."
476 build/linux/unbundle/replace_gyp_files.py ${myconf} || die
477 egyp_chromium ${myconf} || die
478 }
479
480 eninja() {
481 if [[ -z ${NINJAOPTS+set} ]]; then
482 local jobs=$(makeopts_jobs)
483 local loadavg=$(makeopts_loadavg)
484
485 if [[ ${MAKEOPTS} == *-j* && ${jobs} != 999 ]]; then
486 NINJAOPTS+=" -j ${jobs}"
487 fi
488 if [[ ${MAKEOPTS} == *-l* && ${loadavg} != 999 ]]; then
489 NINJAOPTS+=" -l ${loadavg}"
490 fi
491 fi
492 set -- ninja -v ${NINJAOPTS} "$@"
493 echo "$@"
494 "$@"
495 }
496
497 src_compile() {
498 # TODO: add media_unittests after fixing compile (bug #462546).
499 local test_targets=""
500 for x in base cacheinvalidation content crypto \
501 gpu net printing sql; do
502 test_targets+=" ${x}_unittests"
503 done
504
505 local ninja_targets="chrome chrome_sandbox chromedriver"
506 if use test; then
507 ninja_targets+=" $test_targets"
508 fi
509
510 # Build mksnapshot and pax-mark it.
511 eninja -C out/Release mksnapshot.${target_arch} || die
512 pax-mark m out/Release/mksnapshot.${target_arch}
513
514 # Even though ninja autodetects number of CPUs, we respect
515 # user's options, for debugging with -j 1 or any other reason.
516 eninja -C out/Release ${ninja_targets} || die
517
518 pax-mark m out/Release/chrome
519 if use test; then
520 for x in $test_targets; do
521 pax-mark m out/Release/${x}
522 done
523 fi
524 }
525
526 src_test() {
527 # For more info see bug #350349.
528 local LC_ALL="en_US.utf8"
529
530 if ! locale -a | grep -q "${LC_ALL}"; then
531 eerror "${PN} requires ${LC_ALL} locale for tests"
532 eerror "Please read the following guides for more information:"
533 eerror " http://www.gentoo.org/doc/en/guide-localization.xml"
534 eerror " http://www.gentoo.org/doc/en/utf-8.xml"
535 die "locale ${LC_ALL} is not supported"
536 fi
537
538 # If we have the right locale, export it to the environment
539 export LC_ALL
540
541 # For more info see bug #370957.
542 if [[ $UID -eq 0 ]]; then
543 die "Tests must be run as non-root. Please use FEATURES=userpriv."
544 fi
545
546 # virtualmake dies on failure, so we run our tests in a function
547 VIRTUALX_COMMAND="chromium_test" virtualmake
548 }
549
550 chromium_test() {
551 # Keep track of the cumulative exit status for all tests
552 local exitstatus=0
553
554 runtest() {
555 local cmd=$1
556 shift
557 local IFS=:
558 set -- "${cmd}" --test-launcher-bot-mode "--gtest_filter=-$*"
559 einfo "$@"
560 "$@"
561 local st=$?
562 (( st )) && eerror "${cmd} failed"
563 (( exitstatus |= st ))
564 }
565
566 local excluded_base_unittests=(
567 "OutOfMemoryDeathTest.ViaSharedLibraries" # bug #497512
568 )
569 runtest out/Release/base_unittests "${excluded_base_unittests[@]}"
570 runtest out/Release/cacheinvalidation_unittests
571
572 local excluded_content_unittests=(
573 "RendererDateTimePickerTest.*" # bug #465452
574 )
575 runtest out/Release/content_unittests "${excluded_content_unittests[@]}"
576
577 runtest out/Release/crypto_unittests
578 runtest out/Release/gpu_unittests
579
580 # TODO: add media_unittests after fixing compile (bug #462546).
581 # runtest out/Release/media_unittests
582
583 local excluded_net_unittests=(
584 "NetUtilTest.IDNToUnicode*" # bug 361885
585 "NetUtilTest.FormatUrl*" # see above
586 "SpdyFramerTests/SpdyFramerTest.CreatePushPromiseCompressed/2" # bug #478168
587 "HostResolverImplTest.BypassCache" # bug #498304
588 "HostResolverImplTest.FlushCacheOnIPAddressChange" # bug #481812
589 "HostResolverImplTest.ResolveFromCache" # see above
590 "ProxyResolverV8TracingTest.*" # see above
591 "SSLClientSocketTest.ConnectMismatched" # see above
592 "UDPSocketTest.*" # see above
593 "*EndToEndTest*" # see above
594 )
595 runtest out/Release/net_unittests "${excluded_net_unittests[@]}"
596
597 runtest out/Release/printing_unittests
598 runtest out/Release/sql_unittests
599
600 return ${exitstatus}
601 }
602
603 src_install() {
604 exeinto "${CHROMIUM_HOME}"
605 doexe out/Release/chrome || die
606
607 newexe out/Release/chrome_sandbox chrome-sandbox || die
608 fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
609
610 doexe out/Release/chromedriver || die
611
612 # if ! use arm; then
613 # doexe out/Release/nacl_helper{,_bootstrap} || die
614 # insinto "${CHROMIUM_HOME}"
615 # doins out/Release/nacl_irt_*.nexe || die
616 # doins out/Release/libppGoogleNaClPluginChrome.so || die
617 # fi
618
619 local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
620 if [[ -n ${CHROMIUM_SUFFIX} ]]; then
621 sedargs+=(
622 -e "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g"
623 -e "s:chromium.desktop:chromium${CHROMIUM_SUFFIX}.desktop:g"
624 -e "s:plugins:plugins --user-data-dir=\${HOME}/.config/chromium${CHROMIUM_SUFFIX}:"
625 )
626 fi
627 sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
628 doexe chromium-launcher.sh
629
630 # It is important that we name the target "chromium-browser",
631 # xdg-utils expect it; bug #355517.
632 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser${CHROMIUM_SUFFIX} || die
633 # keep the old symlink around for consistency
634 dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium${CHROMIUM_SUFFIX} || die
635
636 dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver${CHROMIUM_SUFFIX} || die
637
638 # Allow users to override command-line options, bug #357629.
639 dodir /etc/chromium || die
640 insinto /etc/chromium
641 newins "${FILESDIR}/chromium.default" "default" || die
642
643 pushd out/Release/locales > /dev/null || die
644 chromium_remove_language_paks
645 popd
646
647 insinto "${CHROMIUM_HOME}"
648 doins out/Release/icudtl.dat || die
649 doins out/Release/*.pak || die
650
651 doins -r out/Release/locales || die
652 doins -r out/Release/resources || die
653
654 newman out/Release/chrome.1 chromium${CHROMIUM_SUFFIX}.1 || die
655 newman out/Release/chrome.1 chromium-browser${CHROMIUM_SUFFIX}.1 || die
656
657 doexe out/Release/libffmpegsumo.so || die
658
659 # Install icons and desktop entry.
660 local branding size
661 for size in 16 22 24 32 48 64 128 256 ; do
662 case ${size} in
663 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
664 *) branding="chrome/app/theme/chromium" ;;
665 esac
666 newicon -s ${size} "${branding}/product_logo_${size}.png" \
667 chromium-browser${CHROMIUM_SUFFIX}.png
668 done
669
670 local mime_types="text/html;text/xml;application/xhtml+xml;"
671 mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
672 mime_types+="x-scheme-handler/ftp;" # bug #412185
673 mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
674 make_desktop_entry \
675 chromium-browser${CHROMIUM_SUFFIX} \
676 "Chromium${CHROMIUM_SUFFIX}" \
677 chromium-browser${CHROMIUM_SUFFIX} \
678 "Network;WebBrowser" \
679 "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
680 sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
681
682 # Install GNOME default application entry (bug #303100).
683 if use gnome; then
684 dodir /usr/share/gnome-control-center/default-apps || die
685 insinto /usr/share/gnome-control-center/default-apps
686 newins "${FILESDIR}"/chromium-browser.xml chromium-browser${CHROMIUM_SUFFIX}.xml || die
687 if [[ "${CHROMIUM_SUFFIX}" != "" ]]; then
688 sed "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g" -i \
689 "${ED}"/usr/share/gnome-control-center/default-apps/chromium-browser${CHROMIUM_SUFFIX}.xml
690 fi
691 fi
692
693 readme.gentoo_create_doc
694 }
695
696 pkg_postinst() {
697 fdo-mime_desktop_database_update
698 gnome2_icon_cache_update
699 readme.gentoo_print_elog
700 }