summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Hajdan <phajdan.jr@gentoo.org>2010-10-01 08:34:59 +0000
committerPaweł Hajdan <phajdan.jr@gentoo.org>2010-10-01 08:34:59 +0000
commit8a00996c3cf2f98983ee9946567b305b68bc4272 (patch)
treed6630bb645154988a3fbff5bf780ffd3d9e8e972 /www-client
parentRespect LDFLAGS. Bug #337273 (diff)
downloadgentoo-2-8a00996c3cf2f98983ee9946567b305b68bc4272.tar.gz
gentoo-2-8a00996c3cf2f98983ee9946567b305b68bc4272.tar.bz2
gentoo-2-8a00996c3cf2f98983ee9946567b305b68bc4272.zip
Version bump for dev channel release. Add an option to build with system-provided sqlite library. Re-enable tcmalloc support. Minor ebuild cleanups. Remove old versions.
(Portage version: 2.1.8.3/cvs/Linux i686)
Diffstat (limited to 'www-client')
-rw-r--r--www-client/chromium/ChangeLog13
-rw-r--r--www-client/chromium/chromium-6.0.472.59.ebuild226
-rw-r--r--www-client/chromium/chromium-6.0.472.62-r1.ebuild223
-rw-r--r--www-client/chromium/chromium-6.0.472.63-r1.ebuild223
-rw-r--r--www-client/chromium/chromium-7.0.536.2.ebuild (renamed from www-client/chromium/chromium-7.0.517.13.ebuild)33
-rw-r--r--www-client/chromium/chromium-9999.ebuild32
-rw-r--r--www-client/chromium/files/chromium-system-sqlite-r0.patch50
-rw-r--r--www-client/chromium/metadata.xml4
8 files changed, 101 insertions, 703 deletions
diff --git a/www-client/chromium/ChangeLog b/www-client/chromium/ChangeLog
index c4919c416cb5..6983e19247f5 100644
--- a/www-client/chromium/ChangeLog
+++ b/www-client/chromium/ChangeLog
@@ -1,6 +1,17 @@
# 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.191 2010/09/29 09:54:08 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.192 2010/10/01 08:34:59 phajdan.jr Exp $
+
+*chromium-7.0.536.2 (01 Oct 2010)
+
+ 01 Oct 2010; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+ +files/chromium-system-sqlite-r0.patch, -chromium-6.0.472.59.ebuild,
+ -chromium-6.0.472.62-r1.ebuild, -chromium-6.0.472.63-r1.ebuild,
+ -chromium-7.0.517.13.ebuild, +chromium-7.0.536.2.ebuild,
+ chromium-9999.ebuild, metadata.xml:
+ Version bump for dev channel release. Add an option to build with
+ system-provided sqlite library. Re-enable tcmalloc support. Minor ebuild
+ cleanups. Remove old versions.
*chromium-7.0.517.24 (29 Sep 2010)
diff --git a/www-client/chromium/chromium-6.0.472.59.ebuild b/www-client/chromium/chromium-6.0.472.59.ebuild
deleted file mode 100644
index d19f7156b31f..000000000000
--- a/www-client/chromium/chromium-6.0.472.59.ebuild
+++ /dev/null
@@ -1,226 +0,0 @@
-# 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.472.59.ebuild,v 1.3 2010/09/18 09:56:11 hwoarang 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 gnome-keyring sse2"
-
-RDEPEND="app-arch/bzip2
- >=dev-libs/libevent-1.4.13
- >=dev-libs/nss-3.12.3
- >=gnome-base/gconf-2.24.0
- gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2 )
- >=media-libs/alsa-lib-1.0.19
- media-libs/jpeg:0
- media-libs/libpng
- cups? ( >=net-print/cups-1.3.11 )
- 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
- >=gnome-base/gnome-keyring-2.28.2
- 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"
-
-get_chromium_home() {
- echo "/usr/$(get_libdir)/chromium-browser"
-}
-
-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() {
- # Fix compilation, bug #332131.
- epatch "${FILESDIR}"/${PN}-make-3.82-compatibility-r0.patch
-
- # Add Gentoo plugin paths.
- epatch "${FILESDIR}"/${PN}-plugins-path-r0.patch
-
- remove_bundled_lib "third_party/bzip2"
- remove_bundled_lib "third_party/codesighs"
- remove_bundled_lib "third_party/cros"
- remove_bundled_lib "third_party/jemalloc"
- remove_bundled_lib "third_party/lcov"
- remove_bundled_lib "third_party/libevent"
- remove_bundled_lib "third_party/libjpeg"
- remove_bundled_lib "third_party/libpng"
- remove_bundled_lib "third_party/lzma_sdk"
- remove_bundled_lib "third_party/molokocacao"
- remove_bundled_lib "third_party/ocmock"
- remove_bundled_lib "third_party/py"
- remove_bundled_lib "third_party/pyftpdlib"
- remove_bundled_lib "third_party/simplejson"
- remove_bundled_lib "third_party/tlslite"
- # TODO: also remove third_party/libxml and third_party/libxslt when
- # http://crbug.com/29333 is fixed.
- # TODO: also remove third_party/zlib. For now the compilation fails if we
- # remove it (minizip-related).
-}
-
-src_configure() {
- local myconf=""
-
- # Make it possible to build chromium on non-sse2 systems.
- if use sse2; then
- myconf="${myconf} -Ddisable_sse2=0"
- else
- myconf="${myconf} -Ddisable_sse2=1"
- fi
-
- # Use system-provided libraries.
- # TODO: use_system_ffmpeg (http://crbug.com/50678).
- # TODO: use_system_libxml (http://crbug.com/29333).
- # 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_libevent=1
- -Duse_system_libjpeg=1
- -Duse_system_libpng=1
- -Duse_system_zlib=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
-
- if use "gnome-keyring"; then
- myconf="${myconf} -Dlinux_link_gnome_keyring=1"
- else
- # TODO: we should also disable code trying to dlopen
- # gnome-keyring in that case.
- myconf="${myconf} -Dlinux_link_gnome_keyring=0"
- fi
-
- # Enable sandbox.
- myconf="${myconf}
- -Dlinux_sandbox_path=$(get_chromium_home)/chrome_sandbox
- -Dlinux_sandbox_chrome_path=$(get_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"
-
- # Disable gpu rendering, it is incompatible with nvidia-drivers,
- # bug #319331.
- myconf="${myconf} -Denable_gpu=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
- # TODO: check this again after
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
- 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
-
- # Work around a likely GCC bug, see bug #331945.
- if [[ "$(gcc-major-version)$(gcc-minor-version)" == "45" ]]; then
- append-flags -fno-ipa-cp
- 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() {
- dodir "$(get_chromium_home)"
-
- exeinto "$(get_chromium_home)"
- pax-mark m out/Release/chrome
- doexe out/Release/chrome
- doexe out/Release/chrome_sandbox
- fperms 4755 "$(get_chromium_home)/chrome_sandbox"
- doexe out/Release/xdg-settings
- doexe "${FILESDIR}"/chromium-launcher.sh
-
- insinto "$(get_chromium_home)"
- doins out/Release/chrome.pak || die "installing chrome.pak failed"
- doins out/Release/resources.pak || die "installing resources.pak failed"
-
- 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
-
- doexe out/Release/ffmpegsumo_nolink || die
- doexe out/Release/libffmpegsumo.so || die
-
- # Install icon and desktop entry.
- newicon out/Release/product_logo_48.png ${PN}-browser.png
- dosym "$(get_chromium_home)/chromium-launcher.sh" /usr/bin/chromium
- make_desktop_entry chromium "Chromium" ${PN}-browser "Network;WebBrowser" \
- "MimeType=text/html;text/xml;application/xhtml+xml;"
- 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
-}
diff --git a/www-client/chromium/chromium-6.0.472.62-r1.ebuild b/www-client/chromium/chromium-6.0.472.62-r1.ebuild
deleted file mode 100644
index 09dac581122d..000000000000
--- a/www-client/chromium/chromium-6.0.472.62-r1.ebuild
+++ /dev/null
@@ -1,223 +0,0 @@
-# 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.472.62-r1.ebuild,v 1.2 2010/09/22 08:33:24 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 gnome-keyring"
-
-RDEPEND="app-arch/bzip2
- >=dev-libs/libevent-1.4.13
- >=dev-libs/nss-3.12.3
- >=gnome-base/gconf-2.24.0
- gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2 )
- >=media-libs/alsa-lib-1.0.19
- media-libs/jpeg:0
- media-libs/libpng
- cups? ( >=net-print/cups-1.4.4 )
- 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
- >=gnome-base/gnome-keyring-2.28.2
- 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"
-
-get_chromium_home() {
- echo "/usr/$(get_libdir)/chromium-browser"
-}
-
-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() {
- # Fix compilation, bug #332131.
- epatch "${FILESDIR}"/${PN}-make-3.82-compatibility-r0.patch
-
- # Add Gentoo plugin paths.
- epatch "${FILESDIR}"/${PN}-plugins-path-r0.patch
-
- remove_bundled_lib "third_party/bzip2"
- remove_bundled_lib "third_party/codesighs"
- remove_bundled_lib "third_party/cros"
- remove_bundled_lib "third_party/jemalloc"
- remove_bundled_lib "third_party/lcov"
- remove_bundled_lib "third_party/libevent"
- remove_bundled_lib "third_party/libjpeg"
- remove_bundled_lib "third_party/libpng"
- remove_bundled_lib "third_party/lzma_sdk"
- remove_bundled_lib "third_party/molokocacao"
- remove_bundled_lib "third_party/ocmock"
- remove_bundled_lib "third_party/py"
- remove_bundled_lib "third_party/pyftpdlib"
- remove_bundled_lib "third_party/simplejson"
- remove_bundled_lib "third_party/tlslite"
- # TODO: also remove third_party/libxml and third_party/libxslt when
- # http://crbug.com/29333 is fixed.
- # TODO: also remove third_party/zlib. For now the compilation fails if we
- # remove it (minizip-related).
-}
-
-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 (http://crbug.com/50678).
- # TODO: use_system_libxml (http://crbug.com/29333).
- # 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_libevent=1
- -Duse_system_libjpeg=1
- -Duse_system_libpng=1
- -Duse_system_zlib=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
-
- if use "gnome-keyring"; then
- myconf="${myconf} -Dlinux_link_gnome_keyring=1"
- else
- # TODO: we should also disable code trying to dlopen
- # gnome-keyring in that case.
- myconf="${myconf} -Dlinux_link_gnome_keyring=0"
- fi
-
- # Enable sandbox.
- myconf="${myconf}
- -Dlinux_sandbox_path=$(get_chromium_home)/chrome_sandbox
- -Dlinux_sandbox_chrome_path=$(get_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"
-
- # Disable gpu rendering, it is incompatible with nvidia-drivers,
- # bug #319331.
- myconf="${myconf} -Denable_gpu=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
- # TODO: check this again after
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
- 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
-
- # Work around a likely GCC bug, see bug #331945.
- if [[ "$(gcc-major-version)$(gcc-minor-version)" == "45" ]]; then
- append-flags -fno-ipa-cp
- 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() {
- dodir "$(get_chromium_home)"
-
- exeinto "$(get_chromium_home)"
- pax-mark m out/Release/chrome
- doexe out/Release/chrome
- doexe out/Release/chrome_sandbox
- fperms 4755 "$(get_chromium_home)/chrome_sandbox"
- doexe out/Release/xdg-settings
- doexe "${FILESDIR}"/chromium-launcher.sh
-
- insinto "$(get_chromium_home)"
- doins out/Release/chrome.pak || die "installing chrome.pak failed"
- doins out/Release/resources.pak || die "installing resources.pak failed"
-
- 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
-
- doexe out/Release/ffmpegsumo_nolink || die
- doexe out/Release/libffmpegsumo.so || die
-
- # Install icon and desktop entry.
- newicon out/Release/product_logo_48.png ${PN}-browser.png
- dosym "$(get_chromium_home)/chromium-launcher.sh" /usr/bin/chromium
- make_desktop_entry chromium "Chromium" ${PN}-browser "Network;WebBrowser" \
- "MimeType=text/html;text/xml;application/xhtml+xml;"
- 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
-}
diff --git a/www-client/chromium/chromium-6.0.472.63-r1.ebuild b/www-client/chromium/chromium-6.0.472.63-r1.ebuild
deleted file mode 100644
index 25061fd82442..000000000000
--- a/www-client/chromium/chromium-6.0.472.63-r1.ebuild
+++ /dev/null
@@ -1,223 +0,0 @@
-# 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.472.63-r1.ebuild,v 1.1 2010/09/23 12:28:23 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 gnome-keyring"
-
-RDEPEND="app-arch/bzip2
- >=dev-libs/libevent-1.4.13
- >=dev-libs/nss-3.12.3
- >=gnome-base/gconf-2.24.0
- gnome-keyring? ( >=gnome-base/gnome-keyring-2.28.2 )
- >=media-libs/alsa-lib-1.0.19
- media-libs/jpeg:0
- media-libs/libpng
- cups? ( >=net-print/cups-1.4.4 )
- 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
- >=gnome-base/gnome-keyring-2.28.2
- 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"
-
-get_chromium_home() {
- echo "/usr/$(get_libdir)/chromium-browser"
-}
-
-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() {
- # Fix compilation, bug #332131.
- epatch "${FILESDIR}"/${PN}-make-3.82-compatibility-r0.patch
-
- # Add Gentoo plugin paths.
- epatch "${FILESDIR}"/${PN}-plugins-path-r0.patch
-
- remove_bundled_lib "third_party/bzip2"
- remove_bundled_lib "third_party/codesighs"
- remove_bundled_lib "third_party/cros"
- remove_bundled_lib "third_party/jemalloc"
- remove_bundled_lib "third_party/lcov"
- remove_bundled_lib "third_party/libevent"
- remove_bundled_lib "third_party/libjpeg"
- remove_bundled_lib "third_party/libpng"
- remove_bundled_lib "third_party/lzma_sdk"
- remove_bundled_lib "third_party/molokocacao"
- remove_bundled_lib "third_party/ocmock"
- remove_bundled_lib "third_party/py"
- remove_bundled_lib "third_party/pyftpdlib"
- remove_bundled_lib "third_party/simplejson"
- remove_bundled_lib "third_party/tlslite"
- # TODO: also remove third_party/libxml and third_party/libxslt when
- # http://crbug.com/29333 is fixed.
- # TODO: also remove third_party/zlib. For now the compilation fails if we
- # remove it (minizip-related).
-}
-
-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 (http://crbug.com/50678).
- # TODO: use_system_libxml (http://crbug.com/29333).
- # 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_libevent=1
- -Duse_system_libjpeg=1
- -Duse_system_libpng=1
- -Duse_system_zlib=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
-
- if use "gnome-keyring"; then
- myconf="${myconf} -Dlinux_link_gnome_keyring=1"
- else
- # TODO: we should also disable code trying to dlopen
- # gnome-keyring in that case.
- myconf="${myconf} -Dlinux_link_gnome_keyring=0"
- fi
-
- # Enable sandbox.
- myconf="${myconf}
- -Dlinux_sandbox_path=$(get_chromium_home)/chrome_sandbox
- -Dlinux_sandbox_chrome_path=$(get_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"
-
- # Disable gpu rendering, it is incompatible with nvidia-drivers,
- # bug #319331.
- myconf="${myconf} -Denable_gpu=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
- # TODO: check this again after
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39509 is fixed.
- 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
-
- # Work around a likely GCC bug, see bug #331945.
- if [[ "$(gcc-major-version)$(gcc-minor-version)" == "45" ]]; then
- append-flags -fno-ipa-cp
- 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() {
- dodir "$(get_chromium_home)"
-
- exeinto "$(get_chromium_home)"
- pax-mark m out/Release/chrome
- doexe out/Release/chrome
- doexe out/Release/chrome_sandbox
- fperms 4755 "$(get_chromium_home)/chrome_sandbox"
- doexe out/Release/xdg-settings
- doexe "${FILESDIR}"/chromium-launcher.sh
-
- insinto "$(get_chromium_home)"
- doins out/Release/chrome.pak || die "installing chrome.pak failed"
- doins out/Release/resources.pak || die "installing resources.pak failed"
-
- 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
-
- doexe out/Release/ffmpegsumo_nolink || die
- doexe out/Release/libffmpegsumo.so || die
-
- # Install icon and desktop entry.
- newicon out/Release/product_logo_48.png ${PN}-browser.png
- dosym "$(get_chromium_home)/chromium-launcher.sh" /usr/bin/chromium
- make_desktop_entry chromium "Chromium" ${PN}-browser "Network;WebBrowser" \
- "MimeType=text/html;text/xml;application/xhtml+xml;"
- 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
-}
diff --git a/www-client/chromium/chromium-7.0.517.13.ebuild b/www-client/chromium/chromium-7.0.536.2.ebuild
index 55e513ab7781..269a18d281ff 100644
--- a/www-client/chromium/chromium-7.0.517.13.ebuild
+++ b/www-client/chromium/chromium-7.0.536.2.ebuild
@@ -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-7.0.517.13.ebuild,v 1.1 2010/09/27 09:53:11 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-7.0.536.2.ebuild,v 1.1 2010/10/01 08:34:59 phajdan.jr Exp $
EAPI="2"
@@ -13,9 +13,10 @@ SRC_URI="http://build.chromium.org/buildbot/official/${P}.tar.bz2"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~x86"
-IUSE="cups gnome gnome-keyring"
+IUSE="cups gnome gnome-keyring system-sqlite"
RDEPEND="app-arch/bzip2
+ system-sqlite? ( >=dev-db/sqlite-3.6.23.1[fts3,secure-delete] )
>=dev-libs/icu-4.4.1
>=dev-libs/libevent-1.4.13
dev-libs/libxml2
@@ -64,8 +65,9 @@ src_prepare() {
# Add Gentoo plugin paths.
epatch "${FILESDIR}"/${PN}-plugins-path-r0.patch
- # Make compile-time dependency on gnome-keyring optional, bug #332411.
- epatch "${FILESDIR}"/${PN}-gnome-keyring-r0.patch
+ # Small fixes to the system-provided sqlite support,
+ # to be upstreamed.
+ epatch "${FILESDIR}"/${PN}-system-sqlite-r0.patch
remove_bundled_lib "third_party/bzip2"
remove_bundled_lib "third_party/codesighs"
@@ -86,6 +88,11 @@ src_prepare() {
remove_bundled_lib "third_party/tlslite"
# TODO: also remove third_party/zlib. For now the compilation fails if we
# remove it (minizip-related).
+
+ if use system-sqlite; then
+ remove_bundled_lib "third_party/sqlite/src"
+ remove_bundled_lib "third_party/sqlite/preprocessed"
+ fi
}
src_configure() {
@@ -97,7 +104,6 @@ src_configure() {
# Use system-provided libraries.
# TODO: use_system_ffmpeg (http://crbug.com/50678).
- # TODO: use_system_sqlite (http://crbug.com/22208).
# TODO: use_system_hunspell (upstream changes needed).
# TODO: use_system_ssl when we have a recent enough system NSS.
myconf+="
@@ -109,6 +115,10 @@ src_configure() {
-Duse_system_libxml=1
-Duse_system_zlib=1"
+ if use system-sqlite; then
+ myconf+=" -Duse_system_sqlite=1"
+ fi
+
# The dependency on cups is optional, see bug #324105.
if use cups; then
myconf+=" -Duse_cups=1"
@@ -133,10 +143,6 @@ src_configure() {
# and the performance gain isn't worth it.
myconf+=" -Dv8_use_snapshot=0"
- # Disable tcmalloc memory allocator. It causes problems,
- # for example bug #320419.
- myconf+=" -Dlinux_use_tcmalloc=0"
-
# Use target arch detection logic from bug #296917.
local myarch="$ABI"
[[ $myarch = "" ]] && myarch="$ARCH"
@@ -169,16 +175,11 @@ src_configure() {
# the build to fail because of that.
myconf+=" -Dwerror="
- build/gyp_chromium -f make build/all.gyp ${myconf} --depth=. || die
+ build/gyp_chromium --depth=. ${myconf} || die
}
src_compile() {
- emake -r V=1 chrome chrome_sandbox BUILDTYPE=Release \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- AR="$(tc-getAR)" \
- RANLIB="$(tc-getRANLIB)" \
- || die
+ emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die
}
src_install() {
diff --git a/www-client/chromium/chromium-9999.ebuild b/www-client/chromium/chromium-9999.ebuild
index 6dc49ff3f20e..5da0c86f5569 100644
--- a/www-client/chromium/chromium-9999.ebuild
+++ b/www-client/chromium/chromium-9999.ebuild
@@ -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.86 2010/09/23 12:31:25 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999.ebuild,v 1.87 2010/10/01 08:34:59 phajdan.jr Exp $
EAPI="2"
@@ -15,9 +15,10 @@ EGCLIENT_REPO_URI="http://src.chromium.org/svn/trunk/src/"
LICENSE="BSD"
SLOT="0"
KEYWORDS=""
-IUSE="cups gnome gnome-keyring"
+IUSE="cups gnome gnome-keyring system-sqlite"
RDEPEND="app-arch/bzip2
+ system-sqlite? ( >=dev-db/sqlite-3.6.23.1[fts3,secure-delete] )
>=dev-libs/icu-4.4.1
>=dev-libs/libevent-1.4.13
dev-libs/libxml2
@@ -109,6 +110,10 @@ src_prepare() {
# Add Gentoo plugin paths.
epatch "${FILESDIR}"/${PN}-plugins-path-r0.patch
+ # Small fixes to the system-provided sqlite support,
+ # to be upstreamed.
+ epatch "${FILESDIR}"/${PN}-system-sqlite-r0.patch
+
remove_bundled_lib "third_party/bzip2"
remove_bundled_lib "third_party/codesighs"
remove_bundled_lib "third_party/cros"
@@ -128,6 +133,11 @@ src_prepare() {
remove_bundled_lib "third_party/tlslite"
# TODO: also remove third_party/zlib. For now the compilation fails if we
# remove it (minizip-related).
+
+ if use system-sqlite; then
+ remove_bundled_lib "third_party/sqlite/src"
+ remove_bundled_lib "third_party/sqlite/preprocessed"
+ fi
}
src_configure() {
@@ -139,7 +149,6 @@ src_configure() {
# Use system-provided libraries.
# TODO: use_system_ffmpeg (http://crbug.com/50678).
- # TODO: use_system_sqlite (http://crbug.com/22208).
# TODO: use_system_hunspell (upstream changes needed).
# TODO: use_system_ssl when we have a recent enough system NSS.
myconf+="
@@ -151,6 +160,10 @@ src_configure() {
-Duse_system_libxml=1
-Duse_system_zlib=1"
+ if use system-sqlite; then
+ myconf+=" -Duse_system_sqlite=1"
+ fi
+
# The dependency on cups is optional, see bug #324105.
if use cups; then
myconf+=" -Duse_cups=1"
@@ -175,10 +188,6 @@ src_configure() {
# and the performance gain isn't worth it.
myconf+=" -Dv8_use_snapshot=0"
- # Disable tcmalloc memory allocator. It causes problems,
- # for example bug #320419.
- myconf+=" -Dlinux_use_tcmalloc=0"
-
# Use target arch detection logic from bug #296917.
local myarch="$ABI"
[[ $myarch = "" ]] && myarch="$ARCH"
@@ -211,16 +220,11 @@ src_configure() {
# the build to fail because of that.
myconf+=" -Dwerror="
- build/gyp_chromium -f make build/all.gyp ${myconf} --depth=. || die
+ build/gyp_chromium --depth=. ${myconf} || die
}
src_compile() {
- emake -r V=1 chrome chrome_sandbox BUILDTYPE=Release \
- CC="$(tc-getCC)" \
- CXX="$(tc-getCXX)" \
- AR="$(tc-getAR)" \
- RANLIB="$(tc-getRANLIB)" \
- || die
+ emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die
}
src_install() {
diff --git a/www-client/chromium/files/chromium-system-sqlite-r0.patch b/www-client/chromium/files/chromium-system-sqlite-r0.patch
new file mode 100644
index 000000000000..1fa919769731
--- /dev/null
+++ b/www-client/chromium/files/chromium-system-sqlite-r0.patch
@@ -0,0 +1,50 @@
+--- third_party/sqlite/sqlite3.h.orig 2010-09-30 13:13:26.000000000 +0200
++++ third_party/sqlite/sqlite3.h 2010-09-30 13:13:37.000000000 +0200
+@@ -14,7 +14,7 @@
+
+ // A no-op implementation of database preloading (not available
+ // when using system sqlite).
+-int sqlite3Preload(sqlite3 *db) { return SQLITE_OK; }
++int sqlite3Preload(sqlite3 *db);
+ #else
+ #include "third_party/sqlite/preprocessed/sqlite3.h"
+ #endif
+--- third_party/sqlite/sqlite.gyp.orig 2010-09-30 11:49:48.000000000 +0200
++++ third_party/sqlite/sqlite.gyp 2010-09-30 11:51:38.000000000 +0200
+@@ -32,7 +32,7 @@
+ },
+ }],
+ ['(OS=="linux" or OS=="freebsd" or OS=="openbsd") and use_system_sqlite', {
+- 'type': 'settings',
++ 'type': '<(library)',
+ 'direct_dependent_settings': {
+ 'cflags': [
+ # This next command produces no output but it it will fail (and
+@@ -54,6 +54,9 @@
+ '<!@(pkg-config --libs-only-l sqlite3)',
+ ],
+ },
++ 'sources': [
++ 'stubs.cc',
++ ],
+ }, { # else: OS != "linux" or ! use_system_sqlite
+ 'product_name': 'sqlite3',
+ 'type': '<(library)',
+--- /dev/null 2010-09-03 08:04:12.886666449 +0200
++++ third_party/sqlite/stubs.cc 2010-09-30 11:53:35.000000000 +0200
+@@ -0,0 +1,5 @@
++#include <sqlite3.h>
++
++int sqlite3Preload(sqlite3 *db) {
++ return SQLITE_OK;
++}
+--- chrome/chrome.gyp.orig 2010-10-01 06:57:23.000000000 +0200
++++ chrome/chrome.gyp 2010-10-01 06:58:09.000000000 +0200
+@@ -1018,6 +1018,7 @@
+ '_USE_32BIT_TIME_T',
+ ],
+ 'dependencies': [
++ 'common',
+ '../skia/skia.gyp:skia',
+ '../third_party/libjingle/libjingle.gyp:libjingle',
+ 'browser/sync/protocol/sync_proto.gyp:sync_proto_cpp',
diff --git a/www-client/chromium/metadata.xml b/www-client/chromium/metadata.xml
index 47002a437f00..593fb01b9ed4 100644
--- a/www-client/chromium/metadata.xml
+++ b/www-client/chromium/metadata.xml
@@ -3,4 +3,8 @@
<pkgmetadata>
<herd>chromium</herd>
<longdescription>Chromium is the open-source web browser project behind Google Chrome</longdescription>
+ <use>
+ <flag name="system-sqlite">Use the system-wide <pkg>dev-db/sqlite</pkg>
+ installation with secure-delete enabled</flag>
+ </use>
</pkgmetadata>