diff options
author | Paweł Hajdan <phajdan.jr@gentoo.org> | 2011-01-06 10:11:17 +0000 |
---|---|---|
committer | Paweł Hajdan <phajdan.jr@gentoo.org> | 2011-01-06 10:11:17 +0000 |
commit | d26bdb6add04be524933d35ced2bf20a27a9f2d7 (patch) | |
tree | eb9f36f9400004a4d8dc3eaeb3210d2fe4a8ec7c /dev-lang | |
parent | Use the proper virtual dep instead (diff) | |
download | gentoo-2-d26bdb6add04be524933d35ced2bf20a27a9f2d7.tar.gz gentoo-2-d26bdb6add04be524933d35ced2bf20a27a9f2d7.tar.bz2 gentoo-2-d26bdb6add04be524933d35ced2bf20a27a9f2d7.zip |
Backport an upstream patch that is needed to fix bug #348609 reported by redneb <redneb@gmx.com>.
(Portage version: 2.1.9.25/cvs/Linux i686)
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/v8/ChangeLog | 11 | ||||
-rw-r--r-- | dev-lang/v8/files/v8-upstream-bug-1016-r0.patch | 30 | ||||
-rw-r--r-- | dev-lang/v8/v8-2.5.9.6-r1.ebuild (renamed from dev-lang/v8/v8-3.0.0.1.ebuild) | 6 | ||||
-rw-r--r-- | dev-lang/v8/v8-3.0.0.1-r1.ebuild | 92 |
4 files changed, 137 insertions, 2 deletions
diff --git a/dev-lang/v8/ChangeLog b/dev-lang/v8/ChangeLog index 1f6fe47c80a5..06cb82eba969 100644 --- a/dev-lang/v8/ChangeLog +++ b/dev-lang/v8/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for dev-lang/v8 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/ChangeLog,v 1.22 2011/01/05 15:09:28 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/ChangeLog,v 1.23 2011/01/06 10:11:17 phajdan.jr Exp $ + +*v8-3.0.0.1-r1 (06 Jan 2011) +*v8-2.5.9.6-r1 (06 Jan 2011) + + 06 Jan 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> + +v8-2.5.9.6-r1.ebuild, -v8-3.0.0.1.ebuild, +v8-3.0.0.1-r1.ebuild, + +files/v8-upstream-bug-1016-r0.patch: + Backport an upstream patch that is needed to fix bug #348609 reported by + redneb <redneb@gmx.com>. *v8-2.5.9.6 (05 Jan 2011) diff --git a/dev-lang/v8/files/v8-upstream-bug-1016-r0.patch b/dev-lang/v8/files/v8-upstream-bug-1016-r0.patch new file mode 100644 index 000000000000..99a3a62a142d --- /dev/null +++ b/dev-lang/v8/files/v8-upstream-bug-1016-r0.patch @@ -0,0 +1,30 @@ +--- include/v8.h.orig 2011-01-06 10:31:51.000000000 +0100 ++++ include/v8.h 2011-01-06 10:33:16.000000000 +0100 +@@ -1631,9 +1631,9 @@ + * the backing store is preserved while V8 has a reference. + */ + V8EXPORT void SetIndexedPropertiesToPixelData(uint8_t* data, int length); +- bool HasIndexedPropertiesInPixelData(); +- uint8_t* GetIndexedPropertiesPixelData(); +- int GetIndexedPropertiesPixelDataLength(); ++ V8EXPORT bool HasIndexedPropertiesInPixelData(); ++ V8EXPORT uint8_t* GetIndexedPropertiesPixelData(); ++ V8EXPORT int GetIndexedPropertiesPixelDataLength(); + + /** + * Set the backing store of the indexed properties to be managed by the +@@ -1646,10 +1646,10 @@ + void* data, + ExternalArrayType array_type, + int number_of_elements); +- bool HasIndexedPropertiesInExternalArrayData(); +- void* GetIndexedPropertiesExternalArrayData(); +- ExternalArrayType GetIndexedPropertiesExternalArrayDataType(); +- int GetIndexedPropertiesExternalArrayDataLength(); ++ V8EXPORT bool HasIndexedPropertiesInExternalArrayData(); ++ V8EXPORT void* GetIndexedPropertiesExternalArrayData(); ++ V8EXPORT ExternalArrayType GetIndexedPropertiesExternalArrayDataType(); ++ V8EXPORT int GetIndexedPropertiesExternalArrayDataLength(); + + V8EXPORT static Local<Object> New(); + static inline Object* Cast(Value* obj); diff --git a/dev-lang/v8/v8-3.0.0.1.ebuild b/dev-lang/v8/v8-2.5.9.6-r1.ebuild index a818a60c9dc1..b850deffafe2 100644 --- a/dev-lang/v8/v8-3.0.0.1.ebuild +++ b/dev-lang/v8/v8-2.5.9.6-r1.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/dev-lang/v8/v8-3.0.0.1.ebuild,v 1.3 2011/01/02 15:51:34 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-2.5.9.6-r1.ebuild,v 1.1 2011/01/06 10:11:17 phajdan.jr Exp $ EAPI="2" @@ -37,6 +37,10 @@ src_prepare() { # Fix a compile error (bug #349794), to be upstreamed. epatch "${FILESDIR}"/${PN}-gentoo-bug-349794-r0.patch + # Backport an upstream bugfix for symbol visibility, + # see bug #348609. + epatch "${FILESDIR}"/${PN}-upstream-bug-1016-r0.patch + # Remove a test that is known to fail: # http://groups.google.com/group/v8-users/browse_thread/thread/b8a3f42b5aa18d06 rm test/mjsunit/debug-script.js || die diff --git a/dev-lang/v8/v8-3.0.0.1-r1.ebuild b/dev-lang/v8/v8-3.0.0.1-r1.ebuild new file mode 100644 index 000000000000..f225c175c9b7 --- /dev/null +++ b/dev-lang/v8/v8-3.0.0.1-r1.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.0.0.1-r1.ebuild,v 1.1 2011/01/06 10:11:17 phajdan.jr Exp $ + +EAPI="2" + +inherit eutils flag-o-matic multilib scons-utils toolchain-funcs + +DESCRIPTION="Google's open source JavaScript engine" +HOMEPAGE="http://code.google.com/p/v8" +SRC_URI="mirror://gentoo/${P}.tar.gz" +LICENSE="BSD" + +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="readline" + +RDEPEND="readline? ( >=sys-libs/readline-6.1 )" +DEPEND="${RDEPEND}" + +EXTRA_ESCONS="library=shared soname=on importenv=\"LINKFLAGS\"" + +pkg_setup() { + tc-export AR CC CXX RANLIB + + # Make the build respect LDFLAGS. + export LINKFLAGS="${LDFLAGS}" +} + +src_prepare() { + # Stop -Werror from breaking the build. + epatch "${FILESDIR}"/${PN}-no-werror-r0.patch + + # Respect the user's CFLAGS, including the optimization level. + epatch "${FILESDIR}"/${PN}-no-O3-r0.patch + + # Fix a compile error (bug #349794), to be upstreamed. + epatch "${FILESDIR}"/${PN}-gentoo-bug-349794-r0.patch + + # Backport an upstream bugfix for symbol visibility, + # see bug #348609. + epatch "${FILESDIR}"/${PN}-upstream-bug-1016-r0.patch + + # Remove a test that is known to fail: + # http://groups.google.com/group/v8-users/browse_thread/thread/b8a3f42b5aa18d06 + rm test/mjsunit/debug-script.js || die + + # Remove a test that behaves differently depending on FEATURES="userpriv", + # see bug #348558. + rm test/mjsunit/d8-os.js || die +} + +src_configure() { + # GCC issues multiple warnings about strict-aliasing issues in v8 code. + append-flags -fno-strict-aliasing +} + +src_compile() { + local myconf="" + + # Use target arch detection logic from bug #296917. + local myarch="$ABI" + [[ $myarch = "" ]] && myarch="$ARCH" + + if [[ $myarch = amd64 ]] ; then + myconf+=" arch=x64" + elif [[ $myarch = x86 ]] ; then + myconf+=" arch=ia32" + elif [[ $myarch = arm ]] ; then + myconf+=" arch=arm" + else + die "Failed to determine target arch, got '$myarch'." + fi + + escons $(use_scons readline console readline dumb) ${myconf} . || die +} + +src_install() { + insinto /usr + doins -r include || die + + dobin d8 || die + + dolib libv8-${PV}.so || die + dosym libv8-${PV}.so /usr/$(get_libdir)/libv8.so || die + + dodoc AUTHORS ChangeLog || die +} + +src_test() { + tools/test.py --no-build -p dots --shell d8 || die +} |