summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2015-11-09 00:49:48 +0100
committerMichał Górny <mgorny@gentoo.org>2015-11-09 00:49:48 +0100
commit624a078c22fcf20b175a151c8533cf6c9a744432 (patch)
treeb5bbe55f75d572a15982cb65274bb92c801a53c8 /dev-python/pypy-bin
parentmedia-plugins/gst-plugins-x265: initial ebuild (diff)
downloadgentoo-624a078c22fcf20b175a151c8533cf6c9a744432.tar.gz
gentoo-624a078c22fcf20b175a151c8533cf6c9a744432.tar.bz2
gentoo-624a078c22fcf20b175a151c8533cf6c9a744432.zip
dev-python/pypy-bin: Add binpackages for 4.0.0
Diffstat (limited to 'dev-python/pypy-bin')
-rw-r--r--dev-python/pypy-bin/Manifest8
-rw-r--r--dev-python/pypy-bin/pypy-bin-4.0.0.ebuild194
2 files changed, 202 insertions, 0 deletions
diff --git a/dev-python/pypy-bin/Manifest b/dev-python/pypy-bin/Manifest
index 14abab2af9a0..81398f5206f3 100644
--- a/dev-python/pypy-bin/Manifest
+++ b/dev-python/pypy-bin/Manifest
@@ -1,6 +1,7 @@
DIST pypy-2.4.0-src.tar.bz2 15495214 SHA256 38810007aee4885ca0703b566db6594dd7649adaaa287df7a1012f10e067740f SHA512 91b41ed80a6ff0d7b2b134a7802f098de35ffd2068dc3e477d27b0bc821c6d329eb8bcad4db4a5ff9ff429830d4abfbeb435a2a2d2d9bbc2c36f2d21af0b2e0c WHIRLPOOL affb14b805b2dcb8b579dd421bfb8276e80d3b31cea41bf57ad5dd9260e2e27d838b0303e4a3af5ca38b0b4f08ac88b142d6f1db20753bec6f8cbfdfc482099b
DIST pypy-2.5.1-src.tar.bz2 16740876 SHA256 ddb3a580b1ee99c5a699172d74be91c36dda9a38946d4731d8c6a63120a3ba2a SHA512 ac4cab47566d7d4e1a293a680e0dffa301c99a8329c2e68f645f186c0266cbe8f045a03e392c0cc2112a16178037cd978b7867ad073bf5dd957dd19f4c818067 WHIRLPOOL 6f16c4090780081dfe1d4642186262c66d4ac1a4b3b8311e573bfa6029eb7aac0483b3e48cad5ce03879391a4e316c0186d33fac5e86d0024ff20cc6d4dc0dd3
DIST pypy-2.6.0-src.tar.bz2 16858400 SHA256 9bf353f22d25e97a85a6d3766619966055edea1ea1b2218445d683a8ad0399d9 SHA512 82a6a44c0c551a1291215394610e5331cf83216b38ac9f1a79a3eab53ba2933b121c3154b58cead814c73a1da1fc95d895324bb0c43e8e0429438b0dea527cc4 WHIRLPOOL e536ff5d3b393c6834fd721f383318b5dcef79046f475b0f1fe737c67c56e8769cabc0a35f553da5dc475a255c5711de01bd6d42e541cabbab3b9e30f20c9a5c
+DIST pypy-4.0.0-src.tar.bz2 17244624 SHA256 acff480e44ce92acd057f2e786775af36dc3c2cd12e9efc60a1ac6a562ad7b4d SHA512 2bbdc2536a32b0aa28f7b12ec3d879ed28afe984fad38635bc3e1d950a9fe198cfbaf9b554f0fa245e7fd512ec7a76297f05a1d3e17f73fb49e8506561190f5b WHIRLPOOL e94bdf5e8ea2cbab8e25d37bb7cb36b9bae773ec051d603cfce784e0fd8e591ed16e6896f49d14d9ae094c5f613a0ba871380c8adc2a1cf0023157e3e2a51f52
DIST pypy-bin-2.4.0-amd64+bzip2+jit+ncurses+shadowstack.tar.xz 10238896 SHA256 158ebb6bef9e77c0ea84ade4449717a608f3e2378b18a198a15187f49f240262 SHA512 3baa4387336ee343949ff7a04de236ef6da1446efa9ae565a61abd6d5d3915d54b51d91d4958b8c1ec61d894943804ea1158c0618349fc4c9e52a8956a4afa56 WHIRLPOOL a2803b6f42a35b74761af918be7c33a460bac246fdaba3c1ca34b3dcff6bbe1f68a1a4299123ce167664516b7e29bc8450cdb6be196313657f2178259b3783a6
DIST pypy-bin-2.4.0-amd64+bzip2+jit+ncurses.tar.xz 11771744 SHA256 4a05b8819486693c83af7cf45092926526f5511615b6d4181f72e11ac240f263 SHA512 d8e5c1c1721935fe73254fc3037176ad3c71d96acd55d8bcd15bc7b317a72261b7e08a6ae28cb62bfb2203f06b13839670b5da3e435cd87c0f65fea259be2732 WHIRLPOOL 496f244487146e1acd34981b3ec4af81590b136b884f0cb698fc35698cadfad1e278ad627563fd643294c49e1ea27f05c180dd05b3f6d2d4079527775ef4ec90
DIST pypy-bin-2.4.0-amd64+bzip2+ncurses.tar.xz 6596304 SHA256 f2f2fa539ec1f3fd048bd81bb5fa54f260980fe9689c578f134f39ecf00aa027 SHA512 e8603ba08a11c1cbd9d3af824aca1c4ae7b61d46879b398d5d18428bc438c2e0bd0fd9ecd83f100715b635968eee3805db18a42ab62fbc10d8cd0186b6998431 WHIRLPOOL 2758fc778a1f9e5db966aa1e5a47a8da8c1fbb5882aa74ba9709c23e1b3a546c826de8ea4ba83e5baae262a51636d7201445102c97d4c749a98805a46aeac9ba
@@ -22,4 +23,11 @@ DIST pypy-bin-2.6.0-x86+bzip2+jit+ncurses+shadowstack+sse2.tar.xz 9727668 SHA256
DIST pypy-bin-2.6.0-x86+bzip2+jit+ncurses+sse2.tar.xz 10769552 SHA256 c985a47cf30b272b2b18794f1274af9d7f83037780545c6076b50e5df4ed5161 SHA512 b2a4d62133022b4677c869e345068eb312e71f1bd7f4351131fa9b0874903d6c81f22db47ec8e717b8243997263219d52b67135d7becba7a5c8f6d2ac3f9179c WHIRLPOOL 4e62d8a943faee2fbb2d34e077ab8292cd3a985347ded90fef83740ce26f6e9e1265a77b736f831df0f48da58b047b92363bbb646cfe0322045ebf2521c63e14
DIST pypy-bin-2.6.0-x86+bzip2+ncurses+sse2.tar.xz 5823376 SHA256 c0e6d23ae866aa7c272891b755b197f37c9be9c59666e74be86a7c68bec2e9b8 SHA512 227da4e84f915c4aa8e176a3535e97968dbbc4eab93ab092ad8c70841a60d00ce15e4579222f777f75a06f1022b3f54b1f4a490fdd25886dc087df581d5ae0df WHIRLPOOL d44c3005f0b6103cfb700390a44b08bbac1118ec9e7930a6e050b36f5d806019a716f7a46aa1b32e39f036453967d16feb6b587950c34cf6b5f9d55b54819577
DIST pypy-bin-2.6.0-x86+bzip2+ncurses.tar.xz 5801592 SHA256 fd3ad04815cda1f2746a2dfa9c02f5394f73011fd1247016e6a6d760cef30dab SHA512 b23afff4ba9c9dd2246b3305de8274699a00db8d0bc38d59641414fde0680695373cda12fbd4091f6a06df6c4ce548355b7cdadb299a0ba9a0efedd90680df21 WHIRLPOOL 3554ff89fbe434e099d95c528d1b2414decd46b802f357f187fb21835a8b4c8fe5b10001ad311827d01bbbf71dcf1cf89bd9e081dbbe1706f2727bf35ca0337b
+DIST pypy-bin-4.0.0-amd64+bzip2+jit+ncurses+shadowstack.tar.xz 13016728 SHA256 07c2c34f234af5dfaabb88338ae2c6c29457e3f089fefc16f1a3f17bea061e0e SHA512 5017fbb6ea25599e7741824a80f045c769564235c825198d6994553afc72072857f0971e6692c237bc5e13893aa7a11538b3fbbc5e91cfe4d31e721f0d27579f WHIRLPOOL f2437c39873198101545cb64173f5e833663bed41d0645cc0695c3dc50b2a7552581030f7e7f0da79cf3415fe0926afc5b8ad90be1fad0df1a12ff45c5229eca
+DIST pypy-bin-4.0.0-amd64+bzip2+jit+ncurses.tar.xz 14072368 SHA256 1f1335cd73213a4804cd8462e301e2925851b402e4ad0aef5a1f2039909e418d SHA512 fdac72eb3c772cd960a7fd77b0d3cff57bd329a2f60fa2f56b5750de1426a4e3b7271e159f987fe8545339a02d85e0ff76baa600c9a5e5f880b83bf9eaa35904 WHIRLPOOL d6ed5d6f8796144e7b4b0ee1e06482cf7ab639ffedca7c1086eaf0b5dfb499d5fba71ded825d918a7b386c0db884aa83feaebc052fcc18961ec35679430a6ce5
+DIST pypy-bin-4.0.0-amd64+bzip2+ncurses.tar.xz 7500936 SHA256 d4c698d705d95a24b0a9083aab4a82421aaf159c22fd68fe1870a9dc65152f2f SHA512 430489055fe1012158a56b787775a7af6279e1bc12e33a6ef54a50f8e0a580d9bda2c9871b4613901f2b47737a721638e68e94053028ce344d45e31f3dfcd283 WHIRLPOOL 8e8907ed22c213018b4a69297513a6234711372f5afcfe2b1714858820d4d3900aa9f7949071d17bdd913b883076846dd3379921cccdd986fdbd22c0489010aa
+DIST pypy-bin-4.0.0-x86+bzip2+jit+ncurses+shadowstack+sse2.tar.xz 9944576 SHA256 e6aa40af0e38ac7114767cb072734aac905dacd83748b46ba16d24ee47823ccf SHA512 2b69f55c878c342038f28e5fb0c3053cfeb4ca509c923a67fc58d132dc210bc2618e63ff83254cd2557bc55dc4a4f099e69a96817c9be99d1aed9524b2b3dafd WHIRLPOOL 74f26b726c9a8f8b571bd2c6eb9f549a62b47549815ddf2041318ac798e9d7e4c4e7a6a0865aa39abe144bc1687f490b2c8e3712ba35b5492fc151b57596b08e
+DIST pypy-bin-4.0.0-x86+bzip2+jit+ncurses+sse2.tar.xz 11065800 SHA256 b6275632bc7901affbad59c6ee773c42bb4df0d449565a2a69beeb6b3dfedd70 SHA512 eff3d32aa3a1a106b581c715bfe2db121ce66fe60cec94e7533c1096fdec2c599a6141d688af10a51dff4e1b6ee4805d2b07ea1bdea28f343923b8a6f315b8e2 WHIRLPOOL b2d50c065dfc93fe1be3e588810586041bd42a21ca13d7b568cd1da6c2a79a4467c490fa8636315ef9a369bd914eb338c235dbea8a4b639002e8efef39aa5592
+DIST pypy-bin-4.0.0-x86+bzip2+ncurses+sse2.tar.xz 5822756 SHA256 b254570e2414f6c420146a07390260d63218e327c07d6c5048893f3ce56b78f7 SHA512 7354dbb7a6bb48ee7845ea3e99773381e845d1be1bd2b784c90596ceb01a4192d5bcef9bbe1bbf377d5ce9189e19d2d08d4701e948a04b1e5e54f83dc33f9cb5 WHIRLPOOL c5ff5a335f5bbd5a337aff0a2b4a66636228dc7c81c85fccdd885f2411d88cb5e795c2931b8d7d7f3baed89c0a01d7b858b25b792fd30a55cf25b948e9df1899
+DIST pypy-bin-4.0.0-x86+bzip2+ncurses.tar.xz 5803376 SHA256 8f7a87c48801ecc5825a00659b691125a7700c6e8d4f0e67a6c3a5dd7f4c1fc2 SHA512 678b98a093817508e23e3d55cfa514520f0f2b2d2dab3088a9b4481744eb39fe8d9ee4fbe81744c4fdab86c2cc53913bd2f63cda64a9d74166a900da7bb28aae WHIRLPOOL 0638426bc82903d0244c54a2bacb22061031c7b7f13b51a3af9911eb8abceed0d7ddb7e7d4ec3b48096d217eecee9058fbeaacb1d1705a88e643a20e58958318
DIST python-gentoo-patches-2.7.10-0.tar.xz 12892 SHA256 c9a838bd62ae50cc385da23a837acfd05f2b74e4f086c9c76eb4d3aa5366ef6d SHA512 5f100944635e360691dc0a2b340a906646c4ae9ee558246ddffc56e8b15d389f25f1fbdc1db4cc08e7d29560d04d66b058b3904902899d58ecae8c408ebdf056 WHIRLPOOL f69e9a518bb7ee50c1b262a21e70e1e2443f859ee6d2f4fa84421120dbd054a06ce8dd6cfea8512cbc64bce806322b879c25c561d5eb05e1ba6cc15035b373a9
diff --git a/dev-python/pypy-bin/pypy-bin-4.0.0.ebuild b/dev-python/pypy-bin/pypy-bin-4.0.0.ebuild
new file mode 100644
index 000000000000..85644981b21d
--- /dev/null
+++ b/dev-python/pypy-bin/pypy-bin-4.0.0.ebuild
@@ -0,0 +1,194 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 pypy )
+inherit eutils multilib pax-utils python-any-r1 versionator
+
+BINHOST="https://dev.gentoo.org/~mgorny/dist/pypy-bin/${PV}"
+CPY_PATCHSET_VERSION="2.7.10-0"
+
+DESCRIPTION="A fast, compliant alternative implementation of the Python language (binary package)"
+HOMEPAGE="http://pypy.org/"
+SRC_URI="https://bitbucket.org/pypy/pypy/downloads/pypy-${PV}-src.tar.bz2
+ https://dev.gentoo.org/~floppym/python/python-gentoo-patches-${CPY_PATCHSET_VERSION}.tar.xz
+ amd64? (
+ jit? ( shadowstack? (
+ ${BINHOST}/${P}-amd64+bzip2+jit+ncurses+shadowstack.tar.xz
+ ) )
+ jit? ( !shadowstack? (
+ ${BINHOST}/${P}-amd64+bzip2+jit+ncurses.tar.xz
+ ) )
+ !jit? ( !shadowstack? (
+ ${BINHOST}/${P}-amd64+bzip2+ncurses.tar.xz
+ ) )
+ )
+ x86? (
+ cpu_flags_x86_sse2? (
+ jit? ( shadowstack? (
+ ${BINHOST}/${P}-x86+bzip2+jit+ncurses+shadowstack+sse2.tar.xz
+ ) )
+ jit? ( !shadowstack? (
+ ${BINHOST}/${P}-x86+bzip2+jit+ncurses+sse2.tar.xz
+ ) )
+ !jit? ( !shadowstack? (
+ ${BINHOST}/${P}-x86+bzip2+ncurses+sse2.tar.xz
+ ) )
+ )
+ !cpu_flags_x86_sse2? (
+ !jit? ( !shadowstack? (
+ ${BINHOST}/${P}-x86+bzip2+ncurses.tar.xz
+ ) )
+ )
+ )"
+
+# Supported variants
+REQUIRED_USE="!jit? ( !shadowstack )
+ x86? ( !cpu_flags_x86_sse2? ( !jit !shadowstack ) )"
+
+LICENSE="MIT"
+SLOT="0/$(get_version_component_range 1-2 ${PV})"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc gdbm +jit shadowstack sqlite cpu_flags_x86_sse2 test tk"
+
+# yep, world would be easier if people started filling subslots...
+RDEPEND="
+ app-arch/bzip2:0
+ dev-libs/expat:0
+ dev-libs/libffi:0
+ dev-libs/openssl:0[-bindist]
+ sys-libs/glibc:2.2
+ sys-libs/ncurses:0/6
+ sys-libs/zlib:0
+ gdbm? ( sys-libs/gdbm:0= )
+ sqlite? ( dev-db/sqlite:3= )
+ tk? (
+ dev-lang/tk:0=
+ dev-tcltk/tix:0=
+ )
+ !dev-python/pypy:0"
+DEPEND="app-arch/xz-utils
+ doc? ( ${PYTHON_DEPS}
+ dev-python/sphinx )
+ test? ( ${RDEPEND} )"
+PDEPEND="app-admin/python-updater"
+
+S=${WORKDIR}/pypy-${PV}-src
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ use doc && python-any-r1_pkg_setup
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/1.9-scripts-location.patch" \
+ "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch"
+
+ # apply CPython stdlib patches
+ pushd lib-python/2.7 > /dev/null || die
+ epatch "${FILESDIR}"/2.5.0_all_distutils_cxx.patch \
+ "${WORKDIR}"/patches/22_all_turkish_locale.patch \
+ "${WORKDIR}"/patches/62_all_xml.use_pyxml.patch
+ popd > /dev/null || die
+
+ epatch_user
+}
+
+src_compile() {
+ # Tadaam! PyPy compiled!
+ mv "${WORKDIR}"/${P}*/{libpypy-c.so,pypy-c} . || die
+ mv "${WORKDIR}"/${P}*/include/*.h include/ || die
+ mv pypy/module/cpyext/include/*.h include/ || die
+ mv pypy/module/cpyext/include/numpy include/ || die
+
+ use doc && emake -C pypy/doc/ html
+ #needed even without jit :( also needed in both compile and install phases
+ pax-mark m pypy-c
+
+ # ctypes config cache
+ # this one we need to do with python2 too...
+ ./pypy-c lib_pypy/ctypes_config_cache/rebuild.py \
+ || die "Failed to rebuild ctypes config cache"
+}
+
+src_test() {
+ # (unset)
+ local -x PYTHONDONTWRITEBYTECODE
+
+ ./pypy-c ./pypy/test_all.py --pypy=./pypy-c lib-python || die
+}
+
+src_install() {
+ einfo "Installing PyPy ..."
+ insinto "/usr/$(get_libdir)/pypy"
+ doins -r include lib_pypy lib-python pypy-c libpypy-c.so
+ fperms a+x ${INSDESTTREE}/pypy-c ${INSDESTTREE}/libpypy-c.so
+ pax-mark m "${ED%/}${INSDESTTREE}/pypy-c" "${ED%/}${INSDESTTREE}/libpypy-c.so"
+ dosym ../$(get_libdir)/pypy/pypy-c /usr/bin/pypy
+ dodoc README.rst
+
+ if ! use gdbm; then
+ rm -r "${ED%/}${INSDESTTREE}"/lib_pypy/gdbm.py \
+ "${ED%/}${INSDESTTREE}"/lib-python/*2.7/test/test_gdbm.py || die
+ fi
+ if ! use sqlite; then
+ rm -r "${ED%/}${INSDESTTREE}"/lib-python/*2.7/sqlite3 \
+ "${ED%/}${INSDESTTREE}"/lib_pypy/_sqlite3.py \
+ "${ED%/}${INSDESTTREE}"/lib-python/*2.7/test/test_sqlite.py || die
+ fi
+ if ! use tk; then
+ rm -r "${ED%/}${INSDESTTREE}"/lib-python/*2.7/{idlelib,lib-tk} \
+ "${ED%/}${INSDESTTREE}"/lib_pypy/_tkinter \
+ "${ED%/}${INSDESTTREE}"/lib-python/*2.7/test/test_{tcl,tk,ttk*}.py || die
+ fi
+
+ # Install docs
+ use doc && dohtml -r pypy/doc/_build/html/
+
+ einfo "Generating caches and byte-compiling ..."
+
+ python_export pypy EPYTHON PYTHON PYTHON_SITEDIR
+ local PYTHON=${ED%/}${INSDESTTREE}/pypy-c
+ local -x LD_LIBRARY_PATH="${ED%/}${INSDESTTREE}"
+
+ echo "EPYTHON='${EPYTHON}'" > epython.py
+ python_domodule epython.py
+
+ # Generate Grammar and PatternGrammar pickles.
+ "${PYTHON}" -c "import lib2to3.pygram, lib2to3.patcomp; lib2to3.patcomp.PatternCompiler()" \
+ || die "Generation of Grammar and PatternGrammar pickles failed"
+
+ # Generate cffi modules
+ # Please keep in sync with pypy/tool/build_cffi_imports.py!
+#cffi_build_scripts = {
+# "sqlite3": "_sqlite3_build.py",
+# "audioop": "_audioop_build.py",
+# "tk": "_tkinter/tklib_build.py",
+# "curses": "_curses_build.py" if sys.platform != "win32" else None,
+# "syslog": "_syslog_build.py" if sys.platform != "win32" else None,
+# "gdbm": "_gdbm_build.py" if sys.platform != "win32" else None,
+# "pwdgrp": "_pwdgrp_build.py" if sys.platform != "win32" else None,
+ cffi_targets=( audioop curses syslog gdbm pwdgrp )
+ use gdbm && cffi_targets+=( gdbm )
+ use sqlite && cffi_targets+=( sqlite3 )
+ use tk && cffi_targets+=( tkinter/tklib )
+
+ local t
+ # all modules except tkinter output to .
+ # tkinter outputs to the correct dir ...
+ cd "${ED%/}${INSDESTTREE}"/lib_pypy || die
+ for t in "${cffi_targets[@]}"; do
+ # tkinter doesn't work via -m
+ "${PYTHON}" "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}"
+ done
+
+ # Cleanup temporary objects
+ find "${ED%/}${INSDESTTREE}" -name "_cffi_*.[co]" -delete || die
+ find "${ED%/}${INSDESTTREE}" -type d -empty -delete || die
+
+ # compile the installed modules
+ python_optimize "${ED%/}${INSDESTTREE}"
+}