summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Hajdan <phajdan.jr@gentoo.org>2012-06-09 11:31:59 +0000
committerPaweł Hajdan <phajdan.jr@gentoo.org>2012-06-09 11:31:59 +0000
commitc698ceeeed545ecd0a1a340c5cab32879fd161c5 (patch)
tree779e7a2f61e410507e7e1cb788b7561fb137200b /www-client
parentRemove banners and testprint, now provided by cups-filters (diff)
downloadhistorical-c698ceeeed545ecd0a1a340c5cab32879fd161c5.tar.gz
historical-c698ceeeed545ecd0a1a340c5cab32879fd161c5.tar.bz2
historical-c698ceeeed545ecd0a1a340c5cab32879fd161c5.zip
Backport upstream crash fix, bug #420357 by Bkmz.
Package-Manager: portage-2.1.10.49/cvs/Linux i686
Diffstat (limited to 'www-client')
-rw-r--r--www-client/chromium/ChangeLog10
-rw-r--r--www-client/chromium/Manifest13
-rw-r--r--www-client/chromium/chromium-19.0.1084.56-r1.ebuild421
-rw-r--r--www-client/chromium/chromium-20.0.1132.27-r1.ebuild (renamed from www-client/chromium/chromium-20.0.1132.21.ebuild)7
-rw-r--r--www-client/chromium/files/chromium-alignment-r0.patch15
5 files changed, 457 insertions, 9 deletions
diff --git a/www-client/chromium/ChangeLog b/www-client/chromium/ChangeLog
index ac68650fcb98..22b7afaf1b04 100644
--- a/www-client/chromium/ChangeLog
+++ b/www-client/chromium/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for www-client/chromium
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.655 2012/06/09 10:26:17 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.656 2012/06/09 11:31:59 phajdan.jr Exp $
+
+*chromium-20.0.1132.27-r1 (09 Jun 2012)
+*chromium-19.0.1084.56-r1 (09 Jun 2012)
+
+ 09 Jun 2012; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+ +files/chromium-alignment-r0.patch, +chromium-19.0.1084.56-r1.ebuild,
+ -chromium-20.0.1132.21.ebuild, +chromium-20.0.1132.27-r1.ebuild:
+ Backport upstream crash fix, bug #420357 by Bkmz.
09 Jun 2012; Pawel Hajdan jr <phajdan.jr@gentoo.org>
chromium-19.0.1084.52.ebuild, chromium-19.0.1084.56.ebuild,
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index 594048f353aa..bae58fbfd250 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,6 +1,7 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
+AUX chromium-alignment-r0.patch 580 RMD160 9e1167784ce2e1e770c08a2b51cab2165729a4b8 SHA1 1d5adc776d777d285bb9b6306cb28f4cc3f8434f SHA256 a06398ff91b7389857a1532cde62e4ab45767086c7ae9e0da22df9028227b5ec
AUX chromium-browser.xml 407 RMD160 457374ff72561648d9777ffb3270ad10d864a6be SHA1 65543bfff7d0350d40ba258e61061b0c5579e1f2 SHA256 bc039012f8677468e9ce5df825f9d8096be6deb5813031c86a087c88105096ff
AUX chromium-expat-r0.patch 513 RMD160 07d05d4e3a56e45f3fa14b753bc09a6f27e96c25 SHA1 3ba17e67455c4aab978eab920505bd02f932bda9 SHA256 af117c11c385a8d401601118ed0d31ea7486684c0c32b78c3089dd3229e0945a
AUX chromium-glib-r0.patch 451 RMD160 8b410994406b930c6befc3aed0f4dc958ddf5609 SHA1 594e0508c098cf43c6af86983db966ec537f7f56 SHA256 42469853c5cb1d4376567419f78af848b0f4a1b9f68ce9b5c8ce8c0b3d506193
@@ -19,24 +20,24 @@ AUX chromium.default 147 RMD160 4c0669585499b94c225e34e985e615d0299b66fb SHA1 1c
AUX dot-gclient 253 RMD160 a768770d8e6f5b73395451277beea1cc9240fc3a SHA1 3eaf2074da58cfe4f2af3d08f59b27a16fe13dad SHA256 8c5750251ff681044cc584ef3768fe39c56c7877ade5fb9107298734126e62cf
DIST chromium-19.0.1084.52.tar.bz2 184040348 RMD160 1393cb8c423eb7af14d42df40f2bf8afcf4860aa SHA1 e27acc2cdef9f47b0d8a136b3c5867d86e9317b6 SHA256 e725d4aa7608c9975b8989188d85d38846956db2f480a1a217bcab06419dab72
DIST chromium-19.0.1084.56.tar.bz2 184089352 RMD160 316b908ecdb55714ba544b99f6ece98bfeae5465 SHA1 9a0521fe26fd54f0942ceaef0a767e7854461e13 SHA256 c33a2cac35a3dd6ef359d8dee47dc405732f9e0865c82cffb876f5d936ec1418
-DIST chromium-20.0.1132.21.tar.bz2 185081705 RMD160 2c94415bb9d321d6acd33f75af1336d6c059e9b8 SHA1 76d9fd88345d092bcf28701a93e9d039f3bf1231 SHA256 963e3b6acf57498dfb8ef646ac64a2c35feaf24297e4211ded8bff0e3a9b15c9
DIST chromium-20.0.1132.27.tar.bz2 185120793 RMD160 aea3c02993878bc2b49ef828fee29d3c50b9ecf2 SHA1 7e5838cc808a5299650d7b2f5a768279439e83fa SHA256 ff9813a6cc8a623eba8d104766d828c1ad8e91ed6496888d5ca0a8b4836b3453
DIST chromium-21.0.1155.2.tar.bz2 191277883 RMD160 cb009d4aed04f1aeb0e1c261211a85b5f79ecbbf SHA1 7858fb6f6d2010aec30e2d6dea43b50d92ec3d6f SHA256 1624d617b9d3eeeb6a302d85db23dd43d611d0ca558a48a1156119390953838d
DIST chromium-21.0.1163.0.tar.bz2 192046119 RMD160 59091e5c8ff30210d1cf60196787231058199322 SHA1 8f99f6de0b28a28c53b96391c98093f35724ca2c SHA256 9fa17f1ab2b6fba1039897e23c6bf2e33c567a846cb3a6c29f66bd6a485c4bb7
EBUILD chromium-19.0.1084.52.ebuild 13752 RMD160 79c5fe77b5de2bce24a561026bac90d86a45a2ba SHA1 eb97ed369b296dc1370c45227c155b433c0b4658 SHA256 995e3f107ac808952d1d850e9eec1d8b63c47073e6a1debf865111d8721a721c
+EBUILD chromium-19.0.1084.56-r1.ebuild 13856 RMD160 e4f09405242759b1a903951f1d0758c1aa9e35b5 SHA1 b1f8943af6d33a67451ed6e900c84c78d790c9a2 SHA256 2001f6bc1273226ac82b5b5a139ce5c23a75ebe4c4e47071efe744937fcb0b47
EBUILD chromium-19.0.1084.56.ebuild 13754 RMD160 0dcb9219459c9ed8db5c69ed3dff29480b88324c SHA1 4b24ac02e3b8d8db530cc519c227a320fec99637 SHA256 ca483b67b11cac3ec1da82954b8437db65ed053ea76c2f6f4b1c26cded0965fd
-EBUILD chromium-20.0.1132.21.ebuild 13605 RMD160 0a96d25fe0f1eba4ac0ee468a959fa21c0df574b SHA1 674ec88d735b2d91104ac4ad3bd74d19a86aa8a7 SHA256 71faa703ec749ab4f679a43d2800a896d73cd0c4eb353c2903300f45ceb10d93
+EBUILD chromium-20.0.1132.27-r1.ebuild 13707 RMD160 c4dc720c52e70de66a4abdef5cb8f53bcf98c12c SHA1 bfcc108cae0b5a10bbfff1dd2b171967028cac17 SHA256 91d896097ed14084ad197fdaf9378bed87a62d3211665ebb9c11b95c9253bd0c
EBUILD chromium-20.0.1132.27.ebuild 13605 RMD160 4c0c26cf0505d2b23e67f70e4c830c4dea0f122a SHA1 32632777467bad71d151103acb0795bdb4e781a0 SHA256 ad865e2c709baf8a0fd3b186f7454c0cbbac530db04484c7a8488c26e3ee9c92
EBUILD chromium-21.0.1155.2.ebuild 13636 RMD160 a095f768fd290243414466d4b900c734380ba2ba SHA1 3d9ffaed95ed917d0889128c2a9cb76c03afdb1d SHA256 fa6f40ff25e9067c029414ca52d5161054d6ca00ebaf4c731932044f77187d4c
EBUILD chromium-21.0.1163.0.ebuild 13636 RMD160 7fb78faa7520acc65401a6e15a1b63f2bc63e83a SHA1 2d670ea8eef8d82920b4dac3e89488bfd47108c0 SHA256 984379fd59705c75e888dbb65892571185bf0b682a6b6190055e671a9c6ccdcc
EBUILD chromium-9999-r1.ebuild 15217 RMD160 a593fa6c56feeb298714fd112e48a952435eb2aa SHA1 42bd9d3147a8cc4ebc2e2a09941be25581e14c98 SHA256 296abb38fbc6c8b66d9b27163f4032aa51631ea4b36d5faec04d4f08a4bb934e
-MISC ChangeLog 25836 RMD160 2ca31fd1418561ad347c9a42018c428bbe118119 SHA1 10745809612870d99f4703928fa7fe376bdedcbf SHA256 f5d7384a31561bd68f147747eefe3276f2a58ce191556e70175bdb22d1d43dea
+MISC ChangeLog 26164 RMD160 2183d8ca843d0b3b77f79377c1e089f21f65b5a5 SHA1 288e8d14108c4ee607609000a8890e251d6bec25 SHA256 6f1c035c9fad403f746379abbd3492506a1ea0f91adff7b02f36aeec61e31f9e
MISC ChangeLog-2011 114031 RMD160 819d2187b876e03ba1a5f23369eca56e554bcfe6 SHA1 c449259648a4f2633b8812e7761e8cdeaea7f948 SHA256 e2c2c75785c5eaf78b6efe01e357279cbb7be0c89d00b4053f475e963916fa54
MISC metadata.xml 267 RMD160 3a166415fec415d539c1b7c32ed40b188488b9fb SHA1 5c3d71a9cea27175cbe8c98369b42b79c8643c6c SHA256 4e6afae33f60d6752cacf2785f7f9a396b8711cce605b73d0d752a4af7d01fc8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
-iEYEAREKAAYFAk/TJNkACgkQuUQtlDBCeQL/XwCfcVuZWxFP79Vsugtg86Rikgr/
-FFwAn2+vzxq8v7IWijLFn6pyqfPY618B
-=6yBQ
+iEYEAREKAAYFAk/TNDsACgkQuUQtlDBCeQK8nACfVPRd+L9/bZ4W1hWnuhFOCLso
+ZAIAniTjdjknZxR/QTqThH4PCQPBR+/1
+=9/XR
-----END PGP SIGNATURE-----
diff --git a/www-client/chromium/chromium-19.0.1084.56-r1.ebuild b/www-client/chromium/chromium-19.0.1084.56-r1.ebuild
new file mode 100644
index 000000000000..ea278fd91a78
--- /dev/null
+++ b/www-client/chromium/chromium-19.0.1084.56-r1.ebuild
@@ -0,0 +1,421 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-19.0.1084.56-r1.ebuild,v 1.1 2012/06/09 11:31:59 phajdan.jr Exp $
+
+EAPI="4"
+PYTHON_DEPEND="2:2.6"
+
+CHROMIUM_LANGS="am ar bg bn ca cs da de el en_GB es es_LA et fa fi fil fr gu he
+ 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
+ sv sw ta te th tr uk vi zh_CN zh_TW"
+
+inherit chromium eutils flag-o-matic multilib \
+ pax-utils portability python toolchain-funcs versionator virtualx
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="http://chromium.org/"
+SRC_URI="http://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bindist cups gnome gnome-keyring kerberos pulseaudio"
+
+RDEPEND="app-arch/bzip2
+ cups? (
+ dev-libs/libgcrypt
+ >=net-print/cups-1.3.11
+ )
+ >=dev-lang/v8-3.9.13
+ dev-libs/dbus-glib
+ dev-libs/elfutils
+ >=dev-libs/icu-49.1.1-r1
+ >=dev-libs/libevent-1.4.13
+ dev-libs/libxml2[icu]
+ dev-libs/libxslt
+ >=dev-libs/nss-3.12.3
+ gnome? ( >=gnome-base/gconf-2.24.0 )
+ gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2 )
+ >=media-libs/alsa-lib-1.0.19
+ media-libs/flac
+ >=media-libs/libjpeg-turbo-1.2.0-r1
+ media-libs/libpng
+ >=media-libs/libwebp-0.1.3
+ media-libs/speex
+ pulseaudio? ( media-sound/pulseaudio )
+ sys-fs/udev
+ sys-libs/zlib
+ x11-libs/gtk+:2
+ x11-libs/libXinerama
+ x11-libs/libXScrnSaver
+ x11-libs/libXtst
+ kerberos? ( virtual/krb5 )"
+DEPEND="${RDEPEND}
+ >=dev-lang/nacl-toolchain-newlib-0_p7311
+ dev-lang/perl
+ dev-lang/yasm
+ dev-python/ply
+ dev-python/simplejson
+ >=dev-util/gperf-3.0.3
+ >=sys-devel/bison-2.4.3
+ sys-devel/flex
+ >=sys-devel/make-3.81-r2
+ virtual/pkgconfig
+ test? (
+ dev-python/pyftpdlib
+ )"
+RDEPEND+="
+ !=www-client/chromium-9999
+ x11-misc/xdg-utils
+ virtual/ttf-fonts"
+
+if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
+ EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
+fi
+
+pkg_setup() {
+ if [[ "${SLOT}" == "0" ]]; then
+ CHROMIUM_SUFFIX=""
+ else
+ CHROMIUM_SUFFIX="-${SLOT}"
+ fi
+ CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser${CHROMIUM_SUFFIX}"
+
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX RANLIB
+
+ # Make sure the build system will use the right python, bug #344367.
+ python_set_active_version 2
+ python_pkg_setup
+
+ chromium_suid_sandbox_check_kernel_config
+
+ if use bindist; then
+ elog "bindist enabled: H.264 video support will be disabled."
+ else
+ elog "bindist disabled: Resulting binaries may not be legal to re-distribute."
+ fi
+}
+
+src_prepare() {
+ ln -s /usr/$(get_libdir)/nacl-toolchain-newlib \
+ native_client/toolchain/linux_x86_newlib || die
+
+ # zlib-1.2.5.1-r1 renames the OF macro in zconf.h, bug 383371.
+ sed -i '1i#define OF(x) x' \
+ third_party/zlib/contrib/minizip/{ioapi,{,un}zip}.c \
+ chrome/common/zip*.cc || die
+
+ # Backport upstream fix for Gentoo bug #415601.
+ epatch "${FILESDIR}/${PN}-unistd-r0.patch"
+
+ # Fix build without tcmalloc. To be upstreamed.
+ epatch "${FILESDIR}/${PN}-tcmalloc-r1.patch"
+
+ # Backport a crash fix, bug #420357.
+ epatch "${FILESDIR}/${PN}-alignment-r0.patch"
+
+ epatch_user
+
+ # Remove most bundled libraries. Some are still needed.
+ find third_party -type f \! -iname '*.gyp*' \
+ \! -path 'third_party/WebKit/*' \
+ \! -path 'third_party/adobe/*' \
+ \! -path 'third_party/angle/*' \
+ \! -path 'third_party/cacheinvalidation/*' \
+ \! -path 'third_party/cld/*' \
+ \! -path 'third_party/expat/*' \
+ \! -path 'third_party/ffmpeg/*' \
+ \! -path 'third_party/flac/flac.h' \
+ \! -path 'third_party/gpsd/*' \
+ \! -path 'third_party/harfbuzz/*' \
+ \! -path 'third_party/hunspell/*' \
+ \! -path 'third_party/iccjpeg/*' \
+ \! -path 'third_party/jsoncpp/*' \
+ \! -path 'third_party/json_minify/*' \
+ \! -path 'third_party/khronos/*' \
+ \! -path 'third_party/launchpad_translations/*' \
+ \! -path 'third_party/leveldb/*' \
+ \! -path 'third_party/leveldatabase/*' \
+ \! -path 'third_party/libjingle/*' \
+ \! -path 'third_party/libphonenumber/*' \
+ \! -path 'third_party/libsrtp/*' \
+ \! -path 'third_party/libvpx/*' \
+ \! -path 'third_party/libyuv/*' \
+ \! -path 'third_party/lss/*' \
+ \! -path 'third_party/mesa/*' \
+ \! -path 'third_party/modp_b64/*' \
+ \! -path 'third_party/mongoose/*' \
+ \! -path 'third_party/npapi/*' \
+ \! -path 'third_party/openmax/*' \
+ \! -path 'third_party/ots/*' \
+ \! -path 'third_party/protobuf/*' \
+ \! -path 'third_party/scons-2.0.1/*' \
+ \! -path 'third_party/sfntly/*' \
+ \! -path 'third_party/skia/*' \
+ \! -path 'third_party/smhasher/*' \
+ \! -path 'third_party/speex/speex.h' \
+ \! -path 'third_party/sqlite/*' \
+ \! -path 'third_party/tlslite/*' \
+ \! -path 'third_party/undoview/*' \
+ \! -path 'third_party/v8-i18n/*' \
+ \! -path 'third_party/webdriver/*' \
+ \! -path 'third_party/webgl_conformance/*' \
+ \! -path 'third_party/webrtc/*' \
+ \! -path 'third_party/zlib/contrib/minizip/*' \
+ -delete || die
+
+ local v8_bundled="$(chromium_bundled_v8_version)"
+ local v8_installed="$(chromium_installed_v8_version)"
+ einfo "V8 version: bundled - ${v8_bundled}; installed - ${v8_installed}"
+
+ # Remove bundled v8.
+ find v8 -type f \! -iname '*.gyp*' -delete || die
+
+ # The implementation files include v8 headers with full path,
+ # like #include "v8/include/v8.h". Make sure the system headers
+ # will be used.
+ # TODO: find a solution that can be upstreamed.
+ rmdir v8/include || die
+ ln -s /usr/include v8/include || die
+
+ # Make sure the build system will use the right python, bug #344367.
+ # Only convert directories that need it, to save time.
+ python_convert_shebangs -q -r 2 build tools
+}
+
+src_configure() {
+ local myconf=""
+
+ # Never tell the build system to "enable" SSE2, it has a few unexpected
+ # additions, bug #336871.
+ myconf+=" -Ddisable_sse2=1"
+
+ # Disable tcmalloc, it causes problems with e.g. NVIDIA
+ # drivers, bug #413637.
+ myconf+=" -Dlinux_use_tcmalloc=0"
+
+ # Use system-provided libraries.
+ # TODO: use_system_ffmpeg
+ # TODO: use_system_hunspell (upstream changes needed).
+ # TODO: use_system_ssl (http://crbug.com/58087).
+ # TODO: use_system_sqlite (http://crbug.com/22208).
+ # TODO: use_system_vpx
+ myconf+="
+ -Duse_system_bzip2=1
+ -Duse_system_flac=1
+ -Duse_system_icu=1
+ -Duse_system_libevent=1
+ -Duse_system_libjpeg=1
+ -Duse_system_libpng=1
+ -Duse_system_libwebp=1
+ -Duse_system_libxml=1
+ -Duse_system_speex=1
+ -Duse_system_v8=1
+ -Duse_system_xdg_utils=1
+ -Duse_system_yasm=1
+ -Duse_system_zlib=1"
+
+ # Optional dependencies.
+ # TODO: linux_link_kerberos, bug #381289.
+ myconf+="
+ $(gyp_use cups use_cups)
+ $(gyp_use gnome use_gconf)
+ $(gyp_use gnome-keyring use_gnome_keyring)
+ $(gyp_use gnome-keyring linux_link_gnome_keyring)
+ $(gyp_use kerberos use_kerberos)
+ $(gyp_use pulseaudio use_pulseaudio)"
+
+ # Enable sandbox.
+ myconf+="
+ -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
+ -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
+
+ # Never use bundled gold binary. Disable gold linker flags for now.
+ myconf+="
+ -Dlinux_use_gold_binary=0
+ -Dlinux_use_gold_flags=0"
+
+ if ! use bindist; then
+ # Enable H.624 support in bundled ffmpeg.
+ myconf+=" -Dproprietary_codecs=1 -Dffmpeg_branding=Chrome"
+ fi
+
+ local myarch="$(tc-arch)"
+ if [[ $myarch = amd64 ]] ; then
+ myconf+=" -Dtarget_arch=x64"
+ elif [[ $myarch = x86 ]] ; then
+ myconf+=" -Dtarget_arch=ia32"
+ else
+ die "Failed to determine target arch, got '$myarch'."
+ fi
+
+ # Make sure that -Werror doesn't get added to CFLAGS by the build system.
+ # Depending on GCC version the warnings are different and we don't want
+ # the build to fail because of that.
+ myconf+=" -Dwerror="
+
+ # Avoid CFLAGS problems, bug #352457, bug #390147.
+ if ! use custom-cflags; then
+ replace-flags "-Os" "-O2"
+ strip-flags
+ fi
+
+ egyp_chromium ${myconf} || die
+}
+
+src_compile() {
+ local test_targets
+ for x in base cacheinvalidation crypto \
+ googleurl gpu media net printing; do
+ test_targets+=" ${x}_unittests"
+ done
+
+ local make_targets="chrome chrome_sandbox chromedriver"
+ if use test; then
+ make_targets+=$test_targets
+ fi
+
+ # See bug #410883 for more info about the .host mess.
+ emake ${make_targets} BUILDTYPE=Release V=1 \
+ CC.host="$(tc-getCC)" CFLAGS.host="${CFLAGS}" \
+ CXX.host="$(tc-getCXX)" CXXFLAGS.host="${CXXFLAGS}" \
+ LINK.host="$(tc-getCXX)" LDFLAGS.host="${LDFLAGS}" \
+ AR.host="$(tc-getAR)" || die
+
+ pax-mark m out/Release/chrome
+ if use test; then
+ for x in $test_targets; do
+ pax-mark m out/Release/${x}
+ done
+ fi
+}
+
+src_test() {
+ # For more info see bug #350349.
+ local mylocale='en_US.utf8'
+ if ! locale -a | grep -q "$mylocale"; then
+ eerror "${PN} requires ${mylocale} locale for tests"
+ eerror "Please read the following guides for more information:"
+ eerror " http://www.gentoo.org/doc/en/guide-localization.xml"
+ eerror " http://www.gentoo.org/doc/en/utf-8.xml"
+ die "locale ${mylocale} is not supported"
+ fi
+
+ # For more info see bug #370957.
+ if [[ $UID -eq 0 ]]; then
+ die "Tests must be run as non-root. Please use FEATURES=userpriv."
+ fi
+
+ # ICUStringConversionsTest: bug #350347.
+ # MessagePumpLibeventTest: bug #398501.
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/base_unittests virtualmake \
+ '--gtest_filter=-ICUStringConversionsTest.*:MessagePumpLibeventTest.*'
+
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/cacheinvalidation_unittests virtualmake
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/crypto_unittests virtualmake
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/googleurl_unittests virtualmake
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/gpu_unittests virtualmake
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/media_unittests virtualmake
+
+ # NetUtilTest: bug #361885.
+ # DnsConfigServiceTest.GetSystemConfig: bug #394883.
+ # CertDatabaseNSSTest.ImportServerCert_SelfSigned: bug #399269.
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/net_unittests virtualmake \
+ '--gtest_filter=-NetUtilTest.IDNToUnicode*:NetUtilTest.FormatUrl*:DnsConfigServiceTest.GetSystemConfig:CertDatabaseNSSTest.ImportServerCert_SelfSigned'
+
+ LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/printing_unittests virtualmake
+}
+
+src_install() {
+ exeinto "${CHROMIUM_HOME}"
+ doexe out/Release/chrome || die
+ doexe out/Release/chrome_sandbox || die
+ fperms 4755 "${CHROMIUM_HOME}/chrome_sandbox"
+
+ doexe out/Release/chromedriver || die
+
+ # Install Native Client files on platforms that support it.
+ insinto "${CHROMIUM_HOME}"
+ case "$(tc-arch)" in
+ amd64)
+ doexe out/Release/nacl_helper{,_bootstrap} || die
+ doins out/Release/nacl_irt_x86_64.nexe || die
+ doins out/Release/libppGoogleNaClPluginChrome.so || die
+ ;;
+ x86)
+ doexe out/Release/nacl_helper{,_bootstrap} || die
+ doins out/Release/nacl_irt_x86_32.nexe || die
+ doins out/Release/libppGoogleNaClPluginChrome.so || die
+ ;;
+ esac
+
+ newexe "${FILESDIR}"/chromium-launcher-r2.sh chromium-launcher.sh || die
+ if [[ "${CHROMIUM_SUFFIX}" != "" ]]; then
+ sed "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g" \
+ -i "${ED}"/"${CHROMIUM_HOME}"/chromium-launcher.sh || die
+ sed "s:chromium.desktop:chromium${CHROMIUM_SUFFIX}.desktop:g" \
+ -i "${ED}"/"${CHROMIUM_HOME}"/chromium-launcher.sh || die
+ sed "s:plugins:plugins --user-data-dir=\${HOME}/.config/chromium${CHROMIUM_SUFFIX}:" \
+ -i "${ED}"/"${CHROMIUM_HOME}"/chromium-launcher.sh || die
+ fi
+
+ # It is important that we name the target "chromium-browser",
+ # xdg-utils expect it; bug #355517.
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser${CHROMIUM_SUFFIX} || die
+ # keep the old symlink around for consistency
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium${CHROMIUM_SUFFIX} || die
+
+ # Allow users to override command-line options, bug #357629.
+ dodir /etc/chromium || die
+ insinto /etc/chromium
+ newins "${FILESDIR}/chromium.default" "default" || die
+
+ pushd out/Release/locales > /dev/null || die
+ chromium_remove_language_paks
+ popd
+
+ insinto "${CHROMIUM_HOME}"
+ doins out/Release/chrome.pak || die
+ doins out/Release/resources.pak || die
+
+ doins -r out/Release/locales || die
+ doins -r out/Release/resources || die
+
+ newman out/Release/chrome.1 chromium${CHROMIUM_SUFFIX}.1 || die
+ newman out/Release/chrome.1 chromium-browser${CHROMIUM_SUFFIX}.1 || die
+
+ # Chromium looks for these in its folder
+ # See media_posix.cc and base_paths_linux.cc
+ # dosym /usr/$(get_libdir)/libavcodec.so.52 "${CHROMIUM_HOME}" || die
+ # dosym /usr/$(get_libdir)/libavformat.so.52 "${CHROMIUM_HOME}" || die
+ # dosym /usr/$(get_libdir)/libavutil.so.50 "${CHROMIUM_HOME}" || die
+ doexe out/Release/libffmpegsumo.so || die
+
+ # Install icons and desktop entry.
+ for SIZE in 16 22 24 32 48 64 128 256 ; do
+ insinto /usr/share/icons/hicolor/${SIZE}x${SIZE}/apps
+ newins chrome/app/theme/chromium/product_logo_${SIZE}.png \
+ chromium-browser${CHROMIUM_SUFFIX}.png || die
+ done
+ local mime_types="text/html;text/xml;application/xhtml+xml;"
+ mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
+ make_desktop_entry \
+ chromium-browser${CHROMIUM_SUFFIX} \
+ "Chromium${CHROMIUM_SUFFIX}" \
+ chromium-browser${CHROMIUM_SUFFIX} \
+ "Network;WebBrowser" \
+ "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
+ sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
+
+ # Install GNOME default application entry (bug #303100).
+ if use gnome; then
+ dodir /usr/share/gnome-control-center/default-apps || die
+ insinto /usr/share/gnome-control-center/default-apps
+ newins "${FILESDIR}"/chromium-browser.xml chromium-browser${CHROMIUM_SUFFIX}.xml || die
+ if [[ "${CHROMIUM_SUFFIX}" != "" ]]; then
+ sed "s:chromium-browser:chromium-browser${CHROMIUM_SUFFIX}:g" -i \
+ "${ED}"/usr/share/gnome-control-center/default-apps/chromium-browser${CHROMIUM_SUFFIX}.xml
+ fi
+ fi
+}
diff --git a/www-client/chromium/chromium-20.0.1132.21.ebuild b/www-client/chromium/chromium-20.0.1132.27-r1.ebuild
index 59319636986c..5adf14bef677 100644
--- a/www-client/chromium/chromium-20.0.1132.21.ebuild
+++ b/www-client/chromium/chromium-20.0.1132.27-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-20.0.1132.21.ebuild,v 1.2 2012/06/09 10:26:17 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-20.0.1132.27-r1.ebuild,v 1.1 2012/06/09 11:31:59 phajdan.jr Exp $
EAPI="4"
PYTHON_DEPEND="2:2.6"
@@ -89,7 +89,7 @@ pkg_setup() {
python_set_active_version 2
python_pkg_setup
- chromium_check_kernel_config
+ chromium_suid_sandbox_check_kernel_config
if use bindist; then
elog "bindist enabled: H.264 video support will be disabled."
@@ -115,6 +115,9 @@ src_prepare() {
# Fix build without tcmalloc. To be upstreamed.
epatch "${FILESDIR}/${PN}-tcmalloc-r0.patch"
+ # Backport a crash fix, bug #420357.
+ epatch "${FILESDIR}/${PN}-alignment-r0.patch"
+
epatch_user
# Remove most bundled libraries. Some are still needed.
diff --git a/www-client/chromium/files/chromium-alignment-r0.patch b/www-client/chromium/files/chromium-alignment-r0.patch
new file mode 100644
index 000000000000..56b0a8fa99c6
--- /dev/null
+++ b/www-client/chromium/files/chromium-alignment-r0.patch
@@ -0,0 +1,15 @@
+Index: third_party/WebKit/Source/WebCore/platform/audio/AudioArray.h
+===================================================================
+--- third_party/WebKit/Source/WebCore/platform/audio/AudioArray.h (revision 105431)
++++ third_party/WebKit/Source/WebCore/platform/audio/AudioArray.h (revision 118455)
+@@ -61,6 +61,9 @@
+ unsigned initialSize = sizeof(T) * n;
+
+- // 16-byte alignment for 128bit SIMD.
++#if USE(WEBAUDIO_FFMPEG)
++ const size_t alignment = 32;
++#else
+ const size_t alignment = 16;
++#endif
+
+ if (m_allocation)