summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Hajdan <phajdan.jr@gentoo.org>2011-01-10 09:44:20 +0000
committerPaweł Hajdan <phajdan.jr@gentoo.org>2011-01-10 09:44:20 +0000
commit2023e2c83b2a52a77a944a8f19aeb2ad4e1acffb (patch)
tree9f71d0aedd8c9bdfaff1c73754b9905347642765 /www-client
parentppc64 stable wrt #350908 (diff)
downloadgentoo-2-2023e2c83b2a52a77a944a8f19aeb2ad4e1acffb.tar.gz
gentoo-2-2023e2c83b2a52a77a944a8f19aeb2ad4e1acffb.tar.bz2
gentoo-2-2023e2c83b2a52a77a944a8f19aeb2ad4e1acffb.zip
Change way how bundled libraries are removed (whitelisting instead of blacklisting).
(Portage version: 2.1.9.25/cvs/Linux i686)
Diffstat (limited to 'www-client')
-rw-r--r--www-client/chromium/ChangeLog10
-rw-r--r--www-client/chromium/chromium-10.0.628.0-r1.ebuild (renamed from www-client/chromium/chromium-10.0.612.1-r1.ebuild)104
-rw-r--r--www-client/chromium/chromium-9999.ebuild67
3 files changed, 92 insertions, 89 deletions
diff --git a/www-client/chromium/ChangeLog b/www-client/chromium/ChangeLog
index 0e235ee44184..bf3a3471b91d 100644
--- a/www-client/chromium/ChangeLog
+++ b/www-client/chromium/ChangeLog
@@ -1,6 +1,14 @@
# 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.256 2011/01/09 15:52:29 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/ChangeLog,v 1.257 2011/01/10 09:44:20 phajdan.jr Exp $
+
+*chromium-10.0.628.0-r1 (10 Jan 2011)
+
+ 10 Jan 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+ -chromium-10.0.612.1-r1.ebuild, +chromium-10.0.628.0-r1.ebuild,
+ chromium-9999.ebuild:
+ Change way how bundled libraries are removed (whitelisting instead of
+ blacklisting).
09 Jan 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
chromium-10.0.628.0.ebuild, chromium-9999.ebuild:
diff --git a/www-client/chromium/chromium-10.0.612.1-r1.ebuild b/www-client/chromium/chromium-10.0.628.0-r1.ebuild
index 5390c23ad9a9..a8add6585034 100644
--- a/www-client/chromium/chromium-10.0.612.1-r1.ebuild
+++ b/www-client/chromium/chromium-10.0.628.0-r1.ebuild
@@ -1,9 +1,10 @@
# 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-10.0.612.1-r1.ebuild,v 1.2 2011/01/02 15:31:35 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-10.0.628.0-r1.ebuild,v 1.1 2011/01/10 09:44:20 phajdan.jr Exp $
EAPI="3"
PYTHON_DEPEND="2:2.6"
+V8_DEPEND="3.0.4.1"
inherit eutils flag-o-matic multilib pax-utils portability python \
toolchain-funcs versionator virtualx
@@ -21,7 +22,7 @@ RDEPEND="app-arch/bzip2
system-sqlite? (
>=dev-db/sqlite-3.7.2[fts3,icu,secure-delete,threadsafe]
)
- system-v8? ( >=dev-lang/v8-3.0.0.1 )
+ system-v8? ( >=dev-lang/v8-${V8_DEPEND} )
dev-libs/dbus-glib
>=dev-libs/icu-4.4.1
>=dev-libs/libevent-1.4.13
@@ -64,19 +65,6 @@ egyp() {
"${@}"
}
-get_installed_v8_version() {
- best_version dev-lang/v8 | sed -e 's@dev-lang/v8-@@g'
-}
-
-remove_bundled_lib() {
- local out
- out="$(find $1 -type f \! -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
-}
-
pkg_setup() {
CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
@@ -112,51 +100,58 @@ pkg_setup() {
src_prepare() {
# Enable optional support for gecko-mediaplayer.
- epatch "${FILESDIR}"/${PN}-gecko-mediaplayer-r0.patch
+ epatch "${FILESDIR}"/${PN}-gecko-mediaplayer-r1.patch
# Make sure we don't use bundled libvpx headers.
- epatch "${FILESDIR}"/${PN}-system-vpx-r1.patch
-
- epatch "${FILESDIR}"/${PN}-system-icu-r2.patch
+ epatch "${FILESDIR}"/${PN}-system-vpx-r2.patch
epatch "${FILESDIR}"/${PN}-system-speex-r0.patch
- remove_bundled_lib "third_party/bzip2"
- remove_bundled_lib "third_party/codesighs"
- remove_bundled_lib "third_party/icu"
- 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/libvpx"
- remove_bundled_lib "third_party/libxml"
- remove_bundled_lib "third_party/libxslt"
- remove_bundled_lib "third_party/lzma_sdk"
- remove_bundled_lib "third_party/molokocacao"
- remove_bundled_lib "third_party/speex"
- remove_bundled_lib "third_party/ocmock"
- remove_bundled_lib "third_party/yasm"
- # TODO: also remove third_party/ffmpeg (needs to be compile-tested).
- # TODO: also remove third_party/zlib. For now the compilation fails if we
- # remove it (minizip-related).
+ # 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/gpsd/*' \
+ \! -path 'third_party/harfbuzz/*' \
+ \! -path 'third_party/hunspell/*' \
+ \! -path 'third_party/iccjpeg/*' \
+ \! -path 'third_party/libjingle/*' \
+ \! -path 'third_party/libsrtp/*' \
+ \! -path 'third_party/libwebp/*' \
+ \! -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/skia/*' \
+ \! -path 'third_party/sqlite/*' \
+ \! -path 'third_party/tcmalloc/*' \
+ \! -path 'third_party/undoview/*' \
+ \! -path 'third_party/xdg-utils/*' \
+ \! -path 'third_party/zlib/contrib/minizip/*' \
+ -delete || die
# Provide our own gyp file that links with the system speex.
# TODO: move this upstream.
cp "${FILESDIR}"/speex.gyp third_party/speex || die
+ # Check for the maintainer to ensure that the dependencies
+ # are up-to-date.
local v8_bundled="$(v8-extract-version v8/src/version.cc)"
- if use system-v8; then
- local v8_installed="$(get_installed_v8_version)"
- einfo "V8 version: bundled - ${v8_bundled}; installed - ${v8_installed}"
- version_is_at_least "${v8_bundled}" "${v8_installed}" || die
- else
- einfo "Bundled V8 version: ${v8_bundled}"
+ if [ "${V8_DEPEND}" != "${v8_bundled}" ]; then
+ die "update v8 dependency to ${v8_bundled}"
fi
if use system-sqlite; then
- remove_bundled_lib "third_party/sqlite/src"
- remove_bundled_lib "third_party/sqlite/preprocessed"
+ # Remove bundled sqlite, preserving the shim header.
+ find third_party/sqlite -type f \! -iname '*.gyp*' \
+ \! -path 'third_party/sqlite/sqlite3.h' \
+ -delete || die
fi
if use system-v8; then
@@ -164,7 +159,8 @@ src_prepare() {
# TODO: move this upstream.
cp "${FILESDIR}"/v8.gyp v8/tools/gyp || die
- remove_bundled_lib "v8"
+ # 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
@@ -276,13 +272,11 @@ src_configure() {
}
src_compile() {
- emake chrome chrome_sandbox base_unittests net_unittests \
- BUILDTYPE=Release V=1 || die
+ emake chrome chrome_sandbox BUILDTYPE=Release V=1 || die
pax-mark m out/Release/chrome
if use test; then
- emake base_unittests net_unittests \
- BUILDTYPE=Release V=1 || die
- pax-mark m out/Release/{base_unittests,net_unittests}
+ emake base_unittests BUILDTYPE=Release V=1 || die
+ pax-mark m out/Release/base_unittests
fi
}
@@ -297,11 +291,9 @@ src_test() {
die "locale ${mylocale} is not supported"
fi
- # Make test failures non-fatal for now. This needs more investigation.
+ # For more info see bug #350347.
LC_ALL="${mylocale}" maketype=out/Release/base_unittests virtualmake \
- || eerror "base_unittests failed"
- LC_ALL="${mylocale}" maketype=out/Release/net_unittests virtualmake \
- || eerror "net_unittests failed"
+ '--gtest_filter=-ICUStringConversionsTest.*' || die
}
src_install() {
diff --git a/www-client/chromium/chromium-9999.ebuild b/www-client/chromium/chromium-9999.ebuild
index 0bc20e43fe69..551e6561700d 100644
--- a/www-client/chromium/chromium-9999.ebuild
+++ b/www-client/chromium/chromium-9999.ebuild
@@ -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.ebuild,v 1.122 2011/01/09 15:52:29 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/chromium/chromium-9999.ebuild,v 1.123 2011/01/10 09:44:20 phajdan.jr Exp $
EAPI="3"
PYTHON_DEPEND="2:2.6"
@@ -109,15 +109,6 @@ egyp() {
"${@}"
}
-remove_bundled_lib() {
- local out
- out="$(find $1 -type f \! -iname '*.gyp' -print -delete)" \
- || ewarn "failed to remove bundled library $1"
- if [[ -z $out ]]; then
- ewarn "no files matched when removing bundled library $1"
- fi
-}
-
pkg_setup() {
CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
@@ -160,33 +151,44 @@ src_prepare() {
epatch "${FILESDIR}"/${PN}-system-speex-r0.patch
- remove_bundled_lib "third_party/bzip2"
- remove_bundled_lib "third_party/codesighs"
- remove_bundled_lib "third_party/icu"
- 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/libvpx"
- remove_bundled_lib "third_party/libxml"
- remove_bundled_lib "third_party/libxslt"
- remove_bundled_lib "third_party/lzma_sdk"
- remove_bundled_lib "third_party/molokocacao"
- remove_bundled_lib "third_party/speex"
- remove_bundled_lib "third_party/ocmock"
- remove_bundled_lib "third_party/yasm"
- # TODO: also remove third_party/ffmpeg (needs to be compile-tested).
- # TODO: also remove third_party/zlib. For now the compilation fails if we
- # remove it (minizip-related).
+ # 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/gpsd/*' \
+ \! -path 'third_party/harfbuzz/*' \
+ \! -path 'third_party/hunspell/*' \
+ \! -path 'third_party/iccjpeg/*' \
+ \! -path 'third_party/libjingle/*' \
+ \! -path 'third_party/libsrtp/*' \
+ \! -path 'third_party/libwebp/*' \
+ \! -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/skia/*' \
+ \! -path 'third_party/sqlite/*' \
+ \! -path 'third_party/tcmalloc/*' \
+ \! -path 'third_party/undoview/*' \
+ \! -path 'third_party/xdg-utils/*' \
+ \! -path 'third_party/zlib/contrib/minizip/*' \
+ -delete || die
# Provide our own gyp file that links with the system speex.
# TODO: move this upstream.
cp "${FILESDIR}"/speex.gyp third_party/speex || die
if use system-sqlite; then
- remove_bundled_lib "third_party/sqlite/src"
- remove_bundled_lib "third_party/sqlite/preprocessed"
+ # Remove bundled sqlite, preserving the shim header.
+ find third_party/sqlite -type f \! -iname '*.gyp*' \
+ \! -path 'third_party/sqlite/sqlite3.h' \
+ -delete || die
fi
if use system-v8; then
@@ -194,7 +196,8 @@ src_prepare() {
# TODO: move this upstream.
cp "${FILESDIR}"/v8.gyp v8/tools/gyp || die
- remove_bundled_lib "v8"
+ # 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