Version bump for dev channel release. Fix bug #323675 by Dan Douglas <doug0213@metnet...
authorPaweł Hajdan <phajdan.jr@gentoo.org>
Thu, 17 Jun 2010 19:59:36 +0000 (19:59 +0000)
committerPaweł Hajdan <phajdan.jr@gentoo.org>
Thu, 17 Jun 2010 19:59:36 +0000 (19:59 +0000)
Package-Manager: portage-2.1.8.3/cvs/Linux i686

www-client/chromium/ChangeLog
www-client/chromium/Manifest
www-client/chromium/chromium-6.0.437.1.ebuild [new file with mode: 0644]
www-client/chromium/chromium-9999.ebuild
www-client/chromium/files/chromium-gyp-fixes-r2.patch [new file with mode: 0644]
www-client/chromium/files/chromium-optional-cups-r1.patch [new file with mode: 0644]

index 2be1a87dae3f93557aae9e08008d533a489acd32..3d118d7edffdb932616a5ceab555b8bab5f6bf5c 100644 (file)
@@ -1,6 +1,15 @@
 # ChangeLog for www-client/chromium
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.114 2010/06/16 19:59:32 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.115 2010/06/17 19:59:35 phajdan.jr Exp $
+
+*chromium-6.0.437.1 (17 Jun 2010)
+
+  17 Jun 2010; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+  +files/chromium-gyp-fixes-r2.patch, +chromium-6.0.437.1.ebuild,
+  +files/chromium-optional-cups-r1.patch, chromium-9999.ebuild:
+  Version bump for dev channel release. Fix bug #323675 by Dan Douglas
+  <doug0213@metnet.edu>. Fix bug #324105 by Anthony Parsons
+  <ant@specialops.ath.cx>.
 
   16 Jun 2010; Pawel Hajdan jr <phajdan.jr@gentoo.org>
   chromium-5.0.375.70.ebuild:
index eb2a1973f941fa8e83675d7ee050968d95ddf7fd..c754eee6169c4d6331952782c59aebf1044b432a 100644 (file)
@@ -2,13 +2,17 @@ AUX chromium-20100122-ubuntu-html5-video-mimetypes.patch 1228 RMD160 69157e703e1
 AUX chromium-disable-vp8-r1.patch 1204 RMD160 22264b89adf908149e5405c316e4666c4eda4ad8 SHA1 7e104772a645f50449432d4c970d52ffc3555c8a SHA256 ebb9031cd447aca0f3d7f9a2b4081f64dd8244ffd90564ecab06724e1dda63e8
 AUX chromium-drop_sse2-r0.patch 1387 RMD160 5be0a252d4e99064e2cc5ba3fce33a5f525ba785 SHA1 a356549db631a7b147bf0046be8ab09d88874f15 SHA256 f035f196eea72855cf37d269810f4f99a5f348b7b8d7aaf537e35a11d6e1f1df
 AUX chromium-gyp-fixes-r1.patch 1122 RMD160 8f37f016c9ca937ac0b02d4af533ddd0bb21b340 SHA1 d481f92313ad2aee0b00e2fda3698057e7de4c7e SHA256 22cd04c272d07cef36b1b3e639fad78486dc85dfd21c6cf542dbf4ebea0c2fe5
+AUX chromium-gyp-fixes-r2.patch 446 RMD160 ff89b0b16b55e0a6109b6c083e8c91973abd7a28 SHA1 6f72fc64cdb1e733666597d1237eed783ece42fa SHA256 33f6391dfefce19115f08034943f936a24c7edb23fd3f185b4bcba0a8b03f4d4
 AUX chromium-launcher.sh 1097 RMD160 6a35819d6ae463d1614ecd5976fe8aeae1a3519e SHA1 93b8259fe9ddf6914faa9a4cdbaf451a97031228 SHA256 9d16e2afe508c33aa987001a0442696eaefd5cf91e7a6c9eeb900bc9824390c9
 AUX chromium-libpng-1.4.patch 749 RMD160 1c024286ea635e393d12ed7a04c0412f8a47506b SHA1 e96283b523a14e8fb369838b35051c8ba0cc6f96 SHA256 b92ba935589f01b28a4ddeb5fd7fd42f8f643eaf1e24cafc2458d97fa1489d8e
+AUX chromium-optional-cups-r1.patch 647 RMD160 990d9d33e43cb2429eb6019df8a2625f980be64e SHA1 0387d604d1926e56bbdb68a56b6137e542386fb7 SHA256 444179d3c3f2b86006b032f62220353f04f6d740777982c2a871618a3334303e
 AUX chromium.xml 390 RMD160 6b2f901da76555a7112f71a6f9dae6e2e3307324 SHA1 81148a0b094bc697ff2c9d33efe976b1bffb72a3 SHA256 a81c6257346eaa4f6389fc9ea8834fd2dd3b006cf4e9e999028aca812d76fe9a
 DIST chromium-5.0.375.70.tar.bz2 163191937 RMD160 cb43307d095dc7ba146762b2a997ba32c5c12907 SHA1 96234ce716e5124f8c8ada92ed9a8cbe6183c5ed SHA256 dd2e440b1a230b1adcc8941d825155e5aeaf887fe67702697a845bd459455902
 DIST chromium-6.0.427.0.tar.bz2 179247836 RMD160 6b42d4145514557eba30b99a0799e181e2f45a16 SHA1 65897ae8d05e04e821333fca05d77cbe0b08771f SHA256 e5ab816d0b39511d6718c2f76c3436c4db3664c06496fe413273a70864d4f3d8
+DIST chromium-6.0.437.1.tar.bz2 124160031 RMD160 80ac4d434de50a923f11aebaf7755c9de4b16a5b SHA1 01440e58c29bc24f9dbf646391859475dd34b856 SHA256 82207de9036cbfe30e91f3e81c5faab35a2077b9007af89b8e87c2218d8ba269
 EBUILD chromium-5.0.375.70.ebuild 5653 RMD160 accd9bebc41a61e8544e2d2073bfa8eb558cb8cc SHA1 c48b195937ea1c65bde66fdf9be0dabba470644c SHA256 68904b0221796b90cbf779d107dd81c7f31bcab12068e27fe22d24c38977133a
 EBUILD chromium-6.0.427.0.ebuild 5869 RMD160 3db0e8f2a551247e1bf370dcc09f22af48dbb628 SHA1 7499494a3540b3e802dd5cbc75f857d7075c9e1d SHA256 caf0867efaa0c786653342e0e0b62b52f49f3ac705590bac62b978d80963883c
-EBUILD chromium-9999.ebuild 7650 RMD160 7f30b97c3c890767905d0e8d9bd5144808a1e245 SHA1 ad0ec22cb6408555de734ecebc64ceee3a9f18a6 SHA256 5d00de48c051c2228c16541385bcf130a6da0db54fc66f802562715552fb9744
-MISC ChangeLog 25669 RMD160 7f5297e7106306478f4b89ccfda90c94655025e5 SHA1 47e7f8635b6307237a57fe1e05546a455ac095af SHA256 30d20d55baddd253e0fbba665683f4e90cace8d9ab81f1c41b60d7e26172ab5a
+EBUILD chromium-6.0.437.1.ebuild 6169 RMD160 f148672874daf52217bf93071f24e7a2eadc87b1 SHA1 f578670d9479d7cd3ee73bda42afe13289ec4b9a SHA256 d3b167fb0fc5d3f7fd95bd2163109bbffe9dcb3b36ce660f8c1f943bb35986b1
+EBUILD chromium-9999.ebuild 7922 RMD160 bc3c8bc241cf1468c40db1383473c7c71bb5bbf0 SHA1 cbee99039a840b43968a1f5343eb11288b41257a SHA256 135c806cc4f079398990a61608d87a1cd6971fe882b0610c2f3934de2d0f650b
+MISC ChangeLog 26048 RMD160 de3fc9aea8eedace043c1d547f0ce3bd77538819 SHA1 a5e6529cc9198b1679e9caeed679ff1e6d8009e9 SHA256 7496b3cd9b9c0548152c8c99c98b0eb3ac23073c3fb62c88681fc36e3d7a93cd
 MISC metadata.xml 572 RMD160 458a635f4040d8552b46256c8437099608041b99 SHA1 6ed49919f57f709065cf06c148f1df68119a3b3f SHA256 4a433c3dadf06af7e3dca492ffaa3f26a6c4419de61a044609e2d528891e09a5
diff --git a/www-client/chromium/chromium-6.0.437.1.ebuild b/www-client/chromium/chromium-6.0.437.1.ebuild
new file mode 100644 (file)
index 0000000..e7f435a
--- /dev/null
@@ -0,0 +1,204 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-6.0.437.1.ebuild,v 1.1 2010/06/17 19:59:35 phajdan.jr Exp $
+
+EAPI="2"
+
+inherit eutils flag-o-matic multilib pax-utils toolchain-funcs
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="http://chromium.org/"
+SRC_URI="http://build.chromium.org/buildbot/official/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="cups"
+
+RDEPEND="app-arch/bzip2
+       >=dev-libs/libevent-1.4.13
+       dev-libs/libxml2
+       dev-libs/libxslt
+       >=dev-libs/nss-3.12.3
+       >=gnome-base/gconf-2.24.0
+       >=media-libs/alsa-lib-1.0.19
+       media-libs/jpeg:0
+       media-libs/libpng
+       media-video/ffmpeg[threads]
+       cups? ( >=net-print/cups-1.3.5 )
+       sys-libs/zlib
+       >=x11-libs/gtk+-2.14.7
+       x11-libs/libXScrnSaver"
+DEPEND="${RDEPEND}
+       dev-lang/perl
+       >=dev-util/gperf-3.0.3
+       >=dev-util/pkgconfig-0.23
+       sys-devel/flex"
+RDEPEND+="
+       || (
+               x11-themes/gnome-icon-theme
+               x11-themes/oxygen-molecule
+               x11-themes/tango-icon-theme
+               x11-themes/xfce4-icon-theme
+       )
+       x11-apps/xmessage
+       x11-misc/xdg-utils
+       virtual/ttf-fonts"
+
+remove_bundled_lib() {
+       einfo "Removing bundled library $1 ..."
+       local out
+       out="$(find $1 -mindepth 1 \! -iname '*.gyp' -print -delete)" \
+               || die "failed to remove bundled library $1"
+       if [[ -z $out ]]; then
+               die "no files matched when removing bundled library $1"
+       fi
+}
+
+src_prepare() {
+       # Disable VP8 until we have a recent enough system-provided ffmpeg.
+       epatch "${FILESDIR}"/${PN}-disable-vp8-r1.patch
+
+       # Make dependency on cups optional, bug #324105.
+       epatch "${FILESDIR}"/${PN}-optional-cups-r1.patch
+
+       # Fix gyp files to correctly support system-provided libraries.
+       epatch "${FILESDIR}"/${PN}-gyp-fixes-r2.patch
+
+       remove_bundled_lib "third_party/bzip2"
+       remove_bundled_lib "third_party/libevent"
+       remove_bundled_lib "third_party/libjpeg"
+       remove_bundled_lib "third_party/libpng"
+       remove_bundled_lib "third_party/libxml"
+       remove_bundled_lib "third_party/libxslt"
+       # TODO: also remove third_party/zlib. For now the compilation fails if we
+       # remove it (minizip-related).
+}
+
+src_configure() {
+       export CHROMIUM_HOME=/usr/$(get_libdir)/chromium-browser
+
+       # Workaround for bug #318969.
+       # TODO: remove when http://crbug.com/43778 is fixed.
+       append-flags -D__STDC_CONSTANT_MACROS
+
+       # Make it possible to build chromium on non-sse2 systems.
+       local myconf="-Ddisable_sse2=1"
+
+       # Use system-provided libraries.
+       # TODO: use_system_sqlite (http://crbug.com/22208).
+       # TODO: use_system_icu, use_system_hunspell (upstream changes needed).
+       # TODO: use_system_ssl when we have a recent enough system NSS.
+       myconf="${myconf}
+               -Duse_system_bzip2=1
+               -Duse_system_ffmpeg=1
+               -Duse_system_libevent=1
+               -Duse_system_libjpeg=1
+               -Duse_system_libpng=1
+               -Duse_system_libxml=1
+               -Duse_system_zlib=1"
+
+       # The system-provided ffmpeg supports more codecs. Enable them in chromium.
+       myconf="${myconf} -Dproprietary_codecs=1"
+
+       # The dependency on cups is optional, see bug #324105.
+       if use cups; then
+               myconf="${myconf} -Duse_cups=1"
+       else
+               myconf="${myconf} -Duse_cups=0"
+       fi
+
+       # Enable sandbox.
+       myconf="${myconf}
+               -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
+               -Dlinux_sandbox_chrome_path=${CHROMIUM_HOME}/chrome"
+
+       # Disable the V8 snapshot. It breaks the build on hardened (bug #301880),
+       # and the performance gain isn't worth it.
+       myconf="${myconf} -Dv8_use_snapshot=0"
+
+       # Disable tcmalloc memory allocator. It causes problems,
+       # for example bug #320419.
+       myconf="${myconf} -Dlinux_use_tcmalloc=0"
+
+       # Use target arch detection logic from bug #296917.
+       local myarch="$ABI"
+       [[ $myarch = "" ]] && myarch="$ARCH"
+
+       if [[ $myarch = amd64 ]] ; then
+               myconf="${myconf} -Dtarget_arch=x64"
+       elif [[ $myarch = x86 ]] ; then
+               myconf="${myconf} -Dtarget_arch=ia32"
+       elif [[ $myarch = arm ]] ; then
+               append-flags -fno-tree-sink
+               myconf="${myconf} -Dtarget_arch=arm -Ddisable_nacl=1 -Dlinux_use_tcmalloc=0"
+       else
+               die "Failed to determine target arch, got '$myarch'."
+       fi
+
+       if [[ "$(gcc-major-version)$(gcc-minor-version)" == "44" ]]; then
+               myconf="${myconf} -Dno_strict_aliasing=1 -Dgcc_version=44"
+       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="${myconf} -Dwerror="
+
+       build/gyp_chromium -f make build/all.gyp ${myconf} --depth=. || die "gyp failed"
+}
+
+src_compile() {
+       emake -r V=1 chrome chrome_sandbox BUILDTYPE=Release \
+               rootdir="${S}" \
+               CC=$(tc-getCC) \
+               CXX=$(tc-getCXX) \
+               AR=$(tc-getAR) \
+               RANLIB=$(tc-getRANLIB) \
+               || die "compilation failed"
+}
+
+src_install() {
+       export CHROMIUM_HOME=/usr/$(get_libdir)/chromium-browser
+
+       dodir ${CHROMIUM_HOME}
+
+       exeinto ${CHROMIUM_HOME}
+       pax-mark m out/Release/chrome
+       doexe out/Release/chrome
+       doexe out/Release/chrome_sandbox
+       fperms 4755 ${CHROMIUM_HOME}/chrome_sandbox
+       doexe out/Release/xdg-settings
+       doexe "${FILESDIR}"/chromium-launcher.sh
+
+       insinto ${CHROMIUM_HOME}
+       doins out/Release/chrome.pak
+
+       doins -r out/Release/locales
+       doins -r out/Release/resources
+
+       # chrome.1 is for chromium --help
+       newman out/Release/chrome.1 chrome.1
+       newman out/Release/chrome.1 chromium.1
+
+       # 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}
+       dosym /usr/$(get_libdir)/libavformat.so.52 ${CHROMIUM_HOME}
+       dosym /usr/$(get_libdir)/libavutil.so.50 ${CHROMIUM_HOME}
+
+       # Use system plugins by default.
+       dosym /usr/$(get_libdir)/nsbrowser/plugins ${CHROMIUM_HOME}/plugins
+
+       # Install icon and desktop entry.
+       newicon out/Release/product_logo_48.png ${PN}-browser.png
+       dosym ${CHROMIUM_HOME}/chromium-launcher.sh /usr/bin/chromium
+       make_desktop_entry chromium "Chromium" ${PN}-browser "Network;WebBrowser"
+       sed -e "/^Exec/s/$/ %U/" -i "${D}"/usr/share/applications/*.desktop \
+               || die "desktop file sed failed"
+
+       # Install GNOME default application entry (bug #303100).
+       dodir /usr/share/gnome-control-center/default-apps
+       insinto /usr/share/gnome-control-center/default-apps
+       doins "${FILESDIR}"/chromium.xml
+}
index 5f169c4b0fdd712d099b2c131b51d8b01aceb1af..860f7f76a338298c64fa67e7977ad3ea2f5af068 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2010 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999.ebuild,v 1.56 2010/06/11 09:44:59 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999.ebuild,v 1.57 2010/06/17 19:59:35 phajdan.jr Exp $
 
 EAPI="2"
 
@@ -15,7 +15,7 @@ EGCLIENT_REPO_URI="http://src.chromium.org/svn/trunk/src/"
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS=""
-IUSE=""
+IUSE="cups"
 
 RDEPEND="app-arch/bzip2
        >=dev-libs/libevent-1.4.13
@@ -27,7 +27,7 @@ RDEPEND="app-arch/bzip2
        media-libs/jpeg:0
        media-libs/libpng
        media-video/ffmpeg[threads]
-       >=net-print/cups-1.3.5
+       cups? ( >=net-print/cups-1.3.5 )
        sys-libs/zlib
        >=x11-libs/gtk+-2.14.7
        x11-libs/libXScrnSaver"
@@ -104,8 +104,11 @@ src_prepare() {
        # Disable VP8 until we have a recent enough system-provided ffmpeg.
        epatch "${FILESDIR}"/${PN}-disable-vp8-r1.patch
 
+       # Make dependency on cups optional, bug #324105.
+       epatch "${FILESDIR}"/${PN}-optional-cups-r1.patch
+
        # Fix gyp files to correctly support system-provided libraries.
-       epatch "${FILESDIR}"/${PN}-gyp-fixes-r1.patch
+       epatch "${FILESDIR}"/${PN}-gyp-fixes-r2.patch
 
        remove_bundled_lib "third_party/bzip2"
        remove_bundled_lib "third_party/libevent"
@@ -143,6 +146,13 @@ src_configure() {
        # The system-provided ffmpeg supports more codecs. Enable them in chromium.
        myconf="${myconf} -Dproprietary_codecs=1"
 
+       # The dependency on cups is optional, see bug #324105.
+       if use cups; then
+               myconf="${myconf} -Duse_cups=1"
+       else
+               myconf="${myconf} -Duse_cups=0"
+       fi
+
        # Enable sandbox.
        myconf="${myconf}
                -Dlinux_sandbox_path=${CHROMIUM_HOME}/chrome_sandbox
diff --git a/www-client/chromium/files/chromium-gyp-fixes-r2.patch b/www-client/chromium/files/chromium-gyp-fixes-r2.patch
new file mode 100644 (file)
index 0000000..ffd4fba
--- /dev/null
@@ -0,0 +1,10 @@
+--- chrome/chrome_common.gypi.orig     2010-06-16 21:14:51.000000000 +0200
++++ chrome/chrome_common.gypi  2010-06-16 21:16:13.000000000 +0200
+@@ -130,6 +130,7 @@
+         '../ipc/ipc.gyp:ipc',
+         '../net/net.gyp:net',
+         '../skia/skia.gyp:skia',
++        '../third_party/bzip2/bzip2.gyp:bzip2',
+         '../third_party/icu/icu.gyp:icui18n',
+         '../third_party/icu/icu.gyp:icuuc',
+         '../third_party/libxml/libxml.gyp:libxml',
diff --git a/www-client/chromium/files/chromium-optional-cups-r1.patch b/www-client/chromium/files/chromium-optional-cups-r1.patch
new file mode 100644 (file)
index 0000000..f9e87a7
--- /dev/null
@@ -0,0 +1,21 @@
+--- chrome/chrome.gyp.orig     2010-06-16 21:19:14.000000000 +0200
++++ chrome/chrome.gyp  2010-06-16 21:26:33.000000000 +0200
+@@ -1098,6 +1098,9 @@
+       'include_dirs': [
+         '..',
+       ],
++      'variables': {
++              'use_cups%': 1,
++      },
+       'conditions': [
+         ['OS=="win"', {
+           'defines': [
+@@ -1114,7 +1117,7 @@
+             '../build/linux/system.gyp:gtk',
+           ],
+         }],
+-        ['OS=="linux" and chromeos==0 and target_arch!="arm"', {
++        ['OS=="linux" and chromeos==0 and target_arch!="arm" and use_cups==1', {
+           'link_settings': {
+             'libraries': [
+               '-lcups',