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