diff options
| author | Liguros - Gitlab CI/CD [feature/flatten] <gitlab@liguros.net> | 2020-09-17 20:21:41 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [feature/flatten] <gitlab@liguros.net> | 2020-09-17 20:21:41 +0000 |
| commit | f9bde51be7fdfd43896d4fd6374ed58415085903 (patch) | |
| tree | f3d9b114140bbb956902fd6bd5bf9ebf5d37df2f /dev-python | |
| parent | db5c21a9367a5e9e9d5d0922d943a89a5f753b03 (diff) | |
| download | baldeagleos-repo-f9bde51be7fdfd43896d4fd6374ed58415085903.tar.gz baldeagleos-repo-f9bde51be7fdfd43896d4fd6374ed58415085903.tar.xz baldeagleos-repo-f9bde51be7fdfd43896d4fd6374ed58415085903.zip | |
Updating liguros repo
Diffstat (limited to 'dev-python')
45 files changed, 203 insertions, 2163 deletions
diff --git a/dev-python/django-picklefield/Manifest b/dev-python/django-picklefield/Manifest new file mode 100644 index 000000000000..c4f77ddc10da --- /dev/null +++ b/dev-python/django-picklefield/Manifest @@ -0,0 +1 @@ +DIST django-picklefield-3.0.1.tar.gz 9506 BLAKE2B 6eda8dca31454a5f8cc8a670a19e25ac0b641bf6b7d31d695e617653cd88c1d84b88c39632f1d915ce8e0fe0dd8432d687559f2037d94ab50758f71a8b4f087f SHA512 7f14b4803dc8bdb1d62fec4063bf6eb7714445f85a13a4fe098154fa2d7f6a4e54308bf2324bc4921eaabf1023bb06b89a4bf52bb0ff89594075e02672d217ba diff --git a/dev-python/django-picklefield/django-picklefield-3.0.1.ebuild b/dev-python/django-picklefield/django-picklefield-3.0.1.ebuild new file mode 100644 index 000000000000..7a7113f9dd14 --- /dev/null +++ b/dev-python/django-picklefield/django-picklefield-3.0.1.ebuild @@ -0,0 +1,16 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8,9} ) +inherit distutils-r1 + +DESCRIPTION="Pickled object field for Django." +HOMEPAGE="https://github.com/gintas/django-picklefield" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +DEPEND="dev-python/django[${PYTHON_USEDEP}]" diff --git a/dev-python/django-picklefield/metadata.xml b/dev-python/django-picklefield/metadata.xml new file mode 100644 index 000000000000..3b76e88174d7 --- /dev/null +++ b/dev-python/django-picklefield/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>hanno@gentoo.org</email> + </maintainer> + <upstream> + <remote-id type="pypi">django-picklefield</remote-id> + <remote-id type="github">gintas/django-picklefield</remote-id> + </upstream> + <origin>gentoo-staging</origin> +</pkgmetadata> diff --git a/dev-python/dkimpy/dkimpy-1.0.5.ebuild b/dev-python/dkimpy/dkimpy-1.0.5.ebuild index c8f8c7e80310..ec25f0c4ab36 100644 --- a/dev-python/dkimpy/dkimpy-1.0.5.ebuild +++ b/dev-python/dkimpy/dkimpy-1.0.5.ebuild @@ -14,7 +14,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~x86" +KEYWORDS="amd64 arm64 x86" RDEPEND=" dev-python/dnspython[${PYTHON_USEDEP}] diff --git a/dev-python/eventlet/eventlet-0.26.1.ebuild b/dev-python/eventlet/eventlet-0.26.1.ebuild index 6fed3c8d8ce1..2fb9d9a1d192 100644 --- a/dev-python/eventlet/eventlet-0.26.1.ebuild +++ b/dev-python/eventlet/eventlet-0.26.1.ebuild @@ -12,7 +12,7 @@ SRC_URI="mirror://pypi/e/${PN}/${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~s390 ~sparc ~x86" +KEYWORDS="~amd64 ~arm arm64 ~ppc ~ppc64 ~s390 ~sparc ~x86" IUSE="doc examples test" RDEPEND=" diff --git a/dev-python/josepy/Manifest b/dev-python/josepy/Manifest index 117aeda6b739..c1ba4f7f0578 100644 --- a/dev-python/josepy/Manifest +++ b/dev-python/josepy/Manifest @@ -1 +1,2 @@ DIST josepy-1.3.0.tar.gz 53279 BLAKE2B 7dbbdd97491d4fab7a6f086c47458e2e34908ee4377e30138a64a42b81396cba72dc0f8483d21f4f7499715eb49f9503cc12b08cdc270d4cd6fcc05a6888dc8f SHA512 176eea34bb7fb75e192d6792c15581a42a1d2b986bc79ab49f72b16ebf8879e9b11db0d22fbd49ff5a9b85ab7cc45a0a935d06393273233a272537a861282f30 +DIST josepy-1.4.0.tar.gz 54174 BLAKE2B 67117e7399422d0cfe2c47f9e5ed11a3b93617e673cf9ab1344334f7f11f0c884f45202e8e5e65ebacc00f527becfdbdda9ea246b8e96ba15e516bfc2fb33ba9 SHA512 a5038a4bb42c5a55d665a551743a976b209c24d8aa368d2b6acf0957e953bd4044d9dc41bf9d460283f44c14b7dd7ce2a860563fe107663d4a4deba0c7834e40 diff --git a/dev-python/josepy/josepy-1.4.0.ebuild b/dev-python/josepy/josepy-1.4.0.ebuild new file mode 100644 index 000000000000..f175082f31a2 --- /dev/null +++ b/dev-python/josepy/josepy-1.4.0.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{5,6,7,8,9} pypy3 ) +DISTUTILS_USE_SETUPTOOLS=rdepend + +inherit distutils-r1 + +DESCRIPTION="JOSE protocol implementation in Python" +HOMEPAGE="https://github.com/certbot/josepy" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +RDEPEND=" + >=dev-python/cryptography-0.8[${PYTHON_USEDEP}] + >=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}] + >=dev-python/six-1.9.0[${PYTHON_USEDEP}] +" +BDEPEND="test? ( dev-python/mock[${PYTHON_USEDEP}] )" + +distutils_enable_tests pytest + +python_prepare_all() { + # Remove coverage/flake8 options + sed -i '/^addopts =/d' pytest.ini || die + distutils-r1_python_prepare_all +} diff --git a/dev-python/josepy/metadata.xml b/dev-python/josepy/metadata.xml index a91fd4109527..7ca31e8a72d0 100644 --- a/dev-python/josepy/metadata.xml +++ b/dev-python/josepy/metadata.xml @@ -12,5 +12,10 @@ JOSE protocol implementation in Python using cryptography Originally developed as part of the ACME protocol implementation. </longdescription> + <upstream> + <remote-id type="pypi">josepy</remote-id> + <remote-id type="github">certbot/josepy</remote-id> + <bugs-to>https://github.com/certbot/josepy/issues</bugs-to> + </upstream> <origin>gentoo-staging</origin> </pkgmetadata> diff --git a/dev-python/pooch/Manifest b/dev-python/pooch/Manifest new file mode 100644 index 000000000000..1ed64bb0458e --- /dev/null +++ b/dev-python/pooch/Manifest @@ -0,0 +1 @@ +DIST pooch-1.2.0.tar.gz 212831 BLAKE2B 73db6d6ef432960704103cee92c72d80243c9f73c3896458b20a734fc577f4982c0ecd0c72d512f8d355f28f48ca084755816196431aa7f27eab9c467e4e0654 SHA512 dfb7d890d3211f8f737dc79fa81cc895c166dc96b05d86ad2df9b33f1da950a05bce8e6a80abdb467edef2157bd13a8209771ced91a17023903c5541a1b998d3 diff --git a/dev-python/pooch/metadata.xml b/dev-python/pooch/metadata.xml new file mode 100644 index 000000000000..db3add5d6ea1 --- /dev/null +++ b/dev-python/pooch/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>3dprint@gentoo.org</email> + <name>Gentoo 3D Printer Project</name> + </maintainer> + <longdescription> + Pooch manages your Python library's sample data files: it automatically downloads and stores them in a local directory, + with support for versioning and corruption checks. + </longdescription> + <upstream> + <remote-id type="github">fatiando/pooch</remote-id> + <remote-id type="pypi">pooch</remote-id> + </upstream> + <origin>gentoo-staging</origin> +</pkgmetadata> diff --git a/dev-python/pooch/pooch-1.2.0.ebuild b/dev-python/pooch/pooch-1.2.0.ebuild new file mode 100644 index 000000000000..00ca0ba42503 --- /dev/null +++ b/dev-python/pooch/pooch-1.2.0.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{5,6,7,8,9} ) + +inherit distutils-r1 + +DESCRIPTION="manages your Python library's sample data files" +HOMEPAGE="https://github.com/fatiando/pooch" +SRC_URI="https://github.com/fatiando/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND=" + dev-python/appdirs[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] +" +BDEPEND="${RDEPEND}" + +distutils_enable_sphinx doc dev-python/sphinx_rtd_theme diff --git a/dev-python/prompt_toolkit/prompt_toolkit-3.0.6.ebuild b/dev-python/prompt_toolkit/prompt_toolkit-3.0.6.ebuild index aac58ea21541..34a545e025e6 100644 --- a/dev-python/prompt_toolkit/prompt_toolkit-3.0.6.ebuild +++ b/dev-python/prompt_toolkit/prompt_toolkit-3.0.6.ebuild @@ -11,7 +11,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 x86" IUSE="" RDEPEND=" diff --git a/dev-python/pycountry/Manifest b/dev-python/pycountry/Manifest index 6dfcf9279b55..77a686674cb2 100644 --- a/dev-python/pycountry/Manifest +++ b/dev-python/pycountry/Manifest @@ -1 +1,2 @@ DIST pycountry-19.8.18.tar.gz 10003160 BLAKE2B ac7894e9fc1ed4e8f386cc6e07c1fc2abefee63c39c7c851c100519418606b52bc18be8da672930ceefdc7ca7b51571e4b3884ea0c20e547e5b596e249ebf407 SHA512 39ba06629eeea55460424d06992ca5f1e5bf6168b219dc4880ec326f6aa0c92a4fdc54d4143a8b8bb1490149af793e760e291c6d704104a57ba91e88228ab669 +DIST pycountry-20.7.3.tar.gz 10137217 BLAKE2B 2b32d450a1d16eab95e0c1ab6cae3bf89c07742d48cf6f8473854119ac0483b5490523e03e823c9b314231983f39d1c8bf595aac201756fee9897a8d15a84c08 SHA512 df88a34307a4275267a7f3af282b73ca5e762c49ad158bfcd39b97c5d852bf045bcfe72351fc6f232c55003a7c4b0a04801eb562ba65ed5d599bd45b2bd3bc58 diff --git a/dev-python/pycountry/files/pycountry-20.7.3-fix-tests-for-pypy3.patch b/dev-python/pycountry/files/pycountry-20.7.3-fix-tests-for-pypy3.patch new file mode 100644 index 000000000000..453c57f362cd --- /dev/null +++ b/dev-python/pycountry/files/pycountry-20.7.3-fix-tests-for-pypy3.patch @@ -0,0 +1,21 @@ +commit 57a64b69704640bd85270d886c369ef5a31eee80 +Author: Louis Sautier <sautier.louis@gmail.com> +Date: Thu Sep 17 13:01:07 2020 +0200 + + Do not rely on CPython-specific __builtins__ for tests + + This makes test_locales pass with PyPy3. + +diff --git a/src/pycountry/tests/test_general.py b/src/pycountry/tests/test_general.py +index ea697ae..ad1090f 100644 +--- a/src/pycountry/tests/test_general.py ++++ b/src/pycountry/tests/test_general.py +@@ -149,7 +149,7 @@ def test_locales(): + german = gettext.translation( + 'iso3166', pycountry.LOCALES_DIR, languages=['de']) + german.install() +- assert __builtins__['_']('Germany') == 'Deutschland' ++ assert _('Germany') == 'Deutschland' + + + def test_removed_countries(): diff --git a/dev-python/pycountry/metadata.xml b/dev-python/pycountry/metadata.xml index 7f5c577bfb30..f52eef38c9e3 100644 --- a/dev-python/pycountry/metadata.xml +++ b/dev-python/pycountry/metadata.xml @@ -8,6 +8,7 @@ <upstream> <remote-id type="pypi">pycountry</remote-id> <remote-id type="github">flyingcircusio/pycountry</remote-id> + <bugs-to>https://github.com/flyingcircusio/pycountry/issues</bugs-to> </upstream> <origin>gentoo-staging</origin> </pkgmetadata> diff --git a/dev-python/pycountry/pycountry-20.7.3.ebuild b/dev-python/pycountry/pycountry-20.7.3.ebuild new file mode 100644 index 000000000000..ccbd6ea58a96 --- /dev/null +++ b/dev-python/pycountry/pycountry-20.7.3.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{5,6,7,8,9} pypy3 ) +# The package uses pkg_resources to determine its version +DISTUTILS_USE_SETUPTOOLS=manual + +inherit distutils-r1 + +DESCRIPTION="Database of countries, subdivisions, languages, currencies and script" +HOMEPAGE="https://github.com/flyingcircusio/pycountry" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ia64 ~ppc ~sparc ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( dev-python/pytest[${PYTHON_USEDEP}] ) +" + +# https://github.com/flyingcircusio/pycountry/pull/51 +PATCHES=( "${FILESDIR}/${P}-fix-tests-for-pypy3.patch" ) + +python_test() { + # The package uses pkg_resources to determine its version + distutils_install_for_testing + pytest -vv || die "Tests fail with ${EPYTHON}" +} diff --git a/dev-python/pymysql/metadata.xml b/dev-python/pymysql/metadata.xml index f645136da0e3..4e9442869fa6 100644 --- a/dev-python/pymysql/metadata.xml +++ b/dev-python/pymysql/metadata.xml @@ -1,10 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>grknight@gentoo.org</email> - <name>Brian Evans</name> - </maintainer> <maintainer type="project"> <email>mysql-bugs@gentoo.org</email> <name>MySQL</name> diff --git a/dev-python/pypy-exe-bin/Manifest b/dev-python/pypy-exe-bin/Manifest index 23ccb1d7cc18..d5bbe712bb44 100644 --- a/dev-python/pypy-exe-bin/Manifest +++ b/dev-python/pypy-exe-bin/Manifest @@ -1,4 +1,2 @@ -DIST pypy-exe-7.3.0-1.amd64.xpak 13515366 BLAKE2B 52a3640b7a905a5ca7097a752d747e048a21e55b354d60bd3b9ba146d995ec1682bb510e97b94d3525cc46c6b80ba9be0eff8497f1c4c0aa0b60374c89077b99 SHA512 2514d0eef17eb41a6ed4081662ae1fa57fe1e74b0b29d35ab7c46ccec5729a76603d97fc98a3d3213e5bdaca4f29a4a3a42f6368bd610161e897f74f9a14680c -DIST pypy-exe-7.3.0-1.x86.xpak 10261761 BLAKE2B 60726089208c925baf233072de2d7f580289a5ba5d920cf3bc2a47fd146425dd38f08e0033ff16243914e95a18f79990b071bf93fe221f85a0296fe081ca94f6 SHA512 1afd0d3ab20ffb627159ef483260a446c6defc761ed69eea81e2b4edd36fcc29a0f43b91cce5f97f8fbe2f1f830fd395181faad281234cf60d1baf7ab1a48876 DIST pypy-exe-7.3.1-1.amd64.xpak 13578971 BLAKE2B 6ff3c64ec88813ef68d325cff5e2dae0ef1f79ae33eeac3a09c1b8ee0a24b0447b2c633489311da3d62996d714bd3d5844c3b71b9309766ade2f06b79e20bb64 SHA512 b153a19621a6da51d364868c22e9ba0460d95203787753899ec50efb573b4e7262d323503be801c3c75a724761bcfda90d8d4668d84482e2db32104916bc7671 DIST pypy-exe-7.3.1-1.x86.xpak 10239654 BLAKE2B 2588e879e2bd3ea41938ec21f55167d118cb493680f8e7aded6d6c01bed6499efd65f7d7f56e305a4ebc2aab02adf9d58fceccb503dd0ff41e93c642baf2191c SHA512 110b202c805729bcd6789ea0f6c7bffe62ab23cbd33fcff572254f56f4da82e25f9f7f617c5a4b3911044c07ea33ae8d17bd8547bb7779ca517b973b553e6b1d diff --git a/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.0_p1.ebuild b/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.0_p1.ebuild deleted file mode 100644 index d44223c44fa2..000000000000 --- a/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.0_p1.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit pax-utils - -MY_P=pypy-exe-${PV/_p/-} -DESCRIPTION="PyPy executable (pre-built version)" -HOMEPAGE="https://pypy.org/" -SRC_URI=" - amd64? ( - https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy-exe/${MY_P}.xpak - -> ${MY_P}.amd64.xpak - ) - x86? ( - https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy-exe/${MY_P}.xpak - -> ${MY_P}.x86.xpak - )" -S="${WORKDIR}" - -LICENSE="MIT" -SLOT="${PV%_p*}" -KEYWORDS="amd64 x86" - -RDEPEND=">=sys-libs/zlib-1.1.3:0/1 - dev-libs/libffi:0/7 - virtual/libintl:0/0 - dev-libs/expat:0/0 - app-arch/bzip2:0/1 - sys-libs/ncurses:0/6 - !dev-python/pypy-exe:${PV}" - -QA_PREBUILT=" - usr/lib/pypy2.7/pypy-c-${SLOT}" - -src_unpack() { - ebegin "Unpacking ${MY_P}.${ARCH}.xpak" - tar -x < <(xz -c -d --single-stream "${DISTDIR}/${MY_P}.${ARCH}.xpak") - eend ${?} || die "Unpacking ${MY_P} failed" -} - -src_install() { - insinto / - doins -r usr - fperms +x "/usr/lib/pypy2.7/pypy-c-${SLOT}" - pax-mark m "${ED}/usr/lib/pypy2.7/pypy-c-${SLOT}" -} diff --git a/dev-python/pypy-exe/Manifest b/dev-python/pypy-exe/Manifest index 138683d5b092..0fb812e22b21 100644 --- a/dev-python/pypy-exe/Manifest +++ b/dev-python/pypy-exe/Manifest @@ -1,4 +1,2 @@ -DIST pypy2.7-v7.3.0-src.tar.bz2 20328540 BLAKE2B 7f71c98f436f11e8f4d248b6aeb3e2f81962cdeeaf3eb534473f1c6b5e8cd37d9abc047d7fa750a1ceeeaa63fab6eff6e5f1e60394b8104bbcd7e1fc47885c61 SHA512 05f039f090d837a72012db55f23d94da3f21c7458f18bd1e8ba632489248eb6486ced07b786d05e573abf2b3def2a68d96e7e1109e6d189d8e6c303c60ee3535 DIST pypy2.7-v7.3.1-src.tar.bz2 21053306 BLAKE2B 071d59b7978c98e9ed9243d9a64d93d21b524351cb9a45e0f7d48828f919c84585a1164e7c38739fdd8828ab4b1eedade96dff7d64d0d9cbfe00c74d88d532bb SHA512 1bec44fa0fc4b1186e25f69303f9e332df32184be990d86fba41c40152664a93bd65eabf4dded133371271402cea9b150b60c13bce89d1004b276f0908c0b8f1 -DIST pypy2.7-v7.3.2rc1-src.tar.bz2 21136151 BLAKE2B 50a2fb407624f3831095af9a1859399a39be039e54673a2f015049071cbf128302567f6fd7423bbdf757f46b9f32a09c0ba09985ce046731893f4d1563416050 SHA512 09b0aa48e5d09d87b592d6a5cfa3c7d3e2c93898b8250c31cfae99c44c79c41f05ac1d4b400d82d610e4e56dedacdd97c51b89308ea3a38f6ded8eda0779a08b DIST pypy2.7-v7.3.2rc2-src.tar.bz2 21145693 BLAKE2B e722111435f81d00ecb5cec83e78e17676a042703fe83c049456fa6e5debdb1c09cc3f1fd71bcd8a8469da373a7c8131c252b3f139959a442f4cfa2b7f202c6f SHA512 ba7cccdaff1616ad0090cb0942ad35eda025a758be4d6b4e978bce19fb8cb8840136297fb924127a7e99f02c09665bde7eaf714e1744b9b32612973355459ad4 diff --git a/dev-python/pypy-exe/pypy-exe-7.3.0.ebuild b/dev-python/pypy-exe/pypy-exe-7.3.0.ebuild deleted file mode 100644 index c17e889d43a2..000000000000 --- a/dev-python/pypy-exe/pypy-exe-7.3.0.ebuild +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python2_7 ) -inherit check-reqs pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy2.7-v${PV/_/} -DESCRIPTION="PyPy executable (build from source)" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -SLOT="${PV}" -KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2" - -RDEPEND=">=sys-libs/zlib-1.1.3:0= - dev-libs/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - !dev-python/pypy-exe-bin:${PV}" -# don't enforce the dep on pypy with USE=low-memory since it's going -# to cause either collisions or circular dep on itself -DEPEND="${RDEPEND}" -BDEPEND=" - !low-memory? ( - || ( - dev-python/pypy - ( - dev-lang/python:2.7 - dev-python/pycparser[python_targets_python2_7(-),python_single_target_python2_7(+)] - ) - ) - )" - -check_env() { - if use low-memory; then - if ! has_version -b dev-python/pypy && - ! has_version -b dev-python/pypy-bin - then - eerror "USE=low-memory requires a (possibly old) version of dev-python/pypy" - eerror "being installed. Please install it using e.g.:" - eerror - eerror " $ emerge -1v dev-python/pypy dev-python/pypy-exe-bin" - eerror - eerror "before attempting to build dev-python/pypy-exe[low-memory]." - die "dev-python/pypy needs to be installed for USE=low-memory" - fi - - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend -} - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && check_env -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - check_env - - use low-memory && EPYTHON= - if [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]] && - { has_version -b dev-python/pypy || - has_version -b dev-python/pypy-bin; } - then - einfo "Using already-installed PyPy to perform the translation." - EPYTHON=pypy - else - einfo "Using ${EPYTHON} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please unset" - einfo "the EPYTHON variable." - python-any-r1_pkg_setup - fi - fi -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --no-shared - $(usex jit -Ojit -O2) - - ${jit_backend} - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${EPYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${EPYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 -} - -src_install() { - local dest=/usr/lib/pypy2.7 - exeinto "${dest}" - newexe "${T}"/usession*-0/testing_1/pypy-c pypy-c-${PV} - insinto "${dest}"/include/${PV} - doins include/pypy_* - pax-mark m "${ED}${dest}/pypy-c-${PV}" -} diff --git a/dev-python/pypy-exe/pypy-exe-7.3.2_rc1.ebuild b/dev-python/pypy-exe/pypy-exe-7.3.2_rc1.ebuild deleted file mode 100644 index 07e3be2ee5c4..000000000000 --- a/dev-python/pypy-exe/pypy-exe-7.3.2_rc1.ebuild +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python2_7 ) -inherit check-reqs pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy2.7-v${PV/_/} -DESCRIPTION="PyPy executable (build from source)" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -SLOT="${PV}" -KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2" - -RDEPEND=">=sys-libs/zlib-1.1.3:0= - dev-libs/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - !dev-python/pypy-exe-bin:${PV}" -# don't enforce the dep on pypy with USE=low-memory since it's going -# to cause either collisions or circular dep on itself -DEPEND="${RDEPEND}" -BDEPEND=" - !low-memory? ( - || ( - dev-python/pypy - ( - dev-lang/python:2.7 - dev-python/pycparser[python_targets_python2_7(-),python_single_target_python2_7(+)] - ) - ) - )" - -check_env() { - if use low-memory; then - if ! has_version -b dev-python/pypy && - ! has_version -b dev-python/pypy-bin - then - eerror "USE=low-memory requires a (possibly old) version of dev-python/pypy" - eerror "being installed. Please install it using e.g.:" - eerror - eerror " $ emerge -1v dev-python/pypy dev-python/pypy-exe-bin" - eerror - eerror "before attempting to build dev-python/pypy-exe[low-memory]." - die "dev-python/pypy needs to be installed for USE=low-memory" - fi - - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend -} - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && check_env -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - check_env - - use low-memory && EPYTHON= - if [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]] && - { has_version -b dev-python/pypy || - has_version -b dev-python/pypy-bin; } - then - einfo "Using already-installed PyPy to perform the translation." - EPYTHON=pypy - else - einfo "Using ${EPYTHON} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please unset" - einfo "the EPYTHON variable." - python-any-r1_pkg_setup - fi - fi -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --no-shared - $(usex jit -Ojit -O2) - - ${jit_backend} - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${EPYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${EPYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 -} - -src_install() { - local dest=/usr/lib/pypy2.7 - exeinto "${dest}" - newexe "${T}"/usession*-0/testing_1/pypy-c pypy-c-${PV} - insinto "${dest}"/include/${PV} - doins include/pypy_* - pax-mark m "${ED}${dest}/pypy-c-${PV}" -} diff --git a/dev-python/pypy/Manifest b/dev-python/pypy/Manifest index 8e381e016a8f..6c73fdd19560 100644 --- a/dev-python/pypy/Manifest +++ b/dev-python/pypy/Manifest @@ -1,6 +1,4 @@ -DIST pypy2.7-v7.3.0-src.tar.bz2 20328540 BLAKE2B 7f71c98f436f11e8f4d248b6aeb3e2f81962cdeeaf3eb534473f1c6b5e8cd37d9abc047d7fa750a1ceeeaa63fab6eff6e5f1e60394b8104bbcd7e1fc47885c61 SHA512 05f039f090d837a72012db55f23d94da3f21c7458f18bd1e8ba632489248eb6486ced07b786d05e573abf2b3def2a68d96e7e1109e6d189d8e6c303c60ee3535 DIST pypy2.7-v7.3.1-src.tar.bz2 21053306 BLAKE2B 071d59b7978c98e9ed9243d9a64d93d21b524351cb9a45e0f7d48828f919c84585a1164e7c38739fdd8828ab4b1eedade96dff7d64d0d9cbfe00c74d88d532bb SHA512 1bec44fa0fc4b1186e25f69303f9e332df32184be990d86fba41c40152664a93bd65eabf4dded133371271402cea9b150b60c13bce89d1004b276f0908c0b8f1 -DIST pypy2.7-v7.3.2rc1-src.tar.bz2 21136151 BLAKE2B 50a2fb407624f3831095af9a1859399a39be039e54673a2f015049071cbf128302567f6fd7423bbdf757f46b9f32a09c0ba09985ce046731893f4d1563416050 SHA512 09b0aa48e5d09d87b592d6a5cfa3c7d3e2c93898b8250c31cfae99c44c79c41f05ac1d4b400d82d610e4e56dedacdd97c51b89308ea3a38f6ded8eda0779a08b DIST pypy2.7-v7.3.2rc2-src.tar.bz2 21145693 BLAKE2B e722111435f81d00ecb5cec83e78e17676a042703fe83c049456fa6e5debdb1c09cc3f1fd71bcd8a8469da373a7c8131c252b3f139959a442f4cfa2b7f202c6f SHA512 ba7cccdaff1616ad0090cb0942ad35eda025a758be4d6b4e978bce19fb8cb8840136297fb924127a7e99f02c09665bde7eaf714e1744b9b32612973355459ad4 DIST python-gentoo-patches-2.7.17-r1.tar.xz 14708 BLAKE2B f6e25236a471649de122d0f29506f7a4f34044a568ead47a68980411d9722b761fe1f9d653d5edccb6978b65c8c1eecbef55f403b94f32b37c0ad68e061505a8 SHA512 ecdde5e38c6fe5e69691fb3a68c8f4f43da7857d4abaff763d3cf6ad864ba43c769c03b186b60f2736a1ffb1e3e4c9982715d1b8a99ff3f5740096153bb8a90f DIST python-gentoo-patches-2.7.18-r1.tar.xz 15500 BLAKE2B 7008b29827dbbd80d4ab8f010ccf9efced99c6b4b9109e4430c0ba269ce53529cb6fedd832502c8d2d3aa21938749cc3591c2545b21c0a59a6e60f8598e84ccc SHA512 e656ab07281fd932b92165674619bbf55ecf410d2937ae4ae771d490b4532540498cc731d30d19c1e8aafd1f64df8a406bbfbb46ea985b3dcd8edb89a0b7f20f diff --git a/dev-python/pypy/files/7.0.0-gentoo-path.patch b/dev-python/pypy/files/7.0.0-gentoo-path.patch deleted file mode 100644 index 9be52cd0b753..000000000000 --- a/dev-python/pypy/files/7.0.0-gentoo-path.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 959e2aafbe6cabd4e6860f842bce9b8644f627ca Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Fri, 27 Nov 2015 17:02:42 +0100 -Subject: [PATCH] Gentoo: override paths for system-wide install based on - sys.prefix - -Override all default distutils install paths to ones suitable for -system-wide install when sys.prefix indicates we're running the Gentoo -system-wide install of PyPy with no prefix overrides (e.g. virtualenv). - -Fixes: https://bugs.gentoo.org/462306 -Fixes: https://bugs.gentoo.org/465546 - -[updated for 7.0.0] ---- - lib-python/2.7/distutils/command/install.py | 13 ++++++++++++- - 1 file changed, 12 insertions(+), 1 deletion(-) - -diff --git a/lib-python/2.7/distutils/command/install.py b/lib-python/2.7/distutils/command/install.py -index fc43951da0..c2564188cb 100644 ---- a/lib-python/2.7/distutils/command/install.py -+++ b/lib-python/2.7/distutils/command/install.py -@@ -90,6 +90,13 @@ INSTALL_SCHEMES = { - 'scripts': '$base/bin', - 'data' : '$base', - }, -+ 'gentoo': { -+ 'purelib': '$base/site-packages', -+ 'platlib': '$base/site-packages', -+ 'headers': '$base/include', -+ 'scripts': '@EPREFIX@/usr/bin', -+ 'data' : '@EPREFIX@/usr', -+ }, - } - - # The keys to an installation scheme; if any new types of files are to be -@@ -476,7 +483,11 @@ class install (Command): - # it's the caller's problem if they supply a bad name! - if (hasattr(sys, 'pypy_version_info') and - not name.endswith(('_user', '_home'))): -- name = 'pypy' -+ if self.install_base == os.path.normpath('@EPREFIX@/usr/lib/pypy2.7'): -+ # override paths for system-wide install -+ name = 'gentoo' -+ else: -+ name = 'pypy' - scheme = INSTALL_SCHEMES[name] - for key in SCHEME_KEYS: - attrname = 'install_' + key --- -2.21.0.rc1 - diff --git a/dev-python/pypy/pypy-7.3.0.ebuild b/dev-python/pypy/pypy-7.3.0.ebuild deleted file mode 100644 index d39cd6b286bb..000000000000 --- a/dev-python/pypy/pypy-7.3.0.ebuild +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit pax-utils python-utils-r1 - -MY_P=pypy2.7-v${PV/_/} -# note: remember to update this to newest dev-lang/python:2.7 on bump -PATCHSET="python-gentoo-patches-2.7.17-r1" - -DESCRIPTION="A fast, compliant alternative implementation of the Python language" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2 - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -# pypy -c 'import sysconfig; print sysconfig.get_config_var("SOABI")' -SLOT="0/73" -KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 gdbm +jit libressl ncurses sqlite tk" - -RDEPEND=" - || ( - dev-python/pypy-exe:${PV}[bzip2?,ncurses?] - dev-python/pypy-exe-bin:${PV} - ) - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - gdbm? ( sys-libs/gdbm:0= ) - sqlite? ( dev-db/sqlite:3= ) - tk? ( - dev-lang/tk:0= - dev-tcltk/tix:0= - ) - !<dev-python/pypy-bin-7.3.0:0" -DEPEND="${RDEPEND}" - -src_prepare() { - eapply "${FILESDIR}/7.0.0-gentoo-path.patch" - eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" - - sed -e "s^@EPREFIX@^${EPREFIX}^" \ - -i lib-python/2.7/distutils/command/install.py || die - - # apply CPython stdlib patches - pushd lib-python/2.7 > /dev/null || die - # TODO: cpy turkish locale patch now fixes C code - # probably needs better port to pypy, if it is broken there - eapply "${FILESDIR}"/5.8.0_all_distutils_cxx.patch - eapply -p2 "${WORKDIR}/${PATCHSET}"/0010-use_pyxml.patch - popd > /dev/null || die - - # this test relies on pypy-c hardcoding correct build time paths - sed -i -e 's:test_executable_without_cwd:_&:' \ - lib-python/2.7/test/test_subprocess.py || die - # this one seems to rely on cpython gc handling (?) - sed -i -e 's:test_number_of_objects:_&:' \ - lib-python/2.7/test/test_multiprocessing.py || die - # hardcoded assumptions (?) - sed -i -e 's:test_alpn_protocols:_&:' \ - -e 's:test_default_ecdh_curve:_&:' \ - lib-python/2.7/test/test_ssl.py || die - # requires Internet - sed -i -e '/class NetworkedTests/i@unittest.skip("Requires networking")' \ - lib-python/2.7/test/test_ssl.py || die - # TODO: investigate (sandbox?) - sed -i -e 's:test__copy_to_each:_&:' \ - lib-python/2.7/test/test_pty.py || die - - eapply_user -} - -src_compile() { - # copy over to make sys.prefix happy - cp -p "${BROOT}"/usr/lib/pypy2.7/pypy-c-${PV} pypy-c || die - cp -p "${BROOT}"/usr/lib/pypy2.7/include/${PV}/* include/ || die - # (not installed by pypy) - rm pypy/module/cpyext/include/_numpypy/numpy/README || die - mv pypy/module/cpyext/include/* include/ || die - mv pypy/module/cpyext/parse/*.h include/ || die - pax-mark m pypy-c - - einfo "Generating caches and CFFI modules ..." - - # Generate Grammar and PatternGrammar pickles. - ./pypy-c -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 = { -# "_ssl": "_ssl_build.py", -# "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, -# "resource": "_resource_build.py" if sys.platform != "win32" else None, - cffi_targets=( ssl audioop syslog pwdgrp resource ) - use gdbm && cffi_targets+=( gdbm ) - use ncurses && cffi_targets+=( curses ) - 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 lib_pypy || die - for t in "${cffi_targets[@]}"; do - # tkinter doesn't work via -m - ../pypy-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" - done - - # Cleanup temporary objects - find -name "_cffi_*.[co]" -delete || die - find -type d -empty -delete || die -} - -src_test() { - # (unset) - local -x PYTHONDONTWRITEBYTECODE= - - local ignored_tests=( - # network - --ignore=lib-python/2.7/test/test_urllibnet.py - --ignore=lib-python/2.7/test/test_urllib2net.py - # lots of free space - --ignore=lib-python/2.7/test/test_zipfile64.py - # no module named 'worker' -- a lot - --ignore=lib-python/2.7/test/test_xpickle.py - ) - - ./pypy-c ./pypy/test_all.py --pypy=./pypy-c -vv \ - "${ignored_tests[@]}" lib-python || die -} - -src_install() { - local dest=/usr/lib/pypy2.7 - einfo "Installing PyPy ..." - dosym pypy-c-${PV} "${dest}/pypy-c" - insinto "${dest}" - # preserve mtimes to avoid obsoleting caches - insopts -p - doins -r include lib_pypy lib-python - - # replace copied headers with symlinks - for x in "${BROOT}"/usr/lib/pypy2.7/include/${PV}/*; do - dosym "${PV}/${x##*/}" "${dest}/include/${x##*/}" - done - - dosym ../lib/pypy2.7/pypy-c /usr/bin/pypy - dodoc README.rst - - if ! use gdbm; then - rm -r "${ED}${dest}"/lib_pypy/gdbm.py \ - "${ED}${dest}"/lib-python/*2.7/test/test_gdbm.py || die - fi - if ! use sqlite; then - rm -r "${ED}${dest}"/lib-python/*2.7/sqlite3 \ - "${ED}${dest}"/lib_pypy/_sqlite3.py \ - "${ED}${dest}"/lib-python/*2.7/test/test_sqlite.py || die - fi - if ! use tk; then - rm -r "${ED}${dest}"/lib-python/*2.7/{idlelib,lib-tk} \ - "${ED}${dest}"/lib_pypy/_tkinter \ - "${ED}${dest}"/lib-python/*2.7/test/test_{tcl,tk,ttk*}.py || die - fi - - local -x EPYTHON=pypy - local -x PYTHON=${ED}${dest}/pypy-c - - echo "EPYTHON='${EPYTHON}'" > epython.py || die - python_moduleinto /usr/lib/pypy2.7/site-packages - python_domodule epython.py - - einfo "Byte-compiling Python standard library..." - python_optimize "${ED}${dest}" -} diff --git a/dev-python/pypy/pypy-7.3.1-r2.ebuild b/dev-python/pypy/pypy-7.3.1-r3.ebuild index 59902f3b0a51..8508153c294f 100644 --- a/dev-python/pypy/pypy-7.3.1-r2.ebuild +++ b/dev-python/pypy/pypy-7.3.1-r3.ebuild @@ -166,7 +166,9 @@ src_install() { fi local -x EPYTHON=pypy - local -x PYTHON=${ED}${dest}/pypy-c + local -x PYTHON=${ED}${dest}/pypy-c-${PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}${dest}/pypy-c-${PV}" "${PYTHON}" || die echo "EPYTHON='${EPYTHON}'" > epython.py || die python_moduleinto /usr/lib/pypy2.7/site-packages @@ -174,4 +176,7 @@ src_install() { einfo "Byte-compiling Python standard library..." python_optimize "${ED}${dest}" + + # remove to avoid collisions + rm "${PYTHON}" || die } diff --git a/dev-python/pypy/pypy-7.3.2_rc1.ebuild b/dev-python/pypy/pypy-7.3.2_rc1.ebuild deleted file mode 100644 index 1d0ad929c04b..000000000000 --- a/dev-python/pypy/pypy-7.3.2_rc1.ebuild +++ /dev/null @@ -1,173 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit pax-utils python-utils-r1 - -MY_P=pypy2.7-v${PV/_/} -# note: remember to update this to newest dev-lang/python:2.7 on bump -PATCHSET="python-gentoo-patches-2.7.18-r1" - -DESCRIPTION="A fast, compliant alternative implementation of the Python language" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2 - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -# pypy -c 'import sysconfig; print sysconfig.get_config_var("SOABI")' -SLOT="0/73" -KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 gdbm +jit libressl ncurses sqlite tk" - -RDEPEND=" - || ( - dev-python/pypy-exe:${PV}[bzip2?,ncurses?] - dev-python/pypy-exe-bin:${PV} - ) - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - gdbm? ( sys-libs/gdbm:0= ) - sqlite? ( dev-db/sqlite:3= ) - tk? ( - dev-lang/tk:0= - dev-tcltk/tix:0= - ) - !<dev-python/pypy-bin-7.3.0:0" -DEPEND="${RDEPEND}" - -src_prepare() { - eapply "${FILESDIR}/7.3.1-gentoo-path.patch" - eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" - - sed -e "s^@EPREFIX@^${EPREFIX}^" \ - -i lib-python/2.7/distutils/command/install.py || die - - # apply CPython stdlib patches - pushd lib-python/2.7 > /dev/null || die - # TODO: cpy turkish locale patch now fixes C code - # probably needs better port to pypy, if it is broken there - eapply "${FILESDIR}"/5.8.0_all_distutils_cxx.patch - eapply -p2 "${WORKDIR}/${PATCHSET}"/0010-use_pyxml.patch - eapply -p2 "${WORKDIR}/${PATCHSET}"/0017-bpo-39017-Avoid-infinite-loop-in-the-tarfile-module-.patch - popd > /dev/null || die - - # this test relies on pypy-c hardcoding correct build time paths - sed -i -e 's:test_executable_without_cwd:_&:' \ - lib-python/2.7/test/test_subprocess.py || die - # requires Internet - sed -i -e '/class NetworkedTests/i@unittest.skip("Requires networking")' \ - lib-python/2.7/test/test_ssl.py || die - - eapply_user -} - -src_compile() { - # copy over to make sys.prefix happy - cp -p "${BROOT}"/usr/lib/pypy2.7/pypy-c-${PV} pypy-c || die - cp -p "${BROOT}"/usr/lib/pypy2.7/include/${PV}/* include/ || die - # (not installed by pypy) - rm pypy/module/cpyext/include/_numpypy/numpy/README || die - mv pypy/module/cpyext/include/* include/ || die - mv pypy/module/cpyext/parse/*.h include/ || die - pax-mark m pypy-c - - einfo "Generating caches and CFFI modules ..." - - # Generate Grammar and PatternGrammar pickles. - ./pypy-c -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 = { -# "_ssl": "_ssl_build.py", -# "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, -# "resource": "_resource_build.py" if sys.platform != "win32" else None, - cffi_targets=( ssl audioop syslog pwdgrp resource ) - use gdbm && cffi_targets+=( gdbm ) - use ncurses && cffi_targets+=( curses ) - 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 lib_pypy || die - for t in "${cffi_targets[@]}"; do - # tkinter doesn't work via -m - ../pypy-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" - done - - # Cleanup temporary objects - find -name "_cffi_*.[co]" -delete || die - find -type d -empty -delete || die -} - -src_test() { - # (unset) - local -x PYTHONDONTWRITEBYTECODE= - - local ignored_tests=( - # network - --ignore=lib-python/2.7/test/test_urllibnet.py - --ignore=lib-python/2.7/test/test_urllib2net.py - # lots of free space - --ignore=lib-python/2.7/test/test_zipfile64.py - # no module named 'worker' -- a lot - --ignore=lib-python/2.7/test/test_xpickle.py - ) - - ./pypy-c ./pypy/test_all.py --pypy=./pypy-c -vv \ - "${ignored_tests[@]}" lib-python || die -} - -src_install() { - local dest=/usr/lib/pypy2.7 - einfo "Installing PyPy ..." - dosym pypy-c-${PV} "${dest}/pypy-c" - insinto "${dest}" - # preserve mtimes to avoid obsoleting caches - insopts -p - doins -r include lib_pypy lib-python - - # replace copied headers with symlinks - for x in "${BROOT}"/usr/lib/pypy2.7/include/${PV}/*; do - dosym "${PV}/${x##*/}" "${dest}/include/${x##*/}" - done - - dosym ../lib/pypy2.7/pypy-c /usr/bin/pypy - dodoc README.rst - - if ! use gdbm; then - rm -r "${ED}${dest}"/lib_pypy/gdbm.py \ - "${ED}${dest}"/lib-python/*2.7/test/test_gdbm.py || die - fi - if ! use sqlite; then - rm -r "${ED}${dest}"/lib-python/*2.7/sqlite3 \ - "${ED}${dest}"/lib_pypy/_sqlite3.py \ - "${ED}${dest}"/lib-python/*2.7/test/test_sqlite.py || die - fi - if ! use tk; then - rm -r "${ED}${dest}"/lib-python/*2.7/{idlelib,lib-tk} \ - "${ED}${dest}"/lib_pypy/_tkinter \ - "${ED}${dest}"/lib-python/*2.7/test/test_{tcl,tk,ttk*}.py || die - fi - - local -x EPYTHON=pypy - local -x PYTHON=${ED}${dest}/pypy-c - - echo "EPYTHON='${EPYTHON}'" > epython.py || die - python_moduleinto /usr/lib/pypy2.7/site-packages - python_domodule epython.py - - einfo "Byte-compiling Python standard library..." - python_optimize "${ED}${dest}" -} diff --git a/dev-python/pypy/pypy-7.3.2_rc2.ebuild b/dev-python/pypy/pypy-7.3.2_rc2-r1.ebuild index d6556f35ca7b..a5a678ffa9d0 100644 --- a/dev-python/pypy/pypy-7.3.2_rc2.ebuild +++ b/dev-python/pypy/pypy-7.3.2_rc2-r1.ebuild @@ -159,7 +159,9 @@ src_install() { fi local -x EPYTHON=pypy - local -x PYTHON=${ED}${dest}/pypy-c + local -x PYTHON=${ED}${dest}/pypy-c-${PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}${dest}/pypy-c-${PV}" "${PYTHON}" || die echo "EPYTHON='${EPYTHON}'" > epython.py || die python_moduleinto /usr/lib/pypy2.7/site-packages @@ -167,4 +169,7 @@ src_install() { einfo "Byte-compiling Python standard library..." python_optimize "${ED}${dest}" + + # remove to avoid collisions + rm "${PYTHON}" || die } diff --git a/dev-python/pypy3-exe-bin/Manifest b/dev-python/pypy3-exe-bin/Manifest index 9986855d9fe5..133406c1fb89 100644 --- a/dev-python/pypy3-exe-bin/Manifest +++ b/dev-python/pypy3-exe-bin/Manifest @@ -1,4 +1,2 @@ -DIST pypy3-exe-7.3.0-1.amd64.xpak 11650308 BLAKE2B 49f8fff0675acb75ca8fa525f4554807ef90307a5236ece6d4ca242ab016629f926559d1b82641fd9b15d77eaf9736f9c9a2c82fc280a492d90f4e99218cc8c3 SHA512 b22d90e14f88ce5ea9488f9796931fe9afb68dad926835a3311cd284e681e2c680df576d8859c00ece41508d56682dae21ef0e34dc77e47010141a6e58322efb -DIST pypy3-exe-7.3.0-1.x86.xpak 8953475 BLAKE2B e271c61341d2d92cd05c0e521d3ea1a752639d5111687b625329679f295abe1c6f5d5221e024352fd2310d20156100b107d520021f2060812f2a2cd6ce12a4d2 SHA512 969a38fc6f64e994b13bb7b0e62eba1b0f86949d63bd72116f67012ab039b696212d412d9d8d851ed33099f0bdc7be739a082e080893546f080da60789d273f0 DIST pypy3-exe-7.3.1-1.amd64.xpak 11657579 BLAKE2B 1a037b447c7a73ac37bd7c33f4009442dabaf082a844744093dbb0f835b71abad48a6bfb28ebed0b02bb8a86f59f11b351768f152fd5db8b31ee010b14ffde79 SHA512 ee03ac675e6967d306136e79cbbb1554c44a32a21a0756b09dd7c1af84a9b3cb7e69a0094431bf6427271cf2fb1840e62935f53580e8d3eedef54d9bef2994e2 DIST pypy3-exe-7.3.1-1.x86.xpak 8983621 BLAKE2B 00ea3210e040dd72f169eb2f162f032eb3ddadefd5f114cb4fdb052b40640235f866fc26f577eb22ff64025d2b4234a194529cbac6350aeffa17bb662e98c5b0 SHA512 caa6e4e08c61e3101aa7e971b2aeae04b41c57206327baefeee4a077d09b5bef28ca3518e6823bdf9907ccd4a8ee2b843369ffd87ef0bcb95a66f21ddd87c61e diff --git a/dev-python/pypy3-exe-bin/pypy3-exe-bin-7.3.0_p1.ebuild b/dev-python/pypy3-exe-bin/pypy3-exe-bin-7.3.0_p1.ebuild deleted file mode 100644 index 6cd2dada56ef..000000000000 --- a/dev-python/pypy3-exe-bin/pypy3-exe-bin-7.3.0_p1.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit pax-utils - -MY_P=pypy3-exe-${PV/_p/-} -DESCRIPTION="PyPy3 executable (pre-built version)" -HOMEPAGE="https://pypy.org/" -SRC_URI=" - amd64? ( - https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy3-exe/${MY_P}.xpak - -> ${MY_P}.amd64.xpak - ) - x86? ( - https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy3-exe/${MY_P}.xpak - -> ${MY_P}.x86.xpak - )" -S="${WORKDIR}" - -LICENSE="MIT" -SLOT="${PV%_p*}" -KEYWORDS="amd64 x86" - -RDEPEND=">=sys-libs/zlib-1.1.3:0/1 - dev-libs/libffi:0/7 - virtual/libintl:0/0 - dev-libs/expat:0/0 - app-arch/bzip2:0/1 - sys-libs/ncurses:0/6 - !dev-python/pypy-exe:${PV}" - -QA_PREBUILT=" - usr/lib/pypy3.6/pypy3-c-${SLOT}" - -src_unpack() { - ebegin "Unpacking ${MY_P}.${ARCH}.xpak" - tar -x < <(xz -c -d --single-stream "${DISTDIR}/${MY_P}.${ARCH}.xpak") - eend ${?} || die "Unpacking ${MY_P} failed" -} - -src_install() { - insinto / - doins -r usr - fperms +x "/usr/lib/pypy3.6/pypy3-c-${SLOT}" - pax-mark m "${ED}/usr/lib/pypy3.6/pypy3-c-${SLOT}" -} diff --git a/dev-python/pypy3-exe/Manifest b/dev-python/pypy3-exe/Manifest index 45dd21d0c511..39001d40e360 100644 --- a/dev-python/pypy3-exe/Manifest +++ b/dev-python/pypy3-exe/Manifest @@ -1,6 +1,3 @@ -DIST pypy3.6-v7.3.0-src.tar.bz2 21937786 BLAKE2B c53ac32a9cca1c4624160eae9f11b5705a59613f1e5100fbb0ee86118de5a7845b8fa5087165d7f5a077d20337dfca14a1c7eadbe768995e20e249ec271ac10d SHA512 313a4254262dd8d8b995a50bddbc360cfb67add0818e51a3e9ce25bda6a9b639e9fea8efe7da6adda76dff0a86a364544a13faa516e51b9ea6c25ec99223b435 DIST pypy3.6-v7.3.1-src.tar.bz2 22712809 BLAKE2B 4250b3fe98c611b9635319c106b80e88ab469eab5f883babb738e175e7b7adc22c85f8ef3fdce1cdc127b521beef8d6c7862e188d8c8889c39f90136d6bbe374 SHA512 f8e32aae7f01225e0e4d6763eaac40fc02dffc3d0b6a30f22d422147f9be4f3290ea78160a912ffae311dea3d503eb31a7a4f3999d3b541fbccd93d1cef4ca56 -DIST pypy3.6-v7.3.2rc1-src.tar.bz2 22730858 BLAKE2B 41a0702d0077c0f546998b858bc8b76226fe8903f4819497aa284231edcb32bc8b047b0a2a35bacfb18ea11fb85de98b95998276c22a3f0dc716b16871b35a3a SHA512 1a6f93f7e767b0db5c40c1e06cadd781c6ddfb02ec86aa61a37f649fe1aa5cd71f7857052e5b48092e3bf8b5cbef6d6401097bf4c4e80c62f7dbdffcd20b70c0 DIST pypy3.6-v7.3.2rc2-src.tar.bz2 22750248 BLAKE2B 6a8a3c4306cb5c796ee89f3d9ece61f5d669515ae9edf4961f43c7779123554cda0f3b433f8264d3d08e531ef5fe660b494135321a11f441ae1de97ce0abb332 SHA512 a89184314d04bad646cf2e2151e2d5f27ca23a68f25e22b5c2e4f07745671e70c71d869be1c61248ee839632f7151b597fe79eb5af814967a1ae97f2c2cdb8ee -DIST pypy3.7-v7.3.2rc1-src.tar.bz2 24805791 BLAKE2B 7b16ba9f0b33d572facdf009701712fe1b2c1eb5a4187c3a9197973ef4da140c7704b3409c7c336e1027f89df340fcefc9e52c6ccac75b251aa79d67c98e49c4 SHA512 d2a5c02a541c0ae79cf8c8e1a38299351f9dd81d1a17724d9fe346d8eb4311e2566a319cf1b8a90d393bffdc11657f6fa2f6475441634e57701b00e74899baa0 DIST pypy3.7-v7.3.2rc2-src.tar.bz2 25066853 BLAKE2B 286ec0909d4b9ba9039cd9ca234a90832e99369f5e7e36a486d219661631efac186e02146dd5bc5a51521fcfdd0047c3fa5a6dbffd20cebe8ff7c209d02fec53 SHA512 c8e5dc5ded2989aa3a6b635e040c23bb8e2812101ce22a104f251e0abaa3320b61f2f611ece58d6b8a8ae9f1cbc8ca22c920f3491dd5653bcb0e05264fd54a4f diff --git a/dev-python/pypy3-exe/files/pypy3-exe-7.3.0-gcc10-fno-common.patch b/dev-python/pypy3-exe/files/pypy3-exe-7.3.0-gcc10-fno-common.patch deleted file mode 100644 index b072ee4c1e60..000000000000 --- a/dev-python/pypy3-exe/files/pypy3-exe-7.3.0-gcc10-fno-common.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 455e1f635110df4bdc2981a3a0abf02e3d4d21b2 Mon Sep 17 00:00:00 2001 -From: Matti Picus <matti.picus@gmail.com> -Date: Wed, 26 Feb 2020 13:06:29 +0200 -Subject: [PATCH] issue 3163: the constant is defined both in vmprof_common.h and vmprof_common.c - ---- - rpython/rlib/rvmprof/src/shared/vmprof_common.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/rpython/rlib/rvmprof/src/shared/vmprof_common.h b/rpython/rlib/rvmprof/src/shared/vmprof_common.h -index b52ee5f..1b2278b 100644 ---- a/rpython/rlib/rvmprof/src/shared/vmprof_common.h -+++ b/rpython/rlib/rvmprof/src/shared/vmprof_common.h -@@ -89,7 +89,7 @@ int opened_profile(const char *interp_name, int memory, int proflines, int nativ - result is NULL. */ - #if PY_MAJOR_VERSION >= 3 && !defined(_Py_atomic_load_relaxed) - /* this was abruptly un-defined in 3.5.1 */ --void *volatile _PyThreadState_Current; -+extern void *volatile _PyThreadState_Current; - /* XXX simple volatile access is assumed atomic */ - # define _Py_atomic_load_relaxed(pp) (*(pp)) - #endif --- -libgit2 0.26.0 - diff --git a/dev-python/pypy3-exe/pypy3-exe-7.3.0.ebuild b/dev-python/pypy3-exe/pypy3-exe-7.3.0.ebuild deleted file mode 100644 index edc7a19739c6..000000000000 --- a/dev-python/pypy3-exe/pypy3-exe-7.3.0.ebuild +++ /dev/null @@ -1,156 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 ) -inherit check-reqs pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy3.6-v${PV/_/} -DESCRIPTION="PyPy3 executable (build from source)" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -SLOT="${PV}" -KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2" - -RDEPEND=">=sys-libs/zlib-1.1.3:0= - dev-libs/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - !dev-python/pypy3-exe-bin:${PV}" -DEPEND="${RDEPEND}" -BDEPEND=" - low-memory? ( dev-python/pypy ) - !low-memory? ( - || ( - dev-python/pypy - ( - dev-lang/python:2.7 - dev-python/pycparser[python_targets_python2_7(-),python_single_target_python2_7(+)] - ) - ) - )" - -PATCHES=( - # https://bugs.gentoo.org/706760 - "${FILESDIR}"/${PN}-7.3.0-gcc10-fno-common.patch -) - -check_env() { - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend -} - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && check_env -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - check_env - - # unset to allow forcing pypy below :) - use low-memory && EPYTHON= - if [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]] && - { has_version -b dev-python/pypy || - has_version -b dev-python/pypy-bin; } - then - einfo "Using PyPy to perform the translation." - EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "dev-python/pypy and ensure that EPYTHON variable is unset." - python-any-r1_pkg_setup - fi - fi -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --no-shared - $(usex jit -Ojit -O2) - - ${jit_backend} - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${EPYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${EPYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 -} - -src_install() { - local dest=/usr/lib/pypy3.6 - exeinto "${dest}" - newexe "${T}"/usession*-0/testing_1/pypy3-c pypy3-c-${PV} - insinto "${dest}"/include/${PV} - doins include/pypy_* - pax-mark m "${ED}${dest}/pypy3-c-${PV}" -} diff --git a/dev-python/pypy3-exe/pypy3-exe-7.3.2_rc1-r100.ebuild b/dev-python/pypy3-exe/pypy3-exe-7.3.2_rc1-r100.ebuild deleted file mode 100644 index df9d87c92395..000000000000 --- a/dev-python/pypy3-exe/pypy3-exe-7.3.2_rc1-r100.ebuild +++ /dev/null @@ -1,151 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 ) -inherit check-reqs pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy3.7-v${PV/_/} -DESCRIPTION="PyPy3 executable (build from source)" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -SLOT="${PV}-py37" -KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2" - -RDEPEND=">=sys-libs/zlib-1.1.3:0= - dev-libs/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - !dev-python/pypy3-exe-bin:${PV}" -DEPEND="${RDEPEND}" -BDEPEND=" - low-memory? ( dev-python/pypy ) - !low-memory? ( - || ( - dev-python/pypy - ( - dev-lang/python:2.7 - dev-python/pycparser[python_targets_python2_7(-),python_single_target_python2_7(+)] - ) - ) - )" - -check_env() { - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend -} - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && check_env -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - check_env - - # unset to allow forcing pypy below :) - use low-memory && EPYTHON= - if [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]] && - { has_version -b dev-python/pypy || - has_version -b dev-python/pypy-bin; } - then - einfo "Using PyPy to perform the translation." - EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "dev-python/pypy and ensure that EPYTHON variable is unset." - python-any-r1_pkg_setup - fi - fi -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --no-shared - $(usex jit -Ojit -O2) - - ${jit_backend} - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${EPYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${EPYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 -} - -src_install() { - local dest=/usr/lib/pypy3.7 - exeinto "${dest}" - newexe "${T}"/usession*-0/testing_1/pypy3-c pypy3-c-${PV} - insinto "${dest}"/include/${PV} - doins include/pypy_* - pax-mark m "${ED}${dest}/pypy3-c-${PV}" -} diff --git a/dev-python/pypy3-exe/pypy3-exe-7.3.2_rc1.ebuild b/dev-python/pypy3-exe/pypy3-exe-7.3.2_rc1.ebuild deleted file mode 100644 index 24b904343e13..000000000000 --- a/dev-python/pypy3-exe/pypy3-exe-7.3.2_rc1.ebuild +++ /dev/null @@ -1,151 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 ) -inherit check-reqs pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy3.6-v${PV/_/} -DESCRIPTION="PyPy3 executable (build from source)" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -SLOT="${PV}" -KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2" - -RDEPEND=">=sys-libs/zlib-1.1.3:0= - dev-libs/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - !dev-python/pypy3-exe-bin:${PV}" -DEPEND="${RDEPEND}" -BDEPEND=" - low-memory? ( dev-python/pypy ) - !low-memory? ( - || ( - dev-python/pypy - ( - dev-lang/python:2.7 - dev-python/pycparser[python_targets_python2_7(-),python_single_target_python2_7(+)] - ) - ) - )" - -check_env() { - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend -} - -pkg_pretend() { - [[ ${MERGE_TYPE} != binary ]] && check_env -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - check_env - - # unset to allow forcing pypy below :) - use low-memory && EPYTHON= - if [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]] && - { has_version -b dev-python/pypy || - has_version -b dev-python/pypy-bin; } - then - einfo "Using PyPy to perform the translation." - EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "dev-python/pypy and ensure that EPYTHON variable is unset." - python-any-r1_pkg_setup - fi - fi -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --no-shared - $(usex jit -Ojit -O2) - - ${jit_backend} - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${EPYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${EPYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 -} - -src_install() { - local dest=/usr/lib/pypy3.6 - exeinto "${dest}" - newexe "${T}"/usession*-0/testing_1/pypy3-c pypy3-c-${PV} - insinto "${dest}"/include/${PV} - doins include/pypy_* - pax-mark m "${ED}${dest}/pypy3-c-${PV}" -} diff --git a/dev-python/pypy3/Manifest b/dev-python/pypy3/Manifest index 45dd21d0c511..39001d40e360 100644 --- a/dev-python/pypy3/Manifest +++ b/dev-python/pypy3/Manifest @@ -1,6 +1,3 @@ -DIST pypy3.6-v7.3.0-src.tar.bz2 21937786 BLAKE2B c53ac32a9cca1c4624160eae9f11b5705a59613f1e5100fbb0ee86118de5a7845b8fa5087165d7f5a077d20337dfca14a1c7eadbe768995e20e249ec271ac10d SHA512 313a4254262dd8d8b995a50bddbc360cfb67add0818e51a3e9ce25bda6a9b639e9fea8efe7da6adda76dff0a86a364544a13faa516e51b9ea6c25ec99223b435 DIST pypy3.6-v7.3.1-src.tar.bz2 22712809 BLAKE2B 4250b3fe98c611b9635319c106b80e88ab469eab5f883babb738e175e7b7adc22c85f8ef3fdce1cdc127b521beef8d6c7862e188d8c8889c39f90136d6bbe374 SHA512 f8e32aae7f01225e0e4d6763eaac40fc02dffc3d0b6a30f22d422147f9be4f3290ea78160a912ffae311dea3d503eb31a7a4f3999d3b541fbccd93d1cef4ca56 -DIST pypy3.6-v7.3.2rc1-src.tar.bz2 22730858 BLAKE2B 41a0702d0077c0f546998b858bc8b76226fe8903f4819497aa284231edcb32bc8b047b0a2a35bacfb18ea11fb85de98b95998276c22a3f0dc716b16871b35a3a SHA512 1a6f93f7e767b0db5c40c1e06cadd781c6ddfb02ec86aa61a37f649fe1aa5cd71f7857052e5b48092e3bf8b5cbef6d6401097bf4c4e80c62f7dbdffcd20b70c0 DIST pypy3.6-v7.3.2rc2-src.tar.bz2 22750248 BLAKE2B 6a8a3c4306cb5c796ee89f3d9ece61f5d669515ae9edf4961f43c7779123554cda0f3b433f8264d3d08e531ef5fe660b494135321a11f441ae1de97ce0abb332 SHA512 a89184314d04bad646cf2e2151e2d5f27ca23a68f25e22b5c2e4f07745671e70c71d869be1c61248ee839632f7151b597fe79eb5af814967a1ae97f2c2cdb8ee -DIST pypy3.7-v7.3.2rc1-src.tar.bz2 24805791 BLAKE2B 7b16ba9f0b33d572facdf009701712fe1b2c1eb5a4187c3a9197973ef4da140c7704b3409c7c336e1027f89df340fcefc9e52c6ccac75b251aa79d67c98e49c4 SHA512 d2a5c02a541c0ae79cf8c8e1a38299351f9dd81d1a17724d9fe346d8eb4311e2566a319cf1b8a90d393bffdc11657f6fa2f6475441634e57701b00e74899baa0 DIST pypy3.7-v7.3.2rc2-src.tar.bz2 25066853 BLAKE2B 286ec0909d4b9ba9039cd9ca234a90832e99369f5e7e36a486d219661631efac186e02146dd5bc5a51521fcfdd0047c3fa5a6dbffd20cebe8ff7c209d02fec53 SHA512 c8e5dc5ded2989aa3a6b635e040c23bb8e2812101ce22a104f251e0abaa3320b61f2f611ece58d6b8a8ae9f1cbc8ca22c920f3491dd5653bcb0e05264fd54a4f diff --git a/dev-python/pypy3/files/7.0.0-gentoo-path.patch b/dev-python/pypy3/files/7.0.0-gentoo-path.patch deleted file mode 100644 index 135e496f2536..000000000000 --- a/dev-python/pypy3/files/7.0.0-gentoo-path.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 44c16c344f137cc91a145294c4124174fc25ad16 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Fri, 27 Nov 2015 17:02:42 +0100 -Subject: [PATCH] Gentoo: override paths for system-wide install based on - sys.prefix - -Override all default distutils install paths to ones suitable for -system-wide install when sys.prefix indicates we're running the Gentoo -system-wide install of PyPy with no prefix overrides (e.g. virtualenv). - -Fixes: https://bugs.gentoo.org/462306 -Fixes: https://bugs.gentoo.org/465546 - -[updated for 7.0.0] ---- - lib-python/3/distutils/command/install.py | 13 ++++++++++++- - 1 file changed, 12 insertions(+), 1 deletion(-) - -diff --git a/lib-python/3/distutils/command/install.py b/lib-python/3/distutils/command/install.py -index 77a1827d4b..255603967f 100644 ---- a/lib-python/3/distutils/command/install.py -+++ b/lib-python/3/distutils/command/install.py -@@ -50,6 +50,13 @@ INSTALL_SCHEMES = { - 'scripts': '$base/bin', - 'data' : '$base', - }, -+ 'gentoo': { -+ 'purelib': '$base/site-packages', -+ 'platlib': '$base/site-packages', -+ 'headers': '$base/include', -+ 'scripts': '@EPREFIX@/usr/bin', -+ 'data' : '@EPREFIX@/usr', -+ }, - } - - # user site schemes -@@ -461,7 +468,11 @@ class install(Command): - # it's the caller's problem if they supply a bad name! - if (hasattr(sys, 'pypy_version_info') and - not name.endswith(('_user', '_home'))): -- name = 'pypy' -+ if self.install_base == os.path.normpath('@EPREFIX@/usr/lib/pypy3.6'): -+ # override paths for system-wide install -+ name = 'gentoo' -+ else: -+ name = 'pypy' - scheme = INSTALL_SCHEMES[name] - for key in SCHEME_KEYS: - attrname = 'install_' + key --- -2.21.0.rc1 - diff --git a/dev-python/pypy3/pypy3-7.3.0.ebuild b/dev-python/pypy3/pypy3-7.3.0.ebuild deleted file mode 100644 index 83c31b2ebd99..000000000000 --- a/dev-python/pypy3/pypy3-7.3.0.ebuild +++ /dev/null @@ -1,219 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python2_7 ) -inherit pax-utils python-any-r1 - -MY_P=pypy3.6-v${PV/_/} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.6) language" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' -SLOT="0/pypy36-pp73" -KEYWORDS="amd64 ~ppc64 x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 gdbm +jit libressl ncurses sqlite test tk" -RESTRICT="!test? ( test )" - -RDEPEND=" - || ( - dev-python/pypy3-exe:${PV}[bzip2?,ncurses?] - dev-python/pypy3-exe-bin:${PV} - ) - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - gdbm? ( sys-libs/gdbm:0= ) - sqlite? ( dev-db/sqlite:3= ) - tk? ( - dev-lang/tk:0= - dev-tcltk/tix:0= - ) - !<dev-python/pypy3-bin-7.3.0:0" -DEPEND="${RDEPEND} - test? ( - ${PYTHON_DEPS} - !!dev-python/pytest-forked - )" - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - eapply "${FILESDIR}/7.0.0-gentoo-path.patch" - eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" - eapply "${FILESDIR}"/7.2.0-distutils-cxx.patch - - sed -e "s^@EPREFIX@^${EPREFIX}^" \ - -i lib-python/3/distutils/command/install.py || die - - # apply CPython stdlib patches - pushd lib-python/3 > /dev/null || die - eapply "${FILESDIR}"/python-3.5-distutils-OO-build.patch - popd > /dev/null || die - - # tests are copied from cpython and apparently not adjusted to pypy3 - # or marked XFAIL - sed -i -e 's:test_runeval_step:_&:' \ - lib-python/3/test/test_bdb.py || die - sed -i -e 's:test_set_nomemory:_&:' \ - -e '/class PyMemDebugTests/i@unittest.skip("Broken on pypy3")' \ - lib-python/3/test/test_capi.py || die - sed -i -e 's:test_crashing_decode_handler:_&:' \ - lib-python/3/test/test_codeccallbacks.py || die - sed -i -e 's:test_unicode:_&:' \ - lib-python/3/test/test_dbm_gnu.py || die - sed -i -e 's:test_jumpy:_&:' \ - lib-python/3/test/test_dis.py || die - sed -i -e 's:test_generator_doesnt_retain_old_exc:_&:' \ - -e 's:test_generator_finalizing_and_exc_info:_&:' \ - -e 's:test_generator_leaking:_&:' \ - lib-python/3/test/test_exceptions.py || die - sed -i -e 's:test_locale:_&:' \ - lib-python/3/test/test_format.py || die - sed -i -e 's:test_ast_line_numbers:_&:' \ - -e 's:test_backslashes_in_string_part:_&:' \ - lib-python/3/test/test_fstring.py || die - sed -i -e 's:test_decompressor_bug_28275:_&:' \ - lib-python/3/test/test_lzma.py || die - sed -i -e 's:test_listdir_bytes_like:_&:' \ - -e 's:test_putenv:_&:' \ - lib-python/3/test/test_posix.py || die - sed -i -e 's:test_auto_history:_&:' \ - -e 's:test_history_size:_&:' \ - lib-python/3/test/test_readline.py || die - sed -i -e 's:CheckDMLDoesNotAutoCommitBefore:_&:' \ - -e 's:CheckImmediateTransactionalDDL:_&:' \ - -e 's:CheckTransactionalDDL:_&:' \ - lib-python/3/sqlite3/test/transactions.py || die - sed -i -e 's:test_pha_optional:_&:' \ - -e 's:test_pha_required:_&:' \ - lib-python/3/test/test_ssl.py || die - sed -i -e 's:test_eval_bytes_invalid_escape:_&:' \ - -e 's:test_eval_str_invalid_escape:_&:' \ - lib-python/3/test/test_string_literals.py || die - # the first one's broken by sandbox, the second by our env - sed -i -e 's:test_empty_env:_&:' \ - -e 's:test_executable:_&:' \ - lib-python/3/test/test_subprocess.py || die - sed -i -e 's:test_jump_out_of_async_for_block:_&:' \ - -e 's:test_jump_over_async_for_block_before_else:_&:' \ - -e 's:test_no_jump_.*wards_into_async_for_block:_&:' \ - -e 's:test_no_jump_into_async_for_block_before_else:_&:' \ - -e 's:test_no_jump_from_yield:_&:' \ - lib-python/3/test/test_sys_settrace.py || die - sed -i -e 's:test_circular_imports:_&:' \ - lib-python/3/test/test_threaded_import.py || die - - eapply_user -} - -src_compile() { - # copy over to make sys.prefix happy - cp -p "${BROOT}"/usr/lib/pypy3.6/pypy3-c-${PV} pypy3-c || die - cp -p "${BROOT}"/usr/lib/pypy3.6/include/${PV}/* include/ || die - # (not installed by pypy) - rm pypy/module/cpyext/include/_numpypy/numpy/README || die - mv pypy/module/cpyext/include/* include/ || die - mv pypy/module/cpyext/parse/*.h include/ || die - pax-mark m pypy3-c - - einfo "Generating caches and CFFI modules ..." - - # Generate Grammar and PatternGrammar pickles. - ./pypy3-c -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 = { -# "_blake2": "_blake2/_blake2_build.py", -# "_ssl": "_ssl_build.py", -# "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, -# "resource": "_resource_build.py" if sys.platform != "win32" else None, -# "lzma": "_lzma_build.py", -# "_decimal": "_decimal_build.py", -# "_sha3": "_sha3/_sha3_build.py", - cffi_targets=( blake2/_blake2 sha3/_sha3 ssl - audioop syslog pwdgrp resource lzma decimal ) - use gdbm && cffi_targets+=( gdbm ) - use ncurses && cffi_targets+=( curses ) - 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 lib_pypy || die - for t in "${cffi_targets[@]}"; do - # tkinter doesn't work via -m - ../pypy3-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" - done - - # Cleanup temporary objects - find -name "_cffi_*.[co]" -delete || die - find -type d -empty -delete || die -} - -src_test() { - # (unset) - local -x PYTHONDONTWRITEBYTECODE= - local -x COLUMNS=80 - - # Test runner requires Python 2 too. However, it spawns PyPy3 - # internally so that we end up testing the correct interpreter. - "${EPYTHON}" ./pypy/test_all.py --pypy=./pypy3-c -vv lib-python || die -} - -src_install() { - local dest=/usr/lib/pypy3.6 - einfo "Installing PyPy ..." - dosym pypy3-c-${PV} "${dest}/pypy3-c" - insinto "${dest}" - # preserve mtimes to avoid obsoleting caches - insopts -p - doins -r include lib_pypy lib-python - - # replace copied headers with symlinks - for x in "${BROOT}"/usr/lib/pypy3.6/include/${PV}/*; do - dosym "${PV}/${x##*/}" "${dest}/include/${x##*/}" - done - - dosym ../lib/pypy3.6/pypy3-c /usr/bin/pypy3 - dodoc README.rst - - if ! use gdbm; then - rm -r "${ED}${dest}"/lib_pypy/_gdbm* || die - fi - if ! use sqlite; then - rm -r "${ED}${dest}"/lib-python/*3/sqlite3 \ - "${ED}${dest}"/lib_pypy/_sqlite3* \ - "${ED}${dest}"/lib-python/*3/test/test_sqlite.py || die - fi - if ! use tk; then - rm -r "${ED}${dest}"/lib-python/*3/{idlelib,tkinter} \ - "${ED}${dest}"/lib_pypy/_tkinter \ - "${ED}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die - fi - - local -x EPYTHON=pypy3 - local -x PYTHON=${ED}${dest}/pypy3-c - - echo "EPYTHON='${EPYTHON}'" > epython.py || die - python_moduleinto /usr/lib/pypy3.6/site-packages - python_domodule epython.py - - einfo "Byte-compiling Python standard library..." - python_optimize "${ED}${dest}" -} diff --git a/dev-python/pypy3/pypy3-7.3.1-r2.ebuild b/dev-python/pypy3/pypy3-7.3.1-r3.ebuild index 3388f868455f..4f4f4bded682 100644 --- a/dev-python/pypy3/pypy3-7.3.1-r2.ebuild +++ b/dev-python/pypy3/pypy3-7.3.1-r3.ebuild @@ -204,7 +204,9 @@ src_install() { fi local -x EPYTHON=pypy3 - local -x PYTHON=${ED}${dest}/pypy3-c + local -x PYTHON=${ED}${dest}/pypy3-c-${PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}${dest}/pypy3-c-${PV}" "${PYTHON}" || die echo "EPYTHON='${EPYTHON}'" > epython.py || die python_moduleinto /usr/lib/pypy3.6/site-packages @@ -212,4 +214,7 @@ src_install() { einfo "Byte-compiling Python standard library..." python_optimize "${ED}${dest}" + + # remove to avoid collisions + rm "${PYTHON}" || die } diff --git a/dev-python/pypy3/pypy3-7.3.2_rc1-r100.ebuild b/dev-python/pypy3/pypy3-7.3.2_rc1-r100.ebuild deleted file mode 100644 index 2ba33e2c40c3..000000000000 --- a/dev-python/pypy3/pypy3-7.3.2_rc1-r100.ebuild +++ /dev/null @@ -1,352 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python2_7 ) -inherit pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy3.7-v${PV/_/} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.7) language" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' -SLOT="0/pypy37-pp73" -KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 gdbm +jit libressl ncurses sqlite test tk" -RESTRICT="!test? ( test )" - -RDEPEND=" - || ( - dev-python/pypy3-exe:${PV}-py37[bzip2?,ncurses?] - dev-python/pypy3-exe-bin:${PV}-py37 - ) - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - gdbm? ( sys-libs/gdbm:0= ) - sqlite? ( dev-db/sqlite:3= ) - tk? ( - dev-lang/tk:0= - dev-tcltk/tix:0= - ) - !<dev-python/pypy3-bin-7.3.0:0" -DEPEND="${RDEPEND} - test? ( - ${PYTHON_DEPS} - !!dev-python/pytest-forked - )" - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - eapply "${FILESDIR}/7.3.1-gentoo-path.patch" - eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" - eapply "${FILESDIR}/7.3.2-py37-distutils-cxx.patch" - - sed -e "s^@EPREFIX@^${EPREFIX}^" \ - -i lib-python/3/distutils/command/install.py || die - - # apply CPython stdlib patches - pushd lib-python/3 > /dev/null || die - eapply "${FILESDIR}"/python-3.5-distutils-OO-build.patch - popd > /dev/null || die - - # see http://buildbot.pypy.org/summary?branch=py3.7&builder=pypy-c-jit-linux-x86-64 - sed -i -e 's:test_snippets(:_&:' \ - lib-python/3/test/test_ast.py || die - sed -i -e 's:testConstructorErrorMessages(:_&:' \ - lib-python/3/test/test_class.py || die - sed -i -e 's:test_pythonmalloc(:_&:' \ - -e 's:test_sys_flags_set(:_&:' \ - -e 's:test_unbuffered_output(:_&:' \ - -e 's:test_xdev(:_&:' \ - -e 's:test_ignore_PYTHONHASHSEED(:_&:' \ - lib-python/3/test/test_cmd_line.py || die - sed -i -e 's:test_consistent_sys_path_for_module_execution(:_&:' \ - -e 's:test_issue8202(:_&:' \ - -e 's:test_issue8202_dash_m_file_ignored(:_&:' \ - -e 's:test_module_in_package(:_&:' \ - -e 's:test_module_in_package_in_zipfile(:_&:' \ - -e 's:test_module_in_subpackage_in_zipfile(:_&:' \ - -e 's:test_nonexisting_script(:_&:' \ - -e 's:test_package(:_&:' \ - -e 's:test_package_compiled(:_&:' \ - -e 's:test_script_compiled(:_&:' \ - lib-python/3/test/test_cmd_line_script.py || die - sed -i -e 's:test_incremental_errors(:_&:' \ - lib-python/3/test/test_codecs.py || die - sed -i -e 's:test_ressources_gced_in_workers(:_&:' \ - -e 's:test_submit_after_interpreter_shutdown(:_&:' \ - lib-python/3/test/test_concurrent_futures.py || die - sed -i -e 's:test_for_3(:_&:' \ - -e 's:test_func_4(:_&:' \ - lib-python/3/test/test_coroutines.py || die - sed -i -e 's:test_strftime(:_&:' \ - -e 's:test_more_strftime(:_&:' \ - lib-python/3/test/datetimetester.py || die - sed -i -e 's:test_info(:_&:' \ - -e 's:test_code_info(:_&:' \ - -e 's:test_show_code(:_&:' \ - -e 's:test_disassemble_recursive(:_&:' \ - -e 's:test_disassemble_str(:_&:' \ - -e 's:test_jumpy(:_&:' \ - lib-python/3/test/test_dis.py || die - sed -i -e 's:test_generator_doesnt_retain_old_exc2(:_&:' \ - -e 's:test_attributes(:_&:' \ - lib-python/3/test/test_exceptions.py || die - sed -i -e 's:test_frozen(:_&:' \ - lib-python/3/test/test_frozen.py || die - sed -i -e 's:test_ssl_raises(:_&:' \ - -e 's:test_ssl_verified(:_&:' \ - lib-python/3/test/test_imaplib.py || die - sed -i -e 's:test_script_compiled(:_&:' \ - lib-python/3/test/test_multiprocessing_main_handling.py || die - sed -i -e 's:test_execve_invalid_env(:_&:' \ - lib-python/3/test/test_os.py || die - sed -i -e 's:test_get_and_set_scheduler_and_param(:_&:' \ - lib-python/3/test/test_posix.py || die - sed -i -e 's:test_copying(:_&:' \ - -e 's:test_re_split(:_&:' \ - -e 's:test_zerowidth(:_&:' \ - -e 's:test_locale_caching(:_&:' \ - -e 's:test_locale_compiled(:_&:' \ - -e 's:test_match_repr(:_&:' \ - -e 's:test_qualified_re_split(:_&:' \ - -e 's:test_scoped_flags(:_&:' \ - lib-python/3/test/test_re.py || die - sed -i -e 's:test_auto_history_disabled(:_&:' \ - -e 's:test_auto_history_enabled(:_&:' \ - -e 's:test_history_size(:_&:' \ - lib-python/3/test/test_readline.py || die - sed -i -e 's:test_multiprocess(:_&:' \ - lib-python/3/test/test_regrtest.py || die - sed -i -e 's:test_warn_on_full_buffer(:_&:' \ - lib-python/3/test/test_signal.py || die - sed -i -e 's:test_get_path(:_&:' \ - lib-python/3/test/test_site.py || die - sed -i -e 's:test_check_hostname(:_&:' \ - -e 's:test_npn_protocols(:_&:' \ - -e 's:test_sni_callback(:_&:' \ - -e 's:test_sni_callback_raising(:_&:' \ - lib-python/3/test/test_ssl.py || die - sed -i -e 's:test_invalid_placeholders(:_&:' \ - lib-python/3/test/test_string.py || die - sed -i -e 's:test_eval_bytes_invalid_escape(:_&:' \ - -e 's:test_eval_str_invalid_escape(:_&:' \ - lib-python/3/test/test_string_literals.py || die - sed -i -e 's:test_boundary_error_message_with_large_offset(:_&:' \ - lib-python/3/test/test_struct.py || die - sed -i -e 's:test_restore_signals(:_&:' \ - lib-python/3/test/test_subprocess.py || die - sed -i -e 's:test_jump_out_of_async_for_block_backwards(:_&:' \ - -e 's:test_jump_out_of_async_for_block_forwards(:_&:' \ - -e 's:test_jump_over_async_for_block_before_else(:_&:' \ - -e 's:test_no_jump_backwards_into_async_for_block(:_&:' \ - -e 's:test_no_jump_forwards_into_async_for_block(:_&:' \ - -e 's:test_no_jump_into_async_for_block_before_else(:_&:' \ - -e 's:test_no_jump_from_yield(:_&:' \ - lib-python/3/test/test_sys_settrace.py || die - sed -i -e 's:test_install_schemes(:_&:' \ - lib-python/3/test/test_sysconfig_pypy.py || die - sed -i -e 's:test_circular_imports(:_&:' \ - lib-python/3/test/test_threaded_import.py || die - sed -i -e 's:test_main_milliseconds(:_&:' \ - -e 's:test_main_verbose(:_&:' \ - -e 's:test_main_very_verbose(:_&:' \ - -e 's:test_main_with_time_unit(:_&:' \ - lib-python/3/test/test_timeit.py || die - sed -i -e 's:test_cannot_subclass(:_&:' \ - lib-python/3/test/test_typing.py || die - sed -i -e 's:test_warnings(:_&:' \ - lib-python/3/unittest/test/test_runner.py || die - sed -i -e 's:test_cmd_line(:_&:' \ - -e 's:test_env_var(:_&:' \ - -e 's:test_locale_getpreferredencoding(:_&:' \ - -e 's:test_posix_locale(:_&:' \ - -e 's:test_stdio(:_&:' \ - -e 's:test_xoption(:_&:' \ - lib-python/3/test/test_utf8_mode.py || die - sed -i -e 's:test_asyncgen_finalization_by_gc(:_&:' \ - -e 's:test_asyncgen_finalization_by_gc_in_other_thread(:_&:' \ - -e 's:test_create_connection_ipv6_scope(:_&:' \ - lib-python/3/test/test_asyncio/test_base_events.py || die - sed -i -e 's:test_buffered_proto_create_connection(:_&:' \ - lib-python/3/test/test_asyncio/test_buffered_proto.py || die - sed -i -e 's:test_create_connection_memory_leak(:_&:' \ - -e 's:test_handshake_timeout(:_&:' \ - -e 's:test_start_tls_client_reg_proto_1(:_&:' \ - lib-python/3/test/test_asyncio/test_sslproto.py || die - sed -i -e 's:test_bare_create_task(:_&:' \ - -e 's:test_current_task(:_&:' \ - lib-python/3/test/test_asyncio/test_tasks.py || die - sed -i -e 's:test_asyncio_task_decimal_context(:_&:' \ - lib-python/3/test/test_asyncio/test_context.py || die - sed -i -e 's:test_create_server_ssl_match_failed(:_&:' \ - lib-python/3/test/test_asyncio/test_events.py || die - sed -i -e 's:test_binding(:_&:' \ - -e 's:test_from_import_AttributeError(:_&:' \ - -e 's:test_from_import_missing_attr_has_name_and_path(:_&:' \ - -e 's:test_from_import_missing_attr_path_is_canonical(:_&:' \ - lib-python/3/test/test_import/__init__.py || die - sed -i -e 's:test_unrelated_contents(:_&:' \ - -e 's:test_contents(:_&:' \ - -e 's:test_submodule_contents(:_&:' \ - -e 's:test_submodule_contents_by_name(:_&:' \ - -e 's:test_is_resource_good_path(:_&:' \ - -e 's:test_is_submodule_resource(:_&:' \ - -e 's:test_read_submodule_resource_by_name(:_&:' \ - lib-python/3/test/test_importlib/test_resource.py || die - sed -i -e 's:test_non_string_keys_dict(:_&:' \ - lib-python/3/test/test_json/test_fail.py || die - sed -i -e 's:test_module(:_&:' \ - lib-python/3/test/test_warnings/__init__.py || die - - # flaky - sed -i -e 's:test_2_join_in_forked_process(:_&:' \ - lib-python/3/test/test_threading.py || die - - # TODO - sed -i -e 's:test_external_target_locale_configuration(:_&:' \ - lib-python/3/test/test_c_locale_coercion.py || die - sed -i -e 's:test_locale(:_&:' \ - lib-python/3/test/test_format.py || die - sed -i -e 's:test_decompressor_bug_28275(:_&:' \ - lib-python/3/test/test_lzma.py || die - sed -i -e 's:test_wrapped_exception:_&:' \ - lib-python/3/test/_test_multiprocessing.py || die - sed -i -e 's:test_https_sni(:_&:' \ - lib-python/3/test/test_urllib2_localnet.py || die - - # the first one's broken by sandbox, the second by our env - sed -i -e 's:test_executable(:_&:' \ - -e 's:test_executable_without_cwd(:_&:' \ - lib-python/3/test/test_subprocess.py || die - - eapply_user -} - -src_configure() { - tc-export CC -} - -src_compile() { - # copy over to make sys.prefix happy - cp -p "${BROOT}"/usr/lib/pypy3.7/pypy3-c-${PV} pypy3-c || die - cp -p "${BROOT}"/usr/lib/pypy3.7/include/${PV}/* include/ || die - # (not installed by pypy) - rm pypy/module/cpyext/include/_numpypy/numpy/README || die - mv pypy/module/cpyext/include/* include/ || die - mv pypy/module/cpyext/parse/*.h include/ || die - pax-mark m pypy3-c - - einfo "Generating caches and CFFI modules ..." - - # Generate Grammar and PatternGrammar pickles. - ./pypy3-c -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 = { -# "_blake2": "_blake2/_blake2_build.py", -# "_ssl": "_ssl_build.py", -# "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, -# "resource": "_resource_build.py" if sys.platform != "win32" else None, -# "lzma": "_lzma_build.py", -# "_decimal": "_decimal_build.py", -# "_sha3": "_sha3/_sha3_build.py", - cffi_targets=( blake2/_blake2 sha3/_sha3 ssl - audioop syslog pwdgrp resource lzma decimal ) - use gdbm && cffi_targets+=( gdbm ) - use ncurses && cffi_targets+=( curses ) - 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 lib_pypy || die - for t in "${cffi_targets[@]}"; do - # tkinter doesn't work via -m - ../pypy3-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" - done - - # Cleanup temporary objects - find -name "_cffi_*.[co]" -delete || die - find -type d -empty -delete || die -} - -src_test() { - # (unset) - local -x PYTHONDONTWRITEBYTECODE= - local -x COLUMNS=80 - - local ignore=( - # failing doctests - lib-python/3/test/test_extcall.py - lib-python/3/test/test_unpack_ex.py - - # segfault - lib-python/3/test/test_capi.py - ) - - # Test runner requires Python 2 too. However, it spawns PyPy3 - # internally so that we end up testing the correct interpreter. - # (--deselect for failing doctests) - "${EPYTHON}" ./pypy/test_all.py --pypy=./pypy3-c -vv lib-python \ - ${ignore[@]/#/--ignore } || die -} - -src_install() { - local dest=/usr/lib/pypy3.7 - einfo "Installing PyPy ..." - dosym pypy3-c-${PV} "${dest}/pypy3-c" - insinto "${dest}" - # preserve mtimes to avoid obsoleting caches - insopts -p - doins -r include lib_pypy lib-python - - # replace copied headers with symlinks - for x in "${BROOT}"/usr/lib/pypy3.7/include/${PV}/*; do - dosym "${PV}/${x##*/}" "${dest}/include/${x##*/}" - done - - dosym ../lib/pypy3.7/pypy3-c /usr/bin/pypy3 - dodoc README.rst - - if ! use gdbm; then - rm -r "${ED}${dest}"/lib_pypy/_gdbm* || die - fi - if ! use sqlite; then - rm -r "${ED}${dest}"/lib-python/*3/sqlite3 \ - "${ED}${dest}"/lib_pypy/_sqlite3* \ - "${ED}${dest}"/lib-python/*3/test/test_sqlite.py || die - fi - if ! use tk; then - rm -r "${ED}${dest}"/lib-python/*3/{idlelib,tkinter} \ - "${ED}${dest}"/lib_pypy/_tkinter \ - "${ED}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die - fi - - local -x EPYTHON=pypy3 - local -x PYTHON=${ED}${dest}/pypy3-c - - echo "EPYTHON='${EPYTHON}'" > epython.py || die - python_moduleinto /usr/lib/pypy3.7/site-packages - python_domodule epython.py - - einfo "Byte-compiling Python standard library..." - python_optimize "${ED}${dest}" -} diff --git a/dev-python/pypy3/pypy3-7.3.2_rc1.ebuild b/dev-python/pypy3/pypy3-7.3.2_rc2-r1.ebuild index 45d2ebfd2176..acb328c4e725 100644 --- a/dev-python/pypy3/pypy3-7.3.2_rc1.ebuild +++ b/dev-python/pypy3/pypy3-7.3.2_rc2-r1.ebuild @@ -191,7 +191,9 @@ src_install() { fi local -x EPYTHON=pypy3 - local -x PYTHON=${ED}${dest}/pypy3-c + local -x PYTHON=${ED}${dest}/pypy3-c-${PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}${dest}/pypy3-c-${PV}" "${PYTHON}" || die echo "EPYTHON='${EPYTHON}'" > epython.py || die python_moduleinto /usr/lib/pypy3.6/site-packages @@ -199,4 +201,7 @@ src_install() { einfo "Byte-compiling Python standard library..." python_optimize "${ED}${dest}" + + # remove to avoid collisions + rm "${PYTHON}" || die } diff --git a/dev-python/pypy3/pypy3-7.3.2_rc2.ebuild b/dev-python/pypy3/pypy3-7.3.2_rc2.ebuild deleted file mode 100644 index 45d2ebfd2176..000000000000 --- a/dev-python/pypy3/pypy3-7.3.2_rc2.ebuild +++ /dev/null @@ -1,202 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python2_7 ) -inherit pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy3.6-v${PV/_/} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.6) language" -HOMEPAGE="https://pypy.org/" -SRC_URI="https://downloads.python.org/pypy/${MY_P}-src.tar.bz2" -S="${WORKDIR}/${MY_P}-src" - -LICENSE="MIT" -# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' -SLOT="0/pypy36-pp73" -KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 gdbm +jit libressl ncurses sqlite test tk" -RESTRICT="!test? ( test )" - -RDEPEND=" - || ( - dev-python/pypy3-exe:${PV}[bzip2?,ncurses?] - dev-python/pypy3-exe-bin:${PV} - ) - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - gdbm? ( sys-libs/gdbm:0= ) - sqlite? ( dev-db/sqlite:3= ) - tk? ( - dev-lang/tk:0= - dev-tcltk/tix:0= - ) - !<dev-python/pypy3-bin-7.3.0:0" -DEPEND="${RDEPEND} - test? ( - ${PYTHON_DEPS} - !!dev-python/pytest-forked - )" - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - eapply "${FILESDIR}/7.3.1-gentoo-path.patch" - eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" - eapply "${FILESDIR}"/7.2.0-distutils-cxx.patch - - sed -e "s^@EPREFIX@^${EPREFIX}^" \ - -i lib-python/3/distutils/command/install.py || die - - # apply CPython stdlib patches - pushd lib-python/3 > /dev/null || die - eapply "${FILESDIR}"/python-3.5-distutils-OO-build.patch - popd > /dev/null || die - - # see http://buildbot.pypy.org/summary?branch=py3.6&builder=pypy-c-jit-linux-x86-64 - sed -i -e 's:test_jumpy:_&:' \ - lib-python/3/test/test_dis.py || die - sed -i -e 's:test_get_and_set_scheduler_and_param:_&:' \ - lib-python/3/test/test_posix.py || die - sed -i -e 's:test_auto_history:_&:' \ - -e 's:test_history_size:_&:' \ - lib-python/3/test/test_readline.py || die - sed -i -e 's:test_eval_bytes_invalid_escape:_&:' \ - -e 's:test_eval_str_invalid_escape:_&:' \ - lib-python/3/test/test_string_literals.py || die - sed -i -e 's:test_jump_out_of_async_for_block:_&:' \ - -e 's:test_jump_over_async_for_block_before_else:_&:' \ - -e 's:test_no_jump_.*wards_into_async_for_block:_&:' \ - -e 's:test_no_jump_into_async_for_block_before_else:_&:' \ - -e 's:test_no_jump_from_yield:_&:' \ - lib-python/3/test/test_sys_settrace.py || die - sed -i -e 's:test_circular_imports:_&:' \ - lib-python/3/test/test_threaded_import.py || die - - # the first one's broken by sandbox, the second by our env - sed -i -e 's:test_empty_env:_&:' \ - -e 's:test_executable(:_&:' \ - -e 's:test_executable_without_cwd:_&:' \ - lib-python/3/test/test_subprocess.py || die - - # XXX - sed -i -e 's:test_locale:_&:' \ - lib-python/3/test/test_format.py || die - sed -i -e 's:test_decompressor_bug_28275:_&:' \ - lib-python/3/test/test_lzma.py || die - - eapply_user -} - -src_configure() { - tc-export CC -} - -src_compile() { - # copy over to make sys.prefix happy - cp -p "${BROOT}"/usr/lib/pypy3.6/pypy3-c-${PV} pypy3-c || die - cp -p "${BROOT}"/usr/lib/pypy3.6/include/${PV}/* include/ || die - # (not installed by pypy) - rm pypy/module/cpyext/include/_numpypy/numpy/README || die - mv pypy/module/cpyext/include/* include/ || die - mv pypy/module/cpyext/parse/*.h include/ || die - pax-mark m pypy3-c - - einfo "Generating caches and CFFI modules ..." - - # Generate Grammar and PatternGrammar pickles. - ./pypy3-c -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 = { -# "_blake2": "_blake2/_blake2_build.py", -# "_ssl": "_ssl_build.py", -# "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, -# "resource": "_resource_build.py" if sys.platform != "win32" else None, -# "lzma": "_lzma_build.py", -# "_decimal": "_decimal_build.py", -# "_sha3": "_sha3/_sha3_build.py", - cffi_targets=( blake2/_blake2 sha3/_sha3 ssl - audioop syslog pwdgrp resource lzma decimal ) - use gdbm && cffi_targets+=( gdbm ) - use ncurses && cffi_targets+=( curses ) - 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 lib_pypy || die - for t in "${cffi_targets[@]}"; do - # tkinter doesn't work via -m - ../pypy3-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" - done - - # Cleanup temporary objects - find -name "_cffi_*.[co]" -delete || die - find -type d -empty -delete || die -} - -src_test() { - # (unset) - local -x PYTHONDONTWRITEBYTECODE= - local -x COLUMNS=80 - - # Test runner requires Python 2 too. However, it spawns PyPy3 - # internally so that we end up testing the correct interpreter. - "${EPYTHON}" ./pypy/test_all.py --pypy=./pypy3-c -vv lib-python || die -} - -src_install() { - local dest=/usr/lib/pypy3.6 - einfo "Installing PyPy ..." - dosym pypy3-c-${PV} "${dest}/pypy3-c" - insinto "${dest}" - # preserve mtimes to avoid obsoleting caches - insopts -p - doins -r include lib_pypy lib-python - - # replace copied headers with symlinks - for x in "${BROOT}"/usr/lib/pypy3.6/include/${PV}/*; do - dosym "${PV}/${x##*/}" "${dest}/include/${x##*/}" - done - - dosym ../lib/pypy3.6/pypy3-c /usr/bin/pypy3 - dodoc README.rst - - if ! use gdbm; then - rm -r "${ED}${dest}"/lib_pypy/_gdbm* || die - fi - if ! use sqlite; then - rm -r "${ED}${dest}"/lib-python/*3/sqlite3 \ - "${ED}${dest}"/lib_pypy/_sqlite3* \ - "${ED}${dest}"/lib-python/*3/test/test_sqlite.py || die - fi - if ! use tk; then - rm -r "${ED}${dest}"/lib-python/*3/{idlelib,tkinter} \ - "${ED}${dest}"/lib_pypy/_tkinter \ - "${ED}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die - fi - - local -x EPYTHON=pypy3 - local -x PYTHON=${ED}${dest}/pypy3-c - - echo "EPYTHON='${EPYTHON}'" > epython.py || die - python_moduleinto /usr/lib/pypy3.6/site-packages - python_domodule epython.py - - einfo "Byte-compiling Python standard library..." - python_optimize "${ED}${dest}" -} diff --git a/dev-python/pypy3/pypy3-7.3.2_rc2_p37.ebuild b/dev-python/pypy3/pypy3-7.3.2_rc2_p37-r1.ebuild index 530c3ef5cebc..d750cf9c4b2b 100644 --- a/dev-python/pypy3/pypy3-7.3.2_rc2_p37.ebuild +++ b/dev-python/pypy3/pypy3-7.3.2_rc2_p37-r1.ebuild @@ -162,7 +162,9 @@ src_install() { fi local -x EPYTHON=pypy3 - local -x PYTHON=${ED}${dest}/pypy3-c + local -x PYTHON=${ED}${dest}/pypy3-c-${PYPY_PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}${dest}/pypy3-c-${PYPY_PV}" "${PYTHON}" || die echo "EPYTHON='${EPYTHON}'" > epython.py || die python_moduleinto /usr/lib/pypy3.7/site-packages @@ -170,4 +172,7 @@ src_install() { einfo "Byte-compiling Python standard library..." python_optimize "${ED}${dest}" + + # remove to avoid collisions + rm "${PYTHON}" || die } diff --git a/dev-python/sphinxcontrib-websupport/sphinxcontrib-websupport-1.2.4.ebuild b/dev-python/sphinxcontrib-websupport/sphinxcontrib-websupport-1.2.4.ebuild index 97327d914823..722a5975a568 100644 --- a/dev-python/sphinxcontrib-websupport/sphinxcontrib-websupport-1.2.4.ebuild +++ b/dev-python/sphinxcontrib-websupport/sphinxcontrib-websupport-1.2.4.ebuild @@ -16,7 +16,7 @@ SRC_URI="https://github.com/sphinx-doc/sphinxcontrib-websupport/archive/${PV}.ta LICENSE="BSD-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris" RDEPEND=" >=dev-python/six-1.5[${PYTHON_USEDEP}] diff --git a/dev-python/wheel/wheel-0.35.1.ebuild b/dev-python/wheel/wheel-0.35.1.ebuild index 60aa1d55e832..587684eb4130 100644 --- a/dev-python/wheel/wheel-0.35.1.ebuild +++ b/dev-python/wheel/wheel-0.35.1.ebuild @@ -15,7 +15,7 @@ SRC_URI="https://github.com/pypa/wheel/archive/${PV}.tar.gz -> ${P}.gh.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" distutils_enable_tests pytest |
