Revert WebKit changeset responsible for Gentoo bug #393471 (bug reported by floppym...
authorPaweł Hajdan <phajdan.jr@gentoo.org>
Wed, 28 Dec 2011 19:01:34 +0000 (19:01 +0000)
committerPaweł Hajdan <phajdan.jr@gentoo.org>
Wed, 28 Dec 2011 19:01:34 +0000 (19:01 +0000)
Package-Manager: portage-2.1.10.41/cvs/Linux i686

www-client/chromium/ChangeLog
www-client/chromium/Manifest
www-client/chromium/chromium-17.0.942.0.ebuild [deleted file]
www-client/chromium/chromium-17.0.963.12-r1.ebuild [moved from www-client/chromium/chromium-17.0.963.6.ebuild with 98% similarity]
www-client/chromium/files/chromium-revert-jpeg-swizzle-r0.patch [new file with mode: 0644]

index 22477acefc855b4a6833b87dd3e33c109cc3bf80..22a788efaccabe9252933acb07a9a359c08ae4ea 100644 (file)
@@ -1,6 +1,15 @@
 # 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.525 2011/12/17 20:39:04 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.526 2011/12/28 19:01:34 phajdan.jr Exp $
+
+*chromium-17.0.963.12-r1 (28 Dec 2011)
+
+  28 Dec 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+  +files/chromium-revert-jpeg-swizzle-r0.patch, -chromium-17.0.942.0.ebuild,
+  -chromium-17.0.963.6.ebuild, +chromium-17.0.963.12-r1.ebuild:
+  Revert WebKit changeset responsible for Gentoo bug #393471 (bug reported by
+  floppym, useful input by Julien Sanchez, Dan, Siarhei Siamashka, and
+  excellent comments by DRC, the developer of libjpeg-turbo). Remove old.
 
   17 Dec 2011; Mike Gilbert <floppym@gentoo.org> -chromium-15.0.874.121.ebuild,
   -chromium-16.0.912.59.ebuild:
index 04a8694c1139b77a82c9797daf0ea6e56937b0d4..d772bc01aeacdb842158abefd01706c0362fff27 100644 (file)
@@ -1,31 +1,29 @@
 -----BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA256
+Hash: SHA512
 
 AUX chromium-browser.xml 407 RMD160 457374ff72561648d9777ffb3270ad10d864a6be SHA1 65543bfff7d0350d40ba258e61061b0c5579e1f2 SHA256 bc039012f8677468e9ce5df825f9d8096be6deb5813031c86a087c88105096ff
 AUX chromium-cups-r0.patch 726 RMD160 f3193ce9f987b6e5ad05a67d090ab4f9e1cb7b41 SHA1 8efd3479977e89429237d49fefbfcc63d250089e SHA256 800a669839ca7e033bb360b0cd9db92dde93505609c0b9184bf3901d2ec1535b
 AUX chromium-icu-compatibility-r0.patch 1659 RMD160 5d1fcc18d27b96f0c1b4f14b24dd8ab40ce917ca SHA1 517155769d0f421a4a81bffbcac39d17fa099956 SHA256 f70d99472d56e0aa7398b5638412d440d22943eb2c5962957f973e90992fdc99
 AUX chromium-kerberos-r0.patch 944 RMD160 25fccaa4406b1f964d72c94fd414a9955fc69ddd SHA1 b8b8f2cf6df1bade7af45d8f24b65acc602e781f SHA256 75b75f241675178dff914e0ddacc910a2583b2e2077e805f3ea1b2eed8513e21
 AUX chromium-launcher-r2.sh 940 RMD160 7a64e597998a8f95a7e3d1c26377842ff8106f89 SHA1 9630a36af707a810cbd646f3bac5deba984439f6 SHA256 842e121bbfa33513ca964744f0ba8401401946e672cd6a0a95bc80a28212e87e
+AUX chromium-revert-jpeg-swizzle-r0.patch 2305 RMD160 2a69ce73c33d5a79b901840adf97656a12c0db4a SHA1 e6bc2233e90c5b2e07ace00a9af879691b2b97da SHA256 a39647def088bd41a7ddce3def9de1455c8b633460da4fe4bfdf205f2ba3a598
 AUX chromium-system-libevent-r0.patch 404 RMD160 0dc32cfbd0770e4be1b6f9d3cf8ac08987a5992d SHA1 f6127a903eeb4ce13a4f8fc75dda0102e68d759a SHA256 127945ad45ede0e2aefbc28d8d5eb241675abb83f3aedc2569133e437f98a841
 AUX chromium.default 147 RMD160 4c0669585499b94c225e34e985e615d0299b66fb SHA1 1cdcbcd4a3517f70ba67c749da95c2a307971846 SHA256 de16d72d77ac9fe04f781df4f50dfb714ba33574755932df950c1d9472b589d9
 AUX dot-gclient 253 RMD160 a768770d8e6f5b73395451277beea1cc9240fc3a SHA1 3eaf2074da58cfe4f2af3d08f59b27a16fe13dad SHA256 8c5750251ff681044cc584ef3768fe39c56c7877ade5fb9107298734126e62cf
 AUX extract_v8_version.py 731 RMD160 71b134c9b88902259cb20ec232b8da6c3d8a15de SHA1 3dc5d6f9437f4b0ffb584395e19663450384b53a SHA256 4011f1e2f44bd18ad1266dffc1d3fbc13a6430afade2b19240b31ee9437dcbda
 AUX nacl.gypi 98 RMD160 fa4806fbc8c2e19763c1905a3bc431022b247825 SHA1 df4cee39e1d49e10f9c075f5e6e9db28e8260926 SHA256 25bddd2eee7821e18ddda06f6e69552c359e1c04a10971ac3985556c3d8ef059
 DIST chromium-16.0.912.63.tar.bz2 154351760 RMD160 fecf2c21a9ae54ee67668b2542936d292a8575a9 SHA1 72bb47b6433a51fd0e24cf06929b37ee7e14a0a3 SHA256 da806829adee04c0701444b1842975eec2e4b745956933d760153a414b53c588
-DIST chromium-17.0.942.0.tar.bz2 164163186 RMD160 ba38ae739790fa1e1a17a4d16c566a641ae617a8 SHA1 7cebf8a5ea938ae2e5d6aca756697e424434dc7a SHA256 66a79daf6fa4785658445892a5be5c35099b4b631427f29ec1e58adb73633241
 DIST chromium-17.0.963.12.tar.bz2 165123944 RMD160 88b9b9c121d138b4f28dcb1293659219ca06eea9 SHA1 0e92d9f052b2d8e519517f9b673ed23c57d5cc3c SHA256 9412b6c049e3df729319fbd6b91a0e8baa78d33d39232db2ac68ec97c3439cdf
-DIST chromium-17.0.963.6.tar.bz2 165235130 RMD160 bf0281c753619e1c38ddd2f4f2288ee10a1a840c SHA1 32e2375a4585049a1938e4d093d6aba03795b386 SHA256 e5989e4be538f90161aa923ac6ed34aad841fea13f2f8ebfbf7c5ae44423683c
 EBUILD chromium-16.0.912.63.ebuild 16596 RMD160 402a5a9bf38f99380fc422c48d947405af1c1f08 SHA1 b8048658c591a9ff4f6d1643cdb9ecc4e02460b4 SHA256 d69e866f68f0a6ff9e0928dfe1d73494b0736b8e1c5c437708433141c910ec11
-EBUILD chromium-17.0.942.0.ebuild 17001 RMD160 f4f99bf7b5589fd1fcf58daa5434715c4be80524 SHA1 403b244f947455751200969d7adc41c823566513 SHA256 ae031bd437e3977afe1dd2854392ccd5b5cb7d50d6b9f08fe85077e9f2864e69
+EBUILD chromium-17.0.963.12-r1.ebuild 17176 RMD160 7806af711239c4f5f53182912cec3e35f503ffa3 SHA1 c23dabce3245f852c145cbf43ce5eaaf4c87ebbf SHA256 7564a1fe3785cd284c8c478539ae1f60a3b9ffda09ac84d826af631cb171cd54
 EBUILD chromium-17.0.963.12.ebuild 17049 RMD160 383eee61bc9a8f57b6d3fcd20eef46a07e8edc30 SHA1 dd8276aabe10b7e974514323c9af69b587ce04c3 SHA256 aaaf6f461dc8fdc53d62b3bd1a8e378fa6176b8b5cade11d09bc4e0d36f86e07
-EBUILD chromium-17.0.963.6.ebuild 17048 RMD160 2d0264271c6867f9980d34fd5ef24b70cb495699 SHA1 523f045751b2d788efe4a541a4aadcdf7f7e83b0 SHA256 6a46b833b5d49a50c314179fb32a98d4cccf6a2e37da90bd646eff23bce2e9a6
 EBUILD chromium-9999-r1.ebuild 19154 RMD160 bde6e95e34de726164a7536debca290a1f163ef8 SHA1 6ab9a011c67b82901165b1796d731cd04b1ee7d2 SHA256 4720a629aa55c0371dbeb8bdf491999d4f0786da1fe55d4ce7c2c3c94bb5f82f
-MISC ChangeLog 113566 RMD160 7d021ae4878b9fb841e8e36339c31da27e58cd04 SHA1 a7fd01f6ebc8e72a1dbf97b53b08794496e67e16 SHA256 253baf40e98ae976a08653e8dd6a4f36745620fa6fa914978c1218aae10aeffb
+MISC ChangeLog 114029 RMD160 da36e167b9095e94f57b11d7e2927c28bec595f4 SHA1 4df49d94e6814ffa745fcb0dddb0e528a46ebc9f SHA256 a4938bea9bbd6e194dd4593426231b9f95a021900830a55bf7ade649a96104c7
 MISC metadata.xml 267 RMD160 3a166415fec415d539c1b7c32ed40b188488b9fb SHA1 5c3d71a9cea27175cbe8c98369b42b79c8643c6c SHA256 4e6afae33f60d6752cacf2785f7f9a396b8711cce605b73d0d752a4af7d01fc8
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.17 (GNU/Linux)
 
-iF4EAREIAAYFAk7s/e0ACgkQC77qH+pIQ6RbSgEAioTr/oQk6Fixw6f3xhto5JRN
-FKNJB/bzJYY9QHEL9DoBAMTMxh/XoAnRWYCscQIfS4FRApF979gPthkSoXDK+mP4
-=ZqQ5
+iEYEAREKAAYFAk77Z64ACgkQuUQtlDBCeQJl8wCeNTY0ffOmEOXqIwRblfoaZira
+xxoAnRbrwDpMTqUFVUKQWaHBLqEcvBIV
+=puA7
 -----END PGP SIGNATURE-----
diff --git a/www-client/chromium/chromium-17.0.942.0.ebuild b/www-client/chromium/chromium-17.0.942.0.ebuild
deleted file mode 100644 (file)
index 68979ea..0000000
+++ /dev/null
@@ -1,537 +0,0 @@
-# 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-17.0.942.0.ebuild,v 1.3 2011/11/23 22:36:25 floppym Exp $
-
-EAPI="4"
-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://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="bindist cups gnome gnome-keyring kerberos pulseaudio"
-
-# 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
-       cups? (
-               dev-libs/libgcrypt
-               >=net-print/cups-1.3.11
-       )
-       >=dev-lang/v8-3.7.6
-       dev-libs/dbus-glib
-       dev-libs/elfutils
-       >=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
-       pulseaudio? ( media-sound/pulseaudio )
-       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
-       dev-lang/perl
-       dev-lang/yasm
-       dev-python/simplejson
-       >=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 )"
-RDEPEND+="
-       !=www-client/chromium-9999
-       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
-}
-
-get_bundled_v8_version() {
-       "$(PYTHON -2)" "${FILESDIR}"/extract_v8_version.py v8/src/version.cc
-}
-
-get_installed_v8_version() {
-       best_version dev-lang/v8 | sed -e 's@dev-lang/v8-@@g'
-}
-
-if ! has chromium-pkg_die ${EBUILD_DEATH_HOOKS}; then
-       EBUILD_DEATH_HOOKS+=" chromium-pkg_die";
-fi
-
-chromium-pkg_die() {
-       if [[ "${EBUILD_PHASE}" != "compile" ]]; then
-               return
-       fi
-
-       # Prevent user problems like bug #348235.
-       eshopts_push -s extglob
-       if is-flagq '-g?(gdb)?([1-9])'; then
-               ewarn
-               ewarn "You have enabled debug info (i.e. -g or -ggdb in your CFLAGS/CXXFLAGS)."
-               ewarn "Please try removing -g{,gdb} before reporting a bug."
-               ewarn
-       fi
-       eshopts_pop
-
-       # ccache often causes bogus compile failures, especially when the cache gets
-       # corrupted.
-       if has ccache ${FEATURES}; then
-               ewarn
-               ewarn "You have enabled ccache. Please try disabling ccache"
-               ewarn "before reporting a bug."
-               ewarn
-       fi
-
-       # If the system doesn't have enough memory, the compilation is known to
-       # fail. Print info about memory to recognize this condition.
-       einfo
-       einfo "$(grep MemTotal /proc/meminfo)"
-       einfo "$(grep SwapTotal /proc/meminfo)"
-       einfo
-}
-
-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
-
-       if [[ "${MERGE_TYPE}" == "source" || "${MERGE_TYPE}" == "binary" ]]; then
-               # Fail if the kernel doesn't support features needed for sandboxing,
-               # bug #363907.
-               ERROR_PID_NS="PID_NS is required for sandbox to work"
-               ERROR_NET_NS="NET_NS is required for sandbox to work"
-               CONFIG_CHECK="~PID_NS ~NET_NS"
-               check_extra_config
-       fi
-
-       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
-
-       epatch_user
-
-       # 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/jsoncpp/*' \
-               \! -path 'third_party/launchpad_translations/*' \
-               \! -path 'third_party/leveldb/*' \
-               \! -path 'third_party/leveldatabase/*' \
-               \! -path 'third_party/libjingle/*' \
-               \! -path 'third_party/libphonenumber/*' \
-               \! -path 'third_party/libvpx/*' \
-               \! -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/tcmalloc/*' \
-               \! -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="$(get_bundled_v8_version)"
-       local v8_installed="$(get_installed_v8_version)"
-       elog "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"
-
-       # 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"
-
-       # 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"
-
-       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"
-       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 CFLAGS problems, bug #352457, bug #390147.
-       replace-flags "-Os" "-O2"
-       strip-flags
-
-       egyp ${myconf} || die
-}
-
-src_compile() {
-       emake chrome chrome_sandbox chromedriver BUILDTYPE=Release V=1 || die
-       pax-mark m out/Release/chrome
-       if use test; then
-               emake {base,cacheinvalidation,crypto,googleurl,gpu,media,net,printing}_unittests BUILDTYPE=Release V=1 || die
-               pax-mark m out/Release/{base,cacheinvalidation,crypto,googleurl,gpu,media,net,printing}_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/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.
-       # NetUtilTest.GenerateFileName: some locale-related mismatch.
-       # 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*:NetUtilTest.GenerateFileName:*UDP*'
-
-       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
-
-       # 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${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
-}
-
-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
-}
similarity index 98%
rename from www-client/chromium/chromium-17.0.963.6.ebuild
rename to www-client/chromium/chromium-17.0.963.12-r1.ebuild
index 09405a83cb99e376f743454b0711cc98367ae360..7997181a31503b04b2f84d1c42201a9acf0bd033 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-17.0.963.6.ebuild,v 1.1 2011/12/13 21:36:15 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-17.0.963.12-r1.ebuild,v 1.1 2011/12/28 19:01:34 phajdan.jr Exp $
 
 EAPI="4"
 PYTHON_DEPEND="2:2.6"
@@ -177,6 +177,9 @@ src_prepare() {
                third_party/zlib/contrib/minizip/{ioapi,{,un}zip}.c \
                chrome/common/zip*.cc || die
 
+       # Revert WebKit changeset responsible for Gentoo bug #393471.
+       epatch "${FILESDIR}/${PN}-revert-jpeg-swizzle-r0.patch"
+
        epatch_user
 
        # Remove most bundled libraries. Some are still needed.
diff --git a/www-client/chromium/files/chromium-revert-jpeg-swizzle-r0.patch b/www-client/chromium/files/chromium-revert-jpeg-swizzle-r0.patch
new file mode 100644 (file)
index 0000000..1f1aff6
--- /dev/null
@@ -0,0 +1,62 @@
+This reverts http://trac.webkit.org/changeset/101286
+to fix Gentoo bug https://bugs.gentoo.org/show_bug.cgi?id=393471
+
+Index: third_party/WebKit/Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp
+===================================================================
+--- third_party/WebKit/Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp        (revision 96970)
++++ third_party/WebKit/Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp        (revision 101286)
+@@ -63,20 +63,6 @@
+ #include <setjmp.h>
+-#if CPU(BIG_ENDIAN) || CPU(MIDDLE_ENDIAN)
+-#define ASSUME_LITTLE_ENDIAN 0
+-#else
+-#define ASSUME_LITTLE_ENDIAN 1
+-#endif
+-
+-#if defined(JCS_EXTENSIONS) && ASSUME_LITTLE_ENDIAN
+-#define TURBO_JPEG_RGB_SWIZZLE
+-inline J_COLOR_SPACE rgbOutputColorSpace() { return JCS_EXT_BGRX; }
+-inline bool turboSwizzled(J_COLOR_SPACE colorSpace) { return colorSpace == rgbOutputColorSpace(); }
+-#else
+-inline J_COLOR_SPACE rgbOutputColorSpace() { return JCS_RGB; }
+-#endif
+-
+ namespace WebCore {
+ struct decoder_error_mgr {
+@@ -235,11 +221,10 @@
+                 // their color profile, CoreGraphics will "upsample" them
+                 // again, resulting in horizontal distortions.
+                 m_decoder->setIgnoreGammaAndColorProfile(true);
+-                m_info.out_color_space = JCS_RGB;
+-                break;
++                // Note fall-through!
+             case JCS_RGB:
+             case JCS_YCbCr:
+-                m_info.out_color_space = rgbOutputColorSpace();
++                m_info.out_color_space = JCS_RGB;
+                 break;
+             case JCS_CMYK:
+             case JCS_YCCK:
+@@ -496,19 +481,6 @@
+     }
+     jpeg_decompress_struct* info = m_reader->info();
+-
+-#if !ENABLE(IMAGE_DECODER_DOWN_SAMPLING) && defined(TURBO_JPEG_RGB_SWIZZLE)
+-    if (turboSwizzled(info->out_color_space)) {
+-         ASSERT(!m_scaled);
+-         while (info->output_scanline < info->output_height) {
+-             unsigned char* row = reinterpret_cast<unsigned char*>(buffer.getAddr(0, info->output_scanline));
+-             if (jpeg_read_scanlines(info, &row, 1) != 1)
+-                  return false;
+-         }
+-         return true;
+-     }
+-#endif
+-
+     JSAMPARRAY samples = m_reader->samples();
+     while (info->output_scanline < info->output_height) {