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