From 7aa50fdd92ab1cb21998751cb282a9d1ceb6b20a Mon Sep 17 00:00:00 2001 From: Fabian Groffen Date: Sat, 26 May 2012 10:10:50 +0000 Subject: Fix compilation on Darwin, bug #417401 Package-Manager: portage-2.2.01.20430-prefix/cvs/Darwin i386 --- dev-lang/v8/ChangeLog | 7 +++++- dev-lang/v8/Manifest | 21 +++++++++-------- dev-lang/v8/files/v8-3.10.8.10-darwin-arch.patch | 29 ++++++++++++++++++++++++ dev-lang/v8/v8-3.10.8.10.ebuild | 26 +++++++++++++++++---- dev-lang/v8/v8-3.10.8.7.ebuild | 4 ++-- dev-lang/v8/v8-3.11.3.ebuild | 26 +++++++++++++++++---- dev-lang/v8/v8-9999.ebuild | 26 +++++++++++++++++---- 7 files changed, 114 insertions(+), 25 deletions(-) create mode 100644 dev-lang/v8/files/v8-3.10.8.10-darwin-arch.patch (limited to 'dev-lang') diff --git a/dev-lang/v8/ChangeLog b/dev-lang/v8/ChangeLog index 79ee61f07848..6cce94065b6c 100644 --- a/dev-lang/v8/ChangeLog +++ b/dev-lang/v8/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for dev-lang/v8 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/ChangeLog,v 1.186 2012/05/25 02:08:22 floppym Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/ChangeLog,v 1.187 2012/05/26 10:10:50 grobian Exp $ + + 26 May 2012; Fabian Groffen + +files/v8-3.10.8.10-darwin-arch.patch, v8-3.10.8.10.ebuild, + v8-3.10.8.7.ebuild, v8-3.11.3.ebuild, v8-9999.ebuild: + Fix compilation on Darwin, bug #417401 *v8-3.10.8.10 (25 May 2012) diff --git a/dev-lang/v8/Manifest b/dev-lang/v8/Manifest index 44bdccc1d77d..a2a8318a415b 100644 --- a/dev-lang/v8/Manifest +++ b/dev-lang/v8/Manifest @@ -1,23 +1,24 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 +Hash: SHA1 +AUX v8-3.10.8.10-darwin-arch.patch 1146 RMD160 45af91bf5e64a6cd08803cdd4aa0c06ca14b0662 SHA1 4475690ddc37a5565d6d8662c0dd42cf5dfb6380 SHA256 4b352c597105d71a7f1c907062dec71891d7e89a9e8b617330509f60ba01cf88 DIST v8-3.10.8.10.tar.bz2 10063797 RMD160 4e35009c04fc2cd510b60d9af122caa61a943c1a SHA1 565174c7cffbfd02e7c0b9e6b91f12b02bcf36fa SHA256 412b90e52b2ba3373b3ca59b63857ff6371c216e0a763ffc49c60e7c190b1b3b DIST v8-3.10.8.7.tar.bz2 10063959 RMD160 b20ef13e5dfcd93d5d2d5d85138064338250ccb4 SHA1 7225a2d3bf8a27180d743a240785275b9d2948a0 SHA256 f411248f95de06297310eaf0d1195d913bb3dee92a0fbb8bc62193f00ff4ff08 DIST v8-3.11.3.tar.bz2 10069593 RMD160 dbf6ab21bafdc5a62751f16988615a33a9f74997 SHA1 d676bd5eb3785069d8d18842cca932143d54ed74 SHA256 52864dcceb50188331b6b6d472bda9988a0c4f3e7365f027b671cc54e78eb96e DIST v8-3.9.24.21.tar.bz2 9976966 RMD160 17cc6f24c69ffec464d2a7b6fab8ba051821fa1c SHA1 048800284803bd355215b5446b819810f0003958 SHA256 9eb48fed13f5d230044b5a38d44455d1212aa28da797721fb9ba1bba870c64c8 DIST v8-3.9.24.28.tar.bz2 9975177 RMD160 444565b92e7cce55f0792f2a643f425413e994ea SHA1 6dc38d96ede2a84c9bb9982e99674df1a5254374 SHA256 054f4fc90fc0e1960520058321925272812164b9e9dfd661636d7a4d74d127cd -EBUILD v8-3.10.8.10.ebuild 2754 RMD160 55445d0cf35bf1bbe9bf68b7ea243aaafeac0580 SHA1 0c9c721323cc92aea1236125dae42128b9f0053f SHA256 0e5e6b155d93cc2403ea46134afea70d5c7702249ff8b3d59979abfa9d00bcec -EBUILD v8-3.10.8.7.ebuild 2756 RMD160 4c9ff9378a12d0e71b305846ca4912ecd5321f4b SHA1 e82cfb519ce0ce994aa65169f756b4f4bc643bc7 SHA256 0ef56b20ecb48da80f61b32192be9893f0490ba8ad5414b71bb1a6f61444d771 -EBUILD v8-3.11.3.ebuild 2754 RMD160 0d852dfe5039e8fec5d6dfb07820b2f7e1305c1b SHA1 af603f774a5a12d0e4250631d32401b57ba42e99 SHA256 e0a8fb0bb48943d0bf01b089c837842d6fa401d3d5b2396f3465a188cf7f084f +EBUILD v8-3.10.8.10.ebuild 3433 RMD160 47261842a4018924113ff1340bceaeeedb99ce8b SHA1 c53c8f0e2d54e2b33f299d64938f0662dee88e06 SHA256 88b7e47514707463552cd990daa2d3b5db901218f090ff8ad186a62d0ec8d1c3 +EBUILD v8-3.10.8.7.ebuild 2731 RMD160 2ad379b29dad5142f55ac416783383814784490a SHA1 c8d0834c0cbfa1c2b937eae85e57ea851b75c59f SHA256 c1f7437c14458f7fbe2367e994319a68d9008906b74a5228521225760224006b +EBUILD v8-3.11.3.ebuild 3441 RMD160 82632c519c83cce9550bb240ffab67bb23eb82ae SHA1 4b668c1398a442aefcb5f1d120f573b9e3e0e280 SHA256 609cfb69386c756a29c80d52b1b3fc674596e1870b352307a77de61adf2ae515 EBUILD v8-3.9.24.21.ebuild 3659 RMD160 c2806d5cf90948cf116494d9c3880f79fe131cb4 SHA1 e023816bc53346a3121b868b4836936248775018 SHA256 b0f3fd49bc7ac6dc7e2366e328d0b72f27b34018959593913a4e52bb10835f30 EBUILD v8-3.9.24.28.ebuild 3662 RMD160 55d037ba89ca789164236117380ec16a80c3672a SHA1 5b7bad8fc64306b436e31699e5a3a3d5be59dc43 SHA256 4607d7c7419664f9e6d569abe9c11461dd339117e47c5627252099fe641b15c3 -EBUILD v8-9999.ebuild 2770 RMD160 6a3f73e6077e503bcd4b84a7b12b05618602aff1 SHA1 af6ca2fcdfaa8c172acbc3540751c51479235862 SHA256 23ef0e17a678b36e2ec9f1794da00580caf7e0d46a945301b90d8548e2734317 -MISC ChangeLog 30026 RMD160 435310d0a38feb6d8e7d792da3bae24f59076849 SHA1 57c87a27c40b678092bbfa11a98aec31e46cc553 SHA256 9e889193b597c7dad887ea60c8e2ee0466e4bc8098fdeeef33baa01f2ade6dde +EBUILD v8-9999.ebuild 3457 RMD160 e00d3768fbd1a722896d67ba6d0d75a095825021 SHA1 990cbd74aec0998eba6d368b387911a908611834 SHA256 8a68123503d60f1600ba88a3c30e9d44ee1329af080a4d25a2cd9e1b5f16ad26 +MISC ChangeLog 30237 RMD160 a96e1b31fabb2d56e165014013cf0274c965d620 SHA1 c51eea727c71a99aead444e872d10acca5390cdf SHA256 2cbd7e722b2b03244d3687bdf207ca5e0a8088bcd12f41d542e2226bb8ff82e8 MISC metadata.xml 162 RMD160 3485b95578a49782c3188a0f963f90c688287fe1 SHA1 46226eeaf4948209a093253f92010abea501daef SHA256 8a3ecdcf518f45ec4843398f9896c9b4d1c867ff2cf2851cf40b06f756f111e8 -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.17 (GNU/Linux) +Version: GnuPG v2.0.19 (Darwin) -iF4EAREIAAYFAk++6ZwACgkQC77qH+pIQ6QQjgEAuMRd6Cc3BbOP/gJIWHYjFTD7 -jn7H4SjsGUP9DXEySDQA+wXPZuog0Ry3dimR/9nM/ePbn3MddA8pcR0aBJPHwfaO -=Rjzm +iEYEARECAAYFAk/ArDAACgkQX3X2B8XHTolYVwCfcboZEfC1DMgpg/eW1kT4PvDQ +cYgAniBLlSgzT6mt3jyE2g2Oyt7zeQqu +=WKSq -----END PGP SIGNATURE----- diff --git a/dev-lang/v8/files/v8-3.10.8.10-darwin-arch.patch b/dev-lang/v8/files/v8-3.10.8.10-darwin-arch.patch new file mode 100644 index 000000000000..8fbb34980aa1 --- /dev/null +++ b/dev-lang/v8/files/v8-3.10.8.10-darwin-arch.patch @@ -0,0 +1,29 @@ +https://bugs.gentoo.org/show_bug.cgi?id=417401 + +The Prefix toolchain on OSX doesn't support -arch, even though using +gcc-apple. This is not really a problem (FSF GCC doesn't understand +this flag either), because we never build FAT objects. It is however a +problem when people forcibly add -arch to CFLAGS and LDFLAGS. Leave it +to the toolchain such that we can also build 64-bits. (Pro!) + +Request for removing this when unnecessary: +http://code.google.com/p/gyp/issues/detail?id=260 + +--- build/gyp/pylib/gyp/xcode_emulation.py ++++ build/gyp/pylib/gyp/xcode_emulation.py +@@ -317,7 +317,6 @@ + # TODO: Supporting fat binaries will be annoying. + self._WarnUnimplemented('ARCHS') + archs = ['i386'] +- cflags.append('-arch ' + archs[0]) + + if archs[0] in ('i386', 'x86_64'): + if self._Test('GCC_ENABLE_SSE3_EXTENSIONS', 'YES', default='NO'): +@@ -435,7 +434,6 @@ + # TODO: Supporting fat binaries will be annoying. + self._WarnUnimplemented('ARCHS') + archs = ['i386'] +- ldflags.append('-arch ' + archs[0]) + + # Xcode adds the product directory by default. + ldflags.append('-L' + product_dir) diff --git a/dev-lang/v8/v8-3.10.8.10.ebuild b/dev-lang/v8/v8-3.10.8.10.ebuild index 2f7632609586..1108efc49b8a 100644 --- a/dev-lang/v8/v8-3.10.8.10.ebuild +++ b/dev-lang/v8/v8-3.10.8.10.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.10.8.10.ebuild,v 1.1 2012/05/25 02:08:22 floppym Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.10.8.10.ebuild,v 1.2 2012/05/26 10:10:50 grobian Exp $ EAPI="4" @@ -22,6 +22,14 @@ pkg_setup() { python_pkg_setup } +src_prepare() { + # strip unsupported -arch (in Prefix) for OSX, e.g. bug #417401 + epatch "${FILESDIR}"/${P}-darwin-arch.patch + # make sure we don't target an anchient version of OSX + # issue http://code.google.com/p/v8/issues/detail?id=2151 + #sed -i -e "/MACOSX_DEPLOYMENT_TARGET/d" build/standalone.gypi || die +} + src_compile() { tc-export AR CC CXX RANLIB @@ -77,14 +85,24 @@ src_install() { insinto /usr doins -r include || die - dobin out/${mytarget}/d8 || die - if [[ ${CHOST} == *-darwin* ]] ; then # buildsystem is too horrific to get this built correctly - mv out/${mytarget}/lib.target/libv8.so.${soname_version} \ + mkdir -p out/${mytarget}/lib.target + mv out/${mytarget}/libv8.so.${soname_version} \ out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \ + out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) \ + || die + install_name_tool \ + -change \ + "${S}"/out/${mytarget}/libv8.so.${soname_version} \ + "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \ + out/${mytarget}/d8 || die fi + dobin out/${mytarget}/d8 || die + dolib out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die dosym libv8$(get_libname ${soname_version}) /usr/$(get_libdir)/libv8$(get_libname) || die diff --git a/dev-lang/v8/v8-3.10.8.7.ebuild b/dev-lang/v8/v8-3.10.8.7.ebuild index d2fb66056d86..653fe15ef00c 100644 --- a/dev-lang/v8/v8-3.10.8.7.ebuild +++ b/dev-lang/v8/v8-3.10.8.7.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.10.8.7.ebuild,v 1.1 2012/05/21 14:27:34 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.10.8.7.ebuild,v 1.2 2012/05/26 10:10:50 grobian Exp $ EAPI="4" @@ -14,7 +14,7 @@ SRC_URI="http://commondatastorage.googleapis.com/chromium-browser-official/${P}. LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~x86 ~x64-macos ~x86-macos" +KEYWORDS="~amd64 ~x86" IUSE="" pkg_setup() { diff --git a/dev-lang/v8/v8-3.11.3.ebuild b/dev-lang/v8/v8-3.11.3.ebuild index 4bbb23b28bf8..804a4550989b 100644 --- a/dev-lang/v8/v8-3.11.3.ebuild +++ b/dev-lang/v8/v8-3.11.3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.11.3.ebuild,v 1.1 2012/05/22 20:05:57 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.11.3.ebuild,v 1.2 2012/05/26 10:10:50 grobian Exp $ EAPI="4" @@ -22,6 +22,14 @@ pkg_setup() { python_pkg_setup } +src_prepare() { + # strip unsupported -arch (in Prefix) for OSX, e.g. bug #417401 + epatch "${FILESDIR}"/${PN}-3.10.8.10-darwin-arch.patch + # make sure we don't target an anchient version of OSX + # issue http://code.google.com/p/v8/issues/detail?id=2151 + #sed -i -e "/MACOSX_DEPLOYMENT_TARGET/d" build/standalone.gypi || die +} + src_compile() { tc-export AR CC CXX RANLIB @@ -77,14 +85,24 @@ src_install() { insinto /usr doins -r include || die - dobin out/${mytarget}/d8 || die - if [[ ${CHOST} == *-darwin* ]] ; then # buildsystem is too horrific to get this built correctly - mv out/${mytarget}/lib.target/libv8.so.${soname_version} \ + mkdir -p out/${mytarget}/lib.target + mv out/${mytarget}/libv8.so.${soname_version} \ out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \ + out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) \ + || die + install_name_tool \ + -change \ + "${S}"/out/${mytarget}/libv8.so.${soname_version} \ + "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \ + out/${mytarget}/d8 || die fi + dobin out/${mytarget}/d8 || die + dolib out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die dosym libv8$(get_libname ${soname_version}) /usr/$(get_libdir)/libv8$(get_libname) || die diff --git a/dev-lang/v8/v8-9999.ebuild b/dev-lang/v8/v8-9999.ebuild index ad4552a7ca69..f8badf763232 100644 --- a/dev-lang/v8/v8-9999.ebuild +++ b/dev-lang/v8/v8-9999.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-9999.ebuild,v 1.27 2012/04/12 12:36:21 phajdan.jr Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-9999.ebuild,v 1.28 2012/05/26 10:10:50 grobian Exp $ EAPI="4" @@ -28,6 +28,14 @@ src_unpack() { make dependencies || die } +src_prepare() { + # strip unsupported -arch (in Prefix) for OSX, e.g. bug #417401 + epatch "${FILESDIR}"/${PN}-3.10.8.10-darwin-arch.patch + # make sure we don't target an anchient version of OSX + # issue http://code.google.com/p/v8/issues/detail?id=2151 + #sed -i -e "/MACOSX_DEPLOYMENT_TARGET/d" build/standalone.gypi || die +} + src_compile() { tc-export AR CC CXX RANLIB @@ -84,14 +92,24 @@ src_install() { insinto /usr doins -r include || die - dobin out/${mytarget}/d8 || die - if [[ ${CHOST} == *-darwin* ]] ; then # buildsystem is too horrific to get this built correctly - mv out/${mytarget}/lib.target/libv8.so.${soname_version} \ + mkdir -p out/${mytarget}/lib.target + mv out/${mytarget}/libv8.so.${soname_version} \ out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \ + out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) \ + || die + install_name_tool \ + -change \ + "${S}"/out/${mytarget}/libv8.so.${soname_version} \ + "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \ + out/${mytarget}/d8 || die fi + dobin out/${mytarget}/d8 || die + dolib out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die dosym libv8$(get_libname ${soname_version}) /usr/$(get_libdir)/libv8$(get_libname) || die -- cgit v1.2.3-65-gdbad