Version bump for dev channel release. Fixes bug #375759 by Mathieu Zhang, bug #375827...
authorPaweł Hajdan <phajdan.jr@gentoo.org>
Thu, 4 Aug 2011 21:21:41 +0000 (21:21 +0000)
committerPaweł Hajdan <phajdan.jr@gentoo.org>
Thu, 4 Aug 2011 21:21:41 +0000 (21:21 +0000)
Package-Manager: portage-2.1.10.3/cvs/Linux i686

www-client/chromium/ChangeLog
www-client/chromium/Manifest
www-client/chromium/chromium-14.0.835.15.ebuild [new file with mode: 0644]
www-client/chromium/chromium-9999-r1.ebuild
www-client/chromium/files/chromium-system-libevent-r0.patch [new file with mode: 0644]

index de2c6df313f61df03222370ab39b55addaefe75d..e1547415fb66616d56b58604b7cb6323e4c8e910 100644 (file)
@@ -1,6 +1,16 @@
 # ChangeLog for www-client/chromium
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.407 2011/08/04 14:51:41 hwoarang Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.408 2011/08/04 21:21:41 phajdan.jr Exp $
+
+*chromium-14.0.835.15 (04 Aug 2011)
+
+  04 Aug 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+  +files/chromium-system-libevent-r0.patch, +chromium-14.0.835.15.ebuild,
+  chromium-9999-r1.ebuild:
+  Version bump for dev channel release. Fixes bug #375759 by Mathieu Zhang, bug
+  #375827 by fkhp, bug #376301 by Julien Sanchez, bug #376499 by Mike Gilbert,
+  bug #376501 by Mike Gilbert. We're using bundled ffmpeg and libvpx again, and
+  NaCl is disabled temporarily.
 
   04 Aug 2011; Markos Chandras <hwoarang@gentoo.org>
   chromium-13.0.782.107.ebuild:
index 076b0893a370e5466892d1c882de7afdf339629f..06682785590c5c7718b1804b0511f31ad9f72ca0 100644 (file)
@@ -10,6 +10,7 @@ AUX chromium-launcher-r1.sh 680 RMD160 17fdc3576819c41d9320fab4b2dde3b8dc3c251b
 AUX chromium-launcher-r2.sh 940 RMD160 7a64e597998a8f95a7e3d1c26377842ff8106f89 SHA1 9630a36af707a810cbd646f3bac5deba984439f6 SHA256 842e121bbfa33513ca964744f0ba8401401946e672cd6a0a95bc80a28212e87e
 AUX chromium-libgcrypt-r0.patch 436 RMD160 855ecc89bd61f95378dc5aa5726b48cac7ede92c SHA1 3346e667a6581f7f62020ebc16fbf608c3a47cb6 SHA256 a81c598f544278a5638f3707db8a2fab85173e93b9a3ff097648babe58b665b0
 AUX chromium-perl-5.14-r0.patch 1062 RMD160 3e3205f298ae15bfc886160611508da975764edc SHA1 c23076b04b1a1f12c31cd203077c3c93e407840f SHA256 3e4f19cfd21a6f5526bb7fd2e7ecf6f78f55d2b9f5536ec926b78d44f7765975
+AUX chromium-system-libevent-r0.patch 404 RMD160 0dc32cfbd0770e4be1b6f9d3cf8ac08987a5992d SHA1 f6127a903eeb4ce13a4f8fc75dda0102e68d759a SHA256 127945ad45ede0e2aefbc28d8d5eb241675abb83f3aedc2569133e437f98a841
 AUX chromium-system-vpx-r3.patch 1168 RMD160 3f59b6dfff335be21b55de70ccd9a77b008f5cd0 SHA1 09d1d4a6b0b031839d002abc62ec4efef6faef71 SHA256 c46f61559bdbd7e29bb47607f0b152647f73e2cc3e836f53c67bb2925e8957d7
 AUX chromium-system-vpx-r4.patch 476 RMD160 ff7feff7dff9de28bdc4c80b43c9574d7769a288 SHA1 b87516b0dac8f65431fdce86f26a3c92cfc313af SHA256 6bf0801a8d4ff208f558fa5740adfbed6178d391314297c80e0c3a058910a10e
 AUX chromium-system-zlib-r0.patch 1318 RMD160 2debfc4f179a57119d5022305134307f4cbbe04d SHA1 036e7573b04046ee0275abcb99a7e7a8b490e47b SHA256 79668fbf6206cd958db328798298a0514d3a95683b41affd3a607a0ac95453e3
@@ -20,28 +21,20 @@ DIST chromium-12.0.742.112.tar.bz2 151384207 RMD160 13d9092d79a324852b60e4297921
 DIST chromium-13.0.782.107.tar.bz2 155319932 RMD160 30b592cb0db7128673682eb9d5bb0bc9bc4b83e8 SHA1 e4b6f33799dc92ea9145afa099d74cfe8f0de481 SHA256 4dcccc29d4da6eb154c2d419ff8637ee190203e15cc85051294f06ac3db9fa04
 DIST chromium-13.0.782.99.tar.bz2 155452601 RMD160 d562f6d222f8388aed111a0dbeb21375ce50d3d9 SHA1 fac87212b805ef343f398ffcf0bbf93108390d2b SHA256 5bceb6c7dce28573be6e1967e37cc8fc27fc83ff63b15e75680931d3d683fcdc
 DIST chromium-14.0.825.0.tar.bz2 202446439 RMD160 7ddecf1714910e2780a683e547ac409cf65bb7ff SHA1 998488b13966be72764442509d915613bb4949d8 SHA256 d4e12b545cb52ec9074a9278eb7e9fbd35f1460b4a5fcd1443616e5dfea12269
+DIST chromium-14.0.835.15.tar.bz2 160030122 RMD160 580b75168420a837c3b03dd6c02bad4d7514583b SHA1 bdc6da9bc3327b61d18e65c940630976adb51d78 SHA256 bb2ddc904474c37ed9d033c000c3f6fc9a80442dbd464aef9b4a5647a0e817c5
 EBUILD chromium-12.0.742.112.ebuild 12047 RMD160 ab3c47a41ff2d69f7d53eab715c9151ed848ea1d SHA1 37012697cc4a0f29558614ebd5aadf476781ee37 SHA256 ebf99c4485e6e19eeeca8fcfefe5de7864497c1d6a3d4fb6c40076bfa9beee33
 EBUILD chromium-13.0.782.107.ebuild 13205 RMD160 240b7b4a96e9626897b267d755858fea6bbb41fb SHA1 cf1d8bae483997a42490abf9d716d71852a7a817 SHA256 63284a4f6be456c4e9ae80b0ad6e92d3dce61d2a7bb040c2edcf1e48e24032b3
 EBUILD chromium-13.0.782.99.ebuild 13207 RMD160 33a552ca00fb8b89cb6310b3d346075c245b36ed SHA1 1188c073bf1b9b08d74e459b4bb86417a36b45ad SHA256 ad47c1c427dab5941a1c60d20354cfe795da377313619448784b449b835f185f
 EBUILD chromium-14.0.825.0-r1.ebuild 12956 RMD160 6f362ecdcc62cd1bfaac1fb669aad0aa58753263 SHA1 89eda9a0db738d2b4af22f7f299db2ba8ce3bf33 SHA256 aa73336d33777a800be609466595da3ab6b780f03e77ed562e06c8958a263198
 EBUILD chromium-14.0.825.0.ebuild 13091 RMD160 e7da0ddcdaff742120952b44987bd2d551f43735 SHA1 64b2dd14c219a878ebef2ea64f9a18d744fae89e SHA256 443dfc6227d6811936c1dbe380ec13f508fe97815685d461426832e68f516c2e
-EBUILD chromium-9999-r1.ebuild 14895 RMD160 1d3ca187a74852a4fc2288455243574dd8de736a SHA1 7ed63bc76a5dd5309721dd136105000107c9b8fd SHA256 36ddc7ed3ae091d224fbd581124edc9f0a83fb7b1e414c1da6744ddb1cdd00e1
-MISC ChangeLog 90437 RMD160 8f6accf9e7bd72da337b7783b20100878e416768 SHA1 6c2aa3d97d59086824d62d215d71c3442888a13b SHA256 8d55e3f5922a1954799a2211124cfccdbb848474ef54ccfe4c1660ee5fad3e4f
+EBUILD chromium-14.0.835.15.ebuild 13066 RMD160 824e3a87ea50d2eed832bd100559993b98b29026 SHA1 a1a1b51cd5721c0fcc7dd6e019cf2797d1572a8b SHA256 7f75169d7a09554c271c8a7c3f1bbfe073b2cb3c5b2b32a0b0b3b5a82efc80af
+EBUILD chromium-9999-r1.ebuild 14993 RMD160 be0ab3ea6639ddc92afc06c612b8ca9be3fcf1e6 SHA1 879a989b8c5157a66eb655df09090fa0e4452d6b SHA256 0126c6af7ed4b707c5f40296f62752cba99512a257045608a98241e454f7aa46
+MISC ChangeLog 90904 RMD160 7c9a67adabdcd6ae6ad4b7b793c7da654adc427a SHA1 98b42728f04c4eecfff4e871e0381da8db58f199 SHA256 5e900e2a737150cb2824bc3ac0cd26fe9674e5f5abd7e31996809fd835a8762d
 MISC metadata.xml 267 RMD160 3a166415fec415d539c1b7c32ed40b188488b9fb SHA1 5c3d71a9cea27175cbe8c98369b42b79c8643c6c SHA256 4e6afae33f60d6752cacf2785f7f9a396b8711cce605b73d0d752a4af7d01fc8
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.17 (GNU/Linux)
 
-iQIcBAEBCgAGBQJOOrHrAAoJEPqDWhW0r/LCquUP/3bPOiFvM74YTdOYjnYphRe7
-+3a749PXO8ul1CftNWicX6H2AKApEtk9cyQ3N1dmorBp2xZqvDfck/4x7UrWobng
-KWDkMkxZ3+MOvKjbBjSLbhykOyjYDTFGTYWH+RzdVSpXgQ/aQPjBQMwkbcPQlcvM
-beMUA8U1XPChuwOdSgvJPgf2cJ22jMiwFIxq1Y0IVumZqCpk1Ye37GmPpipZYAQq
-xjKytRpM8mqfE9bbh5ZxyEoI7YzmxrhiKnKXwT1PDIOLnd71ZV5HSqWOssG+QjgC
-tLFqSzN1xkMW1Z3Gfkzi39U3uqNofqUb24c+AUNuLTisDOiiYFbEtOtI/rrBnA6b
-STM3jSpbodB26tkJ3gPQ2Q9f8hJWcSY1IpweVssT2ULNYhAag8bAk6X56OVpYBFt
-p9BRCkjFru6pi/Tx6oD4fvRD5v3OqqPFyCX+R7R6WSRLwp6HrBRiwtzeHfWTNPUq
-JRZQ7seqAkINlMzW3Cd6MgEl3W7ng4dEbNWVVi8LjPl0YkeQSjO/rAI5CZ69J6+i
-1MMNFzOi4kCf49xRtdWP+pWjn0KzkohYTPtSPOblFdktb6+RPTY75ir9lnMVCqie
-bgFyl8oib8TuRc+Nke22rekGt16avPdd8tpsL2obWgzXIDJ9veOWJwitUnIY2ya8
-BTJgbzVSL0luSVgHS1vE
-=jK6b
+iEYEAREKAAYFAk47DXIACgkQuUQtlDBCeQJT9gCfeBXZ2TYJ+Z/lnDfWybS1iynD
+Ck4AniW2/6GWBBtYOxxs+7B5E6OFJKWL
+=dlaR
 -----END PGP SIGNATURE-----
diff --git a/www-client/chromium/chromium-14.0.835.15.ebuild b/www-client/chromium/chromium-14.0.835.15.ebuild
new file mode 100644 (file)
index 0000000..6e698d0
--- /dev/null
@@ -0,0 +1,425 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-14.0.835.15.ebuild,v 1.1 2011/08/04 21:21:41 phajdan.jr Exp $
+
+EAPI="3"
+PYTHON_DEPEND="2:2.6"
+
+inherit eutils fdo-mime flag-o-matic gnome2-utils linux-info 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://build.chromium.org/official/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cups gnome gnome-keyring kerberos"
+
+# en_US is ommitted on purpose from the list below. It must always be available.
+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 nb nl pl pt_BR pt_PT ro ru sk sl sr sv sw ta te th
+tr uk vi zh_CN zh_TW"
+for lang in ${LANGS}; do
+       IUSE+=" linguas_${lang}"
+done
+
+RDEPEND="app-arch/bzip2
+       dev-libs/dbus-glib
+       >=dev-libs/icu-4.4.1
+       >=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
+       virtual/jpeg
+       media-libs/libpng
+       >=media-libs/libwebp-0.1.2
+       media-libs/speex
+       media-sound/pulseaudio
+       cups? ( >=net-print/cups-1.3.11 )
+       sys-libs/zlib
+       x11-libs/gtk+:2
+       x11-libs/libXinerama
+       x11-libs/libXScrnSaver
+       x11-libs/libXtst"
+DEPEND="${RDEPEND}
+       dev-lang/perl
+       >=dev-util/gperf-3.0.3
+       >=dev-util/pkgconfig-0.23
+       >=sys-devel/bison-2.4.3
+       sys-devel/flex
+       >=sys-devel/make-3.81-r2
+       test? (
+               dev-python/pyftpdlib
+               dev-python/simplejson
+               virtual/krb5
+       )"
+RDEPEND+="
+       kerberos? ( virtual/krb5 )
+       x11-misc/xdg-utils
+       virtual/ttf-fonts"
+
+gyp_use() {
+       if [[ $# -lt 2 ]]; then
+               echo "!!! usage: gyp_use <USEFLAG> <GYPFLAG>" >&2
+               return 1
+       fi
+       if use "$1"; then echo "-D$2=1"; else echo "-D$2=0"; fi
+}
+
+egyp() {
+       set -- build/gyp_chromium --depth=. "${@}"
+       echo "${@}" >&2
+       "${@}"
+}
+
+# Chromium uses different names for some langs,
+# return Chromium name corresponding to a Gentoo lang.
+chromium_lang() {
+       if [[ "$1" == "es_LA" ]]; then
+               echo "es_419"
+       else
+               echo "$1"
+       fi
+}
+
+pkg_setup() {
+       CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
+
+       # 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
+
+       # Prevent user problems like bug #348235.
+       eshopts_push -s extglob
+       if is-flagq '-g?(gdb)?([1-9])'; then
+               ewarn "You have enabled debug info (probably have -g or -ggdb in your \$C{,XX}FLAGS)."
+               ewarn "You may experience really long compilation times and/or increased memory usage."
+               ewarn "If compilation fails, please try removing -g{,gdb} before reporting a bug."
+       fi
+       eshopts_pop
+
+       # Warn if the kernel doesn't support features useful for sandboxing,
+       # bug #363907.
+       CONFIG_CHECK="~PID_NS ~NET_NS"
+       check_extra_config
+}
+
+src_prepare() {
+       # bug #374903 - ICU 4.8 compatibility
+       epatch "${FILESDIR}/${PN}-icu-compatibility-r0.patch"
+
+       # Fix build with system libevent, to be upstreamed.
+       epatch "${FILESDIR}/${PN}-system-libevent-r0.patch"
+
+       # Remove most bundled libraries. Some are still needed.
+       find third_party -type f \! -iname '*.gyp*' \
+               \! -path 'third_party/WebKit/*' \
+               \! -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/launchpad_translations/*' \
+               \! -path 'third_party/leveldb/*' \
+               \! -path 'third_party/libjingle/*' \
+               \! -path 'third_party/libphonenumber/*' \
+               \! -path 'third_party/libvpx/*' \
+               \! -path 'third_party/mesa/*' \
+               \! -path 'third_party/modp_b64/*' \
+               \! -path 'third_party/npapi/*' \
+               \! -path 'third_party/openmax/*' \
+               \! -path 'third_party/ots/*' \
+               \! -path 'third_party/protobuf/*' \
+               \! -path 'third_party/sfntly/*' \
+               \! -path 'third_party/skia/*' \
+               \! -path 'third_party/speex/speex.h' \
+               \! -path 'third_party/sqlite/*' \
+               \! -path 'third_party/tcmalloc/*' \
+               \! -path 'third_party/tlslite/*' \
+               \! -path 'third_party/undoview/*' \
+               \! -path 'third_party/webgl_conformance/*' \
+               \! -path 'third_party/webrtc/*' \
+               \! -path 'third_party/yasm/*' \
+               \! -path 'third_party/zlib/contrib/minizip/*' \
+               -delete || 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 NaCl temporarily, this tarball doesn't have IRT.
+       myconf+=" -Ddisable_nacl=1"
+
+       # 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_xdg_utils=1
+               -Duse_system_zlib=1"
+
+       # Optional dependencies.
+       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)"
+
+       # Enable sandbox.
+       myconf+="
+               -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
+               -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
+
+       if host-is-pax; then
+               # Prevent the build from failing (bug #301880). The performance
+               # difference is very small.
+               myconf+=" -Dv8_use_snapshot=0"
+       fi
+
+       # Our system ffmpeg should support more codecs than the bundled one
+       # for Chromium.
+       # myconf+=" -Dproprietary_codecs=1"
+
+       local myarch="$(tc-arch)"
+       if [[ $myarch = amd64 ]] ; then
+               myconf+=" -Dtarget_arch=x64"
+       elif [[ $myarch = x86 ]] ; then
+               myconf+=" -Dtarget_arch=ia32"
+       elif [[ $myarch = arm ]] ; then
+               # TODO: check this again after
+               # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
+               append-flags -fno-tree-sink
+
+               myconf+=" -Dtarget_arch=arm -Ddisable_nacl=1 -Dlinux_use_tcmalloc=0"
+       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 a build error with -Os, bug #352457.
+       replace-flags "-Os" "-O2"
+
+       egyp ${myconf} || die
+}
+
+src_compile() {
+       emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die
+       pax-mark m out/Release/chrome
+       if use test; then
+               emake {base,crypto,googleurl,net}_unittests BUILDTYPE=Release V=1 || die
+               pax-mark m out/Release/{base,crypto,googleurl,net}_unittests
+       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
+
+       # For more info see bug #350347.
+       LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/base_unittests virtualmake \
+               '--gtest_filter=-ICUStringConversionsTest.*'
+
+       LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/crypto_unittests virtualmake
+       LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/googleurl_unittests virtualmake
+
+       # NetUtilTest: bug #361885.
+       # UDP: unstable, active development. We should revisit this later.
+       LC_ALL="${mylocale}" VIRTUALX_COMMAND=out/Release/net_unittests virtualmake \
+               '--gtest_filter=-NetUtilTest.IDNToUnicode*:NetUtilTest.FormatUrl*:*UDP*'
+}
+
+src_install() {
+       exeinto "${CHROMIUM_HOME}"
+       doexe out/Release/chrome
+       doexe out/Release/chrome_sandbox || die
+       fperms 4755 "${CHROMIUM_HOME}/chrome_sandbox"
+
+       # Install Native Client files on platforms that support it.
+       # insinto "${CHROMIUM_HOME}"
+       # case "$(tc-arch)" in
+       #       amd64)
+       #               doins native_client/irt_binaries/nacl_irt_x86_64.nexe || die
+       #               doins out/Release/libppGoogleNaClPluginChrome.so || die
+       #       ;;
+       #       x86)
+       #               doins native_client/irt_binaries/nacl_irt_x86_32.nexe || die
+       #               doins out/Release/libppGoogleNaClPluginChrome.so || die
+       #       ;;
+       # esac
+
+       newexe "${FILESDIR}"/chromium-launcher-r2.sh chromium-launcher.sh || die
+
+       # 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 || die
+       # keep the old symlink around for consistency
+       dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium || die
+
+       # Allow users to override command-line options, bug #357629.
+       dodir /etc/chromium || die
+       insinto /etc/chromium
+       newins "${FILESDIR}/chromium.default" "default" || die
+
+       # Support LINGUAS, bug #332751.
+       local pak
+       for pak in out/Release/locales/*.pak; do
+               local pakbasename="$(basename ${pak})"
+               local pakname="${pakbasename%.pak}"
+               local langname="${pakname//-/_}"
+
+               # Do not issue warning for en_US locale. This is the fallback
+               # locale so it should always be installed.
+               if [[ "${langname}" == "en_US" ]]; then
+                       continue
+               fi
+
+               local found=false
+               local lang
+               for lang in ${LANGS}; do
+                       local crlang="$(chromium_lang ${lang})"
+                       if [[ "${langname}" == "${crlang}" ]]; then
+                               found=true
+                               break
+                       fi
+               done
+               if ! $found; then
+                       ewarn "LINGUAS warning: no ${langname} in LANGS"
+               fi
+       done
+       local lang
+       for lang in ${LANGS}; do
+               local crlang="$(chromium_lang ${lang})"
+               local pakfile="out/Release/locales/${crlang//_/-}.pak"
+               if [ ! -f "${pakfile}" ]; then
+                       ewarn "LINGUAS warning: no .pak file for ${lang} (${pakfile} not found)"
+               fi
+               if ! use linguas_${lang}; then
+                       rm "${pakfile}" || die
+               fi
+       done
+
+       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.1 || die
+       newman out/Release/chrome.1 chromium-browser.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/ffmpegsumo_nolink || 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.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" chromium-browser \
+               "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
+               doins "${FILESDIR}"/chromium-browser.xml || die
+       fi
+}
+
+pkg_preinst() {
+       gnome2_icon_savelist
+}
+
+pkg_postinst() {
+       fdo-mime_desktop_database_update
+       gnome2_icon_cache_update
+
+       # For more info see bug #292201, bug #352263, bug #361859.
+       elog
+       elog "Depending on your desktop environment, you may need"
+       elog "to install additional packages to get icons on the Downloads page."
+       elog
+       elog "For KDE, the required package is kde-base/oxygen-icons."
+       elog
+       elog "For other desktop environments, try one of the following:"
+       elog " - x11-themes/gnome-icon-theme"
+       elog " - x11-themes/tango-icon-theme"
+
+       # For more info see bug #359153.
+       elog
+       elog "Some web pages may require additional fonts to display properly."
+       elog "Try installing some of the following packages if some characters"
+       elog "are not displayed properly:"
+       elog " - media-fonts/arphicfonts"
+       elog " - media-fonts/bitstream-cyberbit"
+       elog " - media-fonts/droid"
+       elog " - media-fonts/ipamonafont"
+       elog " - media-fonts/ja-ipafonts"
+       elog " - media-fonts/takao-fonts"
+       elog " - media-fonts/wqy-microhei"
+       elog " - media-fonts/wqy-zenhei"
+}
+
+pkg_postrm() {
+       gnome2_icon_cache_update
+}
index 854f08bf68d11278241393e06b91ff64a268aa61..3c9bc3de74c16dfe07217a82bf2b97d2e2c7dad9 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999-r1.ebuild,v 1.39 2011/07/20 21:39:37 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999-r1.ebuild,v 1.40 2011/08/04 21:21:41 phajdan.jr Exp $
 
 EAPI="3"
 PYTHON_DEPEND="2:2.6"
@@ -39,12 +39,11 @@ RDEPEND="app-arch/bzip2
        media-libs/flac
        virtual/jpeg
        media-libs/libpng
-       >=media-libs/libvpx-0.9.5
        >=media-libs/libwebp-0.1.2
        media-libs/speex
+       media-sound/pulseaudio
        cups? ( >=net-print/cups-1.3.11 )
        sys-libs/zlib
-       >=virtual/ffmpeg-0.6.90[threads]
        x11-libs/gtk+:2
        x11-libs/libXinerama
        x11-libs/libXScrnSaver
@@ -144,9 +143,6 @@ pkg_setup() {
 }
 
 src_prepare() {
-       # Make sure we don't use bundled libvpx headers.
-       epatch "${FILESDIR}/${PN}-system-vpx-r4.patch"
-
        # Remove most bundled libraries. Some are still needed.
        find third_party -type f \! -iname '*.gyp*' \
                \! -path 'third_party/WebKit/*' \
@@ -164,20 +160,23 @@ src_prepare() {
                \! -path 'third_party/leveldb/*' \
                \! -path 'third_party/libjingle/*' \
                \! -path 'third_party/libphonenumber/*' \
-               \! -path 'third_party/libvpx/libvpx.h' \
+               \! -path 'third_party/libvpx/*' \
                \! -path 'third_party/mesa/*' \
                \! -path 'third_party/modp_b64/*' \
                \! -path 'third_party/npapi/*' \
                \! -path 'third_party/openmax/*' \
                \! -path 'third_party/ots/*' \
                \! -path 'third_party/protobuf/*' \
+               \! -path 'third_party/sfntly/*' \
                \! -path 'third_party/skia/*' \
                \! -path 'third_party/speex/speex.h' \
                \! -path 'third_party/sqlite/*' \
                \! -path 'third_party/tcmalloc/*' \
                \! -path 'third_party/tlslite/*' \
                \! -path 'third_party/undoview/*' \
+               \! -path 'third_party/webgl_conformance/*' \
                \! -path 'third_party/webrtc/*' \
+               \! -path 'third_party/yasm/*' \
                \! -path 'third_party/zlib/contrib/minizip/*' \
                -delete || die
 
@@ -193,13 +192,17 @@ src_configure() {
        # additions, bug #336871.
        myconf+=" -Ddisable_sse2=1"
 
+       # Disable NaCl temporarily, this tarball doesn't have IRT.
+       myconf+=" -Ddisable_nacl=1"
+
        # 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_ffmpeg=1
                -Duse_system_flac=1
                -Duse_system_icu=1
                -Duse_system_libevent=1
@@ -208,7 +211,6 @@ src_configure() {
                -Duse_system_libwebp=1
                -Duse_system_libxml=1
                -Duse_system_speex=1
-               -Duse_system_vpx=1
                -Duse_system_xdg_utils=1
                -Duse_system_zlib=1"
 
@@ -232,7 +234,7 @@ src_configure() {
 
        # Our system ffmpeg should support more codecs than the bundled one
        # for Chromium.
-       myconf+=" -Dproprietary_codecs=1"
+       # myconf+=" -Dproprietary_codecs=1"
 
        local myarch="$(tc-arch)"
        if [[ $myarch = amd64 ]] ; then
@@ -305,17 +307,17 @@ src_install() {
        fperms 4755 "${CHROMIUM_HOME}/chrome_sandbox"
 
        # Install Native Client files on platforms that support it.
-       insinto "${CHROMIUM_HOME}"
-       case "$(tc-arch)" in
-               amd64)
-                       doins native_client/irt_binaries/nacl_irt_x86_64.nexe || die
-                       doins out/Release/libppGoogleNaClPluginChrome.so || die
-               ;;
-               x86)
-                       doins native_client/irt_binaries/nacl_irt_x86_32.nexe || die
-                       doins out/Release/libppGoogleNaClPluginChrome.so || die
-               ;;
-       esac
+       # insinto "${CHROMIUM_HOME}"
+       # case "$(tc-arch)" in
+       #       amd64)
+       #               doins native_client/irt_binaries/nacl_irt_x86_64.nexe || die
+       #               doins out/Release/libppGoogleNaClPluginChrome.so || die
+       #       ;;
+       #       x86)
+       #               doins native_client/irt_binaries/nacl_irt_x86_32.nexe || die
+       #               doins out/Release/libppGoogleNaClPluginChrome.so || die
+       #       ;;
+       # esac
 
        newexe "${FILESDIR}"/chromium-launcher-r2.sh chromium-launcher.sh || die
        sed "s:chromium-browser:chromium-browser${SUFFIX}:g" \
@@ -386,11 +388,11 @@ src_install() {
 
        # 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/ffmpegsumo_nolink || die
-       #doexe out/Release/libffmpegsumo.so || die
+       # 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/ffmpegsumo_nolink || die
+       doexe out/Release/libffmpegsumo.so || die
 
        # Install icons and desktop entry.
        for SIZE in 16 22 24 32 48 64 128 256 ; do
diff --git a/www-client/chromium/files/chromium-system-libevent-r0.patch b/www-client/chromium/files/chromium-system-libevent-r0.patch
new file mode 100644 (file)
index 0000000..fa9833d
--- /dev/null
@@ -0,0 +1,12 @@
+--- base/base.gyp.orig 2011-08-04 18:25:17.000000000 +0200
++++ base/base.gyp      2011-08-04 18:25:24.000000000 +0200
+@@ -283,6 +283,9 @@
+             'message_pump_libevent_unittest.cc',
+           ],
+         }, {  # OS != "win"
++          'dependencies': [
++            '../third_party/libevent/libevent.gyp:libevent'
++          ],
+           'sources/': [
+             ['exclude', '^win/'],
+           ],