diff options
author | 2012-02-16 12:18:54 +0000 | |
---|---|---|
committer | 2012-02-16 12:18:54 +0000 | |
commit | 52e93912466d88024a24ff6bce5c8bac66b2f9c2 (patch) | |
tree | 3da77e90cb07e1030a85eabd9b6767d716a9070e /dev-python | |
parent | Fix build with new automake, bug #398971 by Juergen Rose and Rolf S. Arvidson... (diff) | |
download | historical-52e93912466d88024a24ff6bce5c8bac66b2f9c2.tar.gz historical-52e93912466d88024a24ff6bce5c8bac66b2f9c2.tar.bz2 historical-52e93912466d88024a24ff6bce5c8bac66b2f9c2.zip |
Made xml mandatory, stackless is built by default, split patches.
Package-Manager: portage-2.1.10.46/cvs/Linux x86_64
Diffstat (limited to 'dev-python')
-rw-r--r-- | dev-python/pypy/ChangeLog | 9 | ||||
-rw-r--r-- | dev-python/pypy/Manifest | 13 | ||||
-rw-r--r-- | dev-python/pypy/files/1.8-elf-metadata-26a8d3fc57a7.patch | 10 | ||||
-rw-r--r-- | dev-python/pypy/files/1.8-sext-instructions-02dc2f6160ee.patch | 22 | ||||
-rw-r--r-- | dev-python/pypy/pypy-1.8-r1.ebuild | 99 |
5 files changed, 147 insertions, 6 deletions
diff --git a/dev-python/pypy/ChangeLog b/dev-python/pypy/ChangeLog index 757ccd02dbba..79109b3f352a 100644 --- a/dev-python/pypy/ChangeLog +++ b/dev-python/pypy/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-python/pypy # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-python/pypy/ChangeLog,v 1.14 2012/02/14 02:16:51 floppym Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-python/pypy/ChangeLog,v 1.15 2012/02/16 12:18:54 djc Exp $ + +*pypy-1.8-r1 (16 Feb 2012) + + 16 Feb 2012; Dirkjan Ochtman <djc@gentoo.org> +pypy-1.8-r1.ebuild, + +files/1.8-sext-instructions-02dc2f6160ee.patch, + +files/1.8-elf-metadata-26a8d3fc57a7.patch: + Made xml mandatory, stackless is built by default, split patches. 14 Feb 2012; Mike Gilbert <floppym@gentoo.org> pypy-1.7-r2.ebuild, pypy-1.8.ebuild: diff --git a/dev-python/pypy/Manifest b/dev-python/pypy/Manifest index b2eac2b9b41b..7ac5afa579a6 100644 --- a/dev-python/pypy/Manifest +++ b/dev-python/pypy/Manifest @@ -1,20 +1,23 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 +Hash: SHA512 AUX 1.7-patches.patch 1842 RMD160 ee42ff2383477353cf0230a8567b22d87a4b4d56 SHA1 4fa9f1ac91b3b5466e21d8d58dbc9f09b1fd90dd SHA256 1417373a73221b65dcccdee1539a7a11018384ea3f7908cacc2e07b525ebe291 AUX 1.7-scripts-location.patch 412 RMD160 811c3cc38370f97274f8ec5cc36f34b3e79dae56 SHA1 c03fa9679443ed9461829745f5bb00cfecd3eb22 SHA256 abc39fbbf69d1d6b478a4a16626950e8e0b607fb05c6e1e1c10618c59fccdda9 +AUX 1.8-elf-metadata-26a8d3fc57a7.patch 569 RMD160 de5a440cb41ab0249141304c12f9a35af1565c87 SHA1 57daa224b13ec3e6cf7f23d02d896527137dca6b SHA256 8c695811ca9eae7d3b81674e8de255dc84e242972041ca54093a3d96f40fe34b +AUX 1.8-sext-instructions-02dc2f6160ee.patch 1100 RMD160 c1f83411a70af07c0987ac51c81806de70a5d991 SHA1 8430932adfaadf903a1ad5a4635644157e04ee78 SHA256 599af03fb41902cb00b6c1768febd921276efbdc7b550d010676cc210f7564bb AUX pypy-1.7-distutils-fix_handling_of_executables_and_flags.patch 18064 RMD160 8e86cff09340448f3e49ccc626efa40e9463273a SHA1 533cad04bc8d96e2ba1a09e8249a3efd97e46b1d SHA256 43cbabdf5f7b094eb969c754bb6513fa324b1fadb40b37d78bd1ad47194d787a AUX pypy-1.7-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch 569 RMD160 540aa0881ea1fef56cea3734fa09f5c3366d5bb0 SHA1 5f4939129a9a56c9f9da0e82851f675fd7c73209 SHA256 55ea809a5f3e264b1905b06aa3af78aae149451e7d74a98d11e87629ab69493e DIST pypy-1.7.tar.bz2 14844629 RMD160 8532c1e7fa320de3a12463c9de10d03969253faa SHA1 b4be3a8dc69cd838a49382867db3c41864b9e8d9 SHA256 3236b0870237e2ed8f3af5f899183a5c71d4c8d7ff1163a3352d6ea5b172596a DIST pypy-1.8.tar.bz2 14927806 RMD160 70fe569b466357ee64685c8ce15278d24862c711 SHA1 4ff684619671d6076879eff88343184d7656c699 SHA256 ac98ad6d884207f8325ff4c783104ebea57a3fcddfef32abcdf97fd4307b6287 EBUILD pypy-1.7-r2.ebuild 2635 RMD160 631313c8a3a0828392dd5006431078806d864af2 SHA1 6f871c8a7b0ad7d7cffe0f2aa6b50e2883d6acb1 SHA256 19a79a05f16a4afd65c69c9ee876115580646e3ccae587c0fefd4cec420a0682 +EBUILD pypy-1.8-r1.ebuild 2779 RMD160 d80f22a8ce13e6f8c5b011670074953306089fbe SHA1 124610c3aa89bc52256f51e3a3109963ceaffd69 SHA256 c9ae8a47a3a3073d5e80eb22b0f57cadc056b34f46708c3b6331d159be06dcbe EBUILD pypy-1.8.ebuild 2777 RMD160 65eedffe4df25241193bf14e9c955120c1fb90ef SHA1 8b2d6b63fb267d3a63a9778c6978c1b66d5c8444 SHA256 883affdf948d9f28766dce1b3175274c8696b739924c5f999f81135d2111001e -MISC ChangeLog 2539 RMD160 4f0266bb6d39b4a905545809ebc809cba79b5c59 SHA1 41f46efd8a911842e13eda9def2a99016d7dce2c SHA256 b01f8503970e21dfab4433b20a0012c6c6aab3bba44390bccbd34325185f7f32 +MISC ChangeLog 2798 RMD160 0027a04e433a6b1829ac51d1c99a84e041d426aa SHA1 163d4a238fe4c439f559255b4ecd17d5c27f6c71 SHA256 25d12a7788bc7c0b07d77f2edf700d51cf6d84535e72252cf8ce1c249cd6918c MISC metadata.xml 507 RMD160 ebf6143dae73a70cc62880c10dc1f1c3f82cc1dd SHA1 a8bf12cdeebfd1d30a86075b97be027b138435c8 SHA256 b91eb636cbd78badac8a97a95615ff89c33077e0627aa0732394de54f26a018c -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) -iF4EAREIAAYFAk85xBoACgkQC77qH+pIQ6TW9gD/ZPkK1KcBz9NHSDXitNdpLZo9 -0DFvMElZS9+fWNkT0DMA/31yvZdaD6BWlUYu/q1KLHjV+nAbUJkOi2pN4CwOmrxs -=ElKU +iEYEAREKAAYFAk889DgACgkQxeMuLWsGW/seGQCfaLsMaHOkv5oN/P1OhqFxT6nY +b4wAoIXOYBhJimNAoK9jpTM2Z0NrjDb9 +=5eMM -----END PGP SIGNATURE----- diff --git a/dev-python/pypy/files/1.8-elf-metadata-26a8d3fc57a7.patch b/dev-python/pypy/files/1.8-elf-metadata-26a8d3fc57a7.patch new file mode 100644 index 000000000000..d58137350e2d --- /dev/null +++ b/dev-python/pypy/files/1.8-elf-metadata-26a8d3fc57a7.patch @@ -0,0 +1,10 @@ +--- pypy-pypy-release-1.7/pypy/translator/c/gcc/trackgcroot.py.bak 2011-11-29 14:22:29.000000000 +0100 ++++ pypy-pypy-release-1.7/pypy/translator/c/gcc/trackgcroot.py 2011-11-29 14:22:55.000000000 +0100 +@@ -1694,6 +1694,7 @@ + } + """ + elif self.format in ('elf64', 'darwin64'): ++ print >> output, "\t.section .note.GNU-stack,\"\",%progbits" + print >> output, "\t.text" + print >> output, "\t.globl %s" % _globalname('pypy_asm_stackwalk') + _variant(elf64='.type pypy_asm_stackwalk, @function', diff --git a/dev-python/pypy/files/1.8-sext-instructions-02dc2f6160ee.patch b/dev-python/pypy/files/1.8-sext-instructions-02dc2f6160ee.patch new file mode 100644 index 000000000000..6528479e098c --- /dev/null +++ b/dev-python/pypy/files/1.8-sext-instructions-02dc2f6160ee.patch @@ -0,0 +1,22 @@ +--- pypy/translator/c/gcc/trackgcroot.py.old 2012-02-15 14:11:38.551479431 -0800 ++++ pypy/translator/c/gcc/trackgcroot.py 2012-02-15 00:55:20.082136135 -0800 +@@ -471,8 +471,8 @@ + return [] + + IGNORE_OPS_WITH_PREFIXES = dict.fromkeys([ +- 'cmp', 'test', 'set', 'sahf', 'lahf', 'cltd', 'cld', 'std', +- 'rep', 'movs', 'lods', 'stos', 'scas', 'cwtl', 'cwde', 'prefetch', ++ 'cmp', 'test', 'set', 'sahf', 'lahf', 'cld', 'std', ++ 'rep', 'movs', 'lods', 'stos', 'scas', 'cwde', 'prefetch', + # floating-point operations cannot produce GC pointers + 'f', + 'cvt', 'ucomi', 'comi', 'subs', 'subp' , 'adds', 'addp', 'xorp', +@@ -485,6 +485,8 @@ + 'bswap', 'bt', 'rdtsc', + 'punpck', 'pshufd', 'pcmp', 'pand', 'psllw', 'pslld', 'psllq', + 'paddq', 'pinsr', ++ # sign-extending moves should not produce GC pointers ++ 'cbtw', 'cwtl', 'cwtd', 'cltd', 'cltq', 'cqto', + # zero-extending moves should not produce GC pointers + 'movz', + # locked operations should not move GC pointers, at least so far diff --git a/dev-python/pypy/pypy-1.8-r1.ebuild b/dev-python/pypy/pypy-1.8-r1.ebuild new file mode 100644 index 000000000000..1fcf50e17159 --- /dev/null +++ b/dev-python/pypy/pypy-1.8-r1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-python/pypy/pypy-1.8-r1.ebuild,v 1.1 2012/02/16 12:18:54 djc Exp $ + +EAPI="4" + +inherit eutils toolchain-funcs check-reqs python versionator + +DESCRIPTION="PyPy is a fast, compliant alternative implementation of the Python language" +HOMEPAGE="http://pypy.org/" +SRC_URI="https://bitbucket.org/pypy/pypy/get/release-${PV}.tar.bz2 -> ${P}.tar.bz2" +SLOTVER=$(get_version_component_range 1-2 ${PV}) + +LICENSE="MIT" +SLOT="${SLOTVER}" +PYTHON_ABI="2.7-pypy-${SLOTVER}" +KEYWORDS="~amd64 ~x86" +IUSE="bzip2 doc examples +jit ncurses sandbox shadowstack sqlite ssl" + +RDEPEND=">=sys-libs/zlib-1.1.3 + virtual/libffi + virtual/libintl + dev-libs/expat + bzip2? ( app-arch/bzip2 ) + ncurses? ( sys-libs/ncurses ) + sqlite? ( dev-db/sqlite:3 ) + ssl? ( dev-libs/openssl )" +DEPEND="${RDEPEND}" +PDEPEND="app-admin/python-updater" + +DOC="README LICENSE" + +pkg_pretend() { + CHECKREQS_MEMORY="2G" + use amd64 && CHECKREQS_MEMORY="4G" + check-reqs_pkg_pretend +} + +src_unpack() { + default + mv pypy-pypy-* "${S}" || die +} + +src_prepare() { + epatch "${FILESDIR}/${PV}-elf-metadata-26a8d3fc57a7.patch" + epatch "${FILESDIR}/${PV}-sext-instructions-02dc2f6160ee.patch" + epatch "${FILESDIR}/1.7-scripts-location.patch" + epatch "${FILESDIR}/pypy-1.7-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" + epatch "${FILESDIR}/pypy-1.7-distutils-fix_handling_of_executables_and_flags.patch" +} + +src_compile() { + local conf + if use jit; then + conf="-Ojit" + else + conf="-O2" + fi + if use shadowstack; then + conf+=" --gcrootfinder=shadowstack" + fi + if use sandbox; then + conf+=" --sandbox" + fi + + conf+=" ./pypy/translator/goal/targetpypystandalone.py" + # Avoid linking against libraries disabled by use flags + local optional_use=("bzip2" "ncurses" "ssl") + local optional_mod=("bz2" "_minimal_curses" "_ssl") + for ((i = 0; i < ${#optional_use[*]}; i++)); do + if use ${optional_use[$i]}; then + conf+=" --withmod-${optional_mod[$i]}" + else + conf+=" --withoutmod-${optional_mod[$i]}" + fi + done + + local translate_cmd="$(PYTHON -2) ./pypy/translator/goal/translate.py --batch $conf" + echo ${_BOLD}"${translate_cmd}"${_NORMAL} + ${translate_cmd} || die "compile error" +} + +src_install() { + local INSPATH="/usr/$(get_libdir)/pypy${SLOT}" + insinto ${INSPATH} + doins -r include lib_pypy lib-python pypy-c + fperms a+x ${INSPATH}/pypy-c + dosym ../$(get_libdir)/pypy${SLOT}/pypy-c /usr/bin/pypy-c${SLOT} + + if ! use sqlite; then + rm -fr "${ED}${INSPATH}/lib-python/2.7/sqlite3" + rm -fr "${ED}${INSPATH}/lib-python/modified-2.7/sqlite3" + rm -f "${ED}${INSPATH}/lib_pypy/_sqlite3.py" + fi +} + +src_test() { + $(PYTHON -2) ./pypy/test_all.py --pypy=./pypy-c lib-python +} |