From 8b4ace9c50842c5b83401ea7b179dcab940387e1 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 23 Sep 2020 10:22:15 +0100 Subject: gentoo resync : 23.09.2020 --- dev-python/pypy/Manifest | 11 +- dev-python/pypy/files/7.0.0-gentoo-path.patch | 52 -------- dev-python/pypy/metadata.xml | 3 - dev-python/pypy/pypy-7.3.0.ebuild | 182 -------------------------- dev-python/pypy/pypy-7.3.1-r2.ebuild | 177 ------------------------- dev-python/pypy/pypy-7.3.1-r3.ebuild | 182 ++++++++++++++++++++++++++ dev-python/pypy/pypy-7.3.2_rc1.ebuild | 173 ------------------------ dev-python/pypy/pypy-7.3.2_rc2-r1.ebuild | 175 +++++++++++++++++++++++++ 8 files changed, 361 insertions(+), 594 deletions(-) delete mode 100644 dev-python/pypy/files/7.0.0-gentoo-path.patch delete mode 100644 dev-python/pypy/pypy-7.3.0.ebuild delete mode 100644 dev-python/pypy/pypy-7.3.1-r2.ebuild create mode 100644 dev-python/pypy/pypy-7.3.1-r3.ebuild delete mode 100644 dev-python/pypy/pypy-7.3.2_rc1.ebuild create mode 100644 dev-python/pypy/pypy-7.3.2_rc2-r1.ebuild (limited to 'dev-python/pypy') diff --git a/dev-python/pypy/Manifest b/dev-python/pypy/Manifest index 290c8b0bbe2e..261d6ba92381 100644 --- a/dev-python/pypy/Manifest +++ b/dev-python/pypy/Manifest @@ -1,13 +1,10 @@ AUX 1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch 555 BLAKE2B 4976bf66e4e96f89e64ad79910bb7b6fc7c3929cf7b7f1a0a59e66b5bb87e600864df2556f1dccf7695223121c7271382227e16cfb8fb7851cf56be25542b7ab SHA512 f2df0a67480bbe46fbb25dd06abcbc226a7034410855105012045287e662a598fae467f5bc81b3d4adb738f812bf41819aaa5827151db0d6bba573305ee88474 AUX 5.8.0_all_distutils_cxx.patch 18248 BLAKE2B c48346df7bab8a38552eb7439e37f2c57c00ec534cb5e20a54d0c2a7d5f975b65746e556dc0a5876665498f165945adf9e8af5a053980b317dfe4c75c2338f62 SHA512 a1bfe2ac4380c87094d4b934603956260eafa5ad6059160603e636690d99ae65181e5752fba38f145ccfb263340a1aa03a46e31f7ceccb5643df14b0190e1d8a -AUX 7.0.0-gentoo-path.patch 1945 BLAKE2B 15cf6008d0032fd839e91e968eeadce5b0ab633f97cc0ce17c8c838746a83bab0255d3f009dfe42f322f512b2996608963db70e936a7c4535c8533e3f80d15f3 SHA512 8d946c79b116d8912f0b68146579b7cce70adf439023678d803c0b8085d53c8409d1fe0a66e53ecde2cd1bf22154e456b62f09561f62dab13f01c3fbdd9bb901 AUX 7.3.1-gentoo-path.patch 1575 BLAKE2B e374b879aabdb1a9b4d3bb07ba03510e9df7c00e6fba13e117dd718268118ade06fa76f7468855463fa50112fb780fddb9687198f4a24bb0a6cc69b5b79e70d4 SHA512 14e14e4c000166bfe3f1cd10377baecc721b43c2df43c0d5d85e8dc6f220e1a453d7fe30cfbaab547e5483f8f493ddd840620b8de4de6d55abe8f9cddcca2464 -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 -EBUILD pypy-7.3.0.ebuild 5886 BLAKE2B 8ca542188afd20cdf3b44f3c4d2d12f62e4c9f936fd4c0b14fcc2afeb3bcff762da32ff9241593fb4de2a96173c9e39ae89e3f17aff78561eaa72191b62d221d SHA512 5d55ac2ef028570981dc3979bdf86950a939472e469f53f67ce8803f5cd07480ddff0f282686c18f16580087537db05659e26ce866707d5dfd2efe71b6c09e48 -EBUILD pypy-7.3.1-r2.ebuild 5672 BLAKE2B 4660915fbb37951e58b4dfc05b8c3f907a63fd5def51c0eb33508abbd168288b45b69f60b75ff39ba6a176a55aef4e7f5addca5e84b3a427b7877543e321c653 SHA512 7705c0690eed05a795e6d69d1ff0922eb800880705273a0976ed88bcddce30309614000fad4caee3fb39d54c107fe00f07caa411e2c73d2544e133d68f6974e4 -EBUILD pypy-7.3.2_rc1.ebuild 5576 BLAKE2B 64f73bf88ff816282ec55c0273848623bf240a2ab253a29b2aceffb2113fdcb150d4cf36c81c5249cc0dbaed7581fbd2c8822e735cd70cf79c12abc5df5e7aa9 SHA512 14dbcfabb599ac94e723e181a8dd3254f94dd3882c740735a41496525351c667b1955d7b85e35de60321a9bcd60bd691a037d4c47a786e313e0e3f6391ee3400 -MISC metadata.xml 317 BLAKE2B d7be288f31d09754073e991e0f753e673e47fe1698408d13ce01dd58aa458e9ff9894973b27a293e426c074fbafaf5ca784fdbae0c784c1a5bf5d51bad1abd21 SHA512 65d1795605d0120c94911b2c295d8da13e01f9ac6b0750a7d536be64bf5244e20e2bb7286b33e75346e0dea333dc8970c4dcf0e98842e28f5a202ee2ddbba294 +EBUILD pypy-7.3.1-r3.ebuild 5851 BLAKE2B ebc9ea70cced86be882e8b58bf810b417b36463c9559b7a7816b4560fa0a03ca79489c9c9ddc0f5b7b9d3d5bddf36f7afeded2f8bfa2eb71e52738a2e03a8948 SHA512 71a7a5cf51767c1913a96af6afb03a91f7002c5d0c98aef66445e27d1e9cc6eda6af9c9c3267db2702f6b288ecb65906fa60df69b5d2f2287a838d4ff7c91576 +EBUILD pypy-7.3.2_rc2-r1.ebuild 5569 BLAKE2B d58e4e0bd77af60e7346702cd917fc303a3f112679e2f7836a42319a48166779553b8d9d3226d12fbca9ce78dacf71851bfde8bb53392ff55263359fa74175c7 SHA512 c51b11d163a0261e670455f7c93306d8eab658dcfa9020ed367891b5470cb528aac5c8165c68cd0f917f2ba2c333c3fde04c94c9f3a76fa3820bf993200fd128 +MISC metadata.xml 240 BLAKE2B 41e6a4d9da33dab2decc5ff419924f382a8f64d27a81fdb97576db8c6cf125be95911747946ec8be1b453f56617fef1084f5947f84b50a8db419d46df2ae8a0f SHA512 9c23321eaa853f851bf00195ea64ac2ba093e516f9b57855ee5aa58fbb1988130c9f0c17c2a9ce9fae4ee033e0a28a70c868e0f5acdfa1dd316ab533c5279d59 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?= -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/metadata.xml b/dev-python/pypy/metadata.xml index ff5bc95069a0..7f4f33c6dbc9 100644 --- a/dev-python/pypy/metadata.xml +++ b/dev-python/pypy/metadata.xml @@ -5,7 +5,4 @@ python@gentoo.org Python - - pypy/pypy - 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/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-r2.ebuild deleted file mode 100644 index 59902f3b0a51..000000000000 --- a/dev-python/pypy/pypy-7.3.1-r2.ebuild +++ /dev/null @@ -1,177 +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/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 - # broken upstream - # see http://buildbot.pypy.org/summary?branch=%3Ctrunk%3E - 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 - - 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-r3.ebuild b/dev-python/pypy/pypy-7.3.1-r3.ebuild new file mode 100644 index 000000000000..8508153c294f --- /dev/null +++ b/dev-python/pypy/pypy-7.3.1-r3.ebuild @@ -0,0 +1,182 @@ +# 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/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 + # broken upstream + # see http://buildbot.pypy.org/summary?branch=%3Ctrunk%3E + 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 + + 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-${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 + python_domodule epython.py + + 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/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-r1.ebuild b/dev-python/pypy/pypy-7.3.2_rc2-r1.ebuild new file mode 100644 index 000000000000..a5a678ffa9d0 --- /dev/null +++ b/dev-python/pypy/pypy-7.3.2_rc2-r1.ebuild @@ -0,0 +1,175 @@ +# 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/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 + # 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 + ) + + ./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-${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 + python_domodule epython.py + + einfo "Byte-compiling Python standard library..." + python_optimize "${ED}${dest}" + + # remove to avoid collisions + rm "${PYTHON}" || die +} -- cgit v1.2.3