diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2023-12-26 06:27:38 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2023-12-26 06:27:38 +0000 |
| commit | 63b7291f35aafad2261aa34c8c09b2ccce07e475 (patch) | |
| tree | bde311c544c031b1e864850e8a1decc46121b465 /dev-python | |
| parent | bc578394ba4c1b3769658c36b92b57735f4abcd1 (diff) | |
| download | baldeagleos-repo-63b7291f35aafad2261aa34c8c09b2ccce07e475.tar.gz baldeagleos-repo-63b7291f35aafad2261aa34c8c09b2ccce07e475.tar.xz baldeagleos-repo-63b7291f35aafad2261aa34c8c09b2ccce07e475.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
24 files changed, 1204 insertions, 4 deletions
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest index a11d7c268c91..e9da2ac43cac 100644 --- a/dev-python/langdetect/Manifest +++ b/dev-python/langdetect/Manifest @@ -1 +1,3 @@ DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db +EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48 +MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45 diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml index 736a1167c898..020e07f2a3dd 100644 --- a/dev-python/langdetect/metadata.xml +++ b/dev-python/langdetect/metadata.xml @@ -1,6 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> <pkgmetadata> - - <origin>gentoo-guru-overlay</origin> + <maintainer type="person"> + <email>marcin.deranek@slonko.net</email> + <name>Marcin Deranek</name> + </maintainer> + <upstream> + <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to> + </upstream> + <origin>slonko-overlay</origin> </pkgmetadata>
\ No newline at end of file diff --git a/dev-python/pypy-exe-bin/Manifest b/dev-python/pypy-exe-bin/Manifest index fbb2062a6946..f80e887d8d0e 100644 --- a/dev-python/pypy-exe-bin/Manifest +++ b/dev-python/pypy-exe-bin/Manifest @@ -6,3 +6,11 @@ DIST pypy-exe-7.3.13-1.ppc64le-musl.gpkg.tar 6563840 BLAKE2B cc7938c4a9f3b80a9b7 DIST pypy-exe-7.3.13-1.ppc64le.gpkg.tar 10936320 BLAKE2B eaacb2af2c5f62fd487893e4d97ab288ead1c81a0b3ba99782f11ab95ac525c81bc37af5093e76843a17c8ce792aa601befe51b6774908a5328fd4ad449651f8 SHA512 733ec08aa5ab055ec4983e677c8261a4b62006c88a01f0e9ff9abed45781da5144eb4acd41ed7203f74622cd35cbb89c1384ec113c915e38a8d9d81288952b19 DIST pypy-exe-7.3.13-1.x86-musl.gpkg.tar 9656320 BLAKE2B 61f608aaaa316a64de7445fd856aedf34e11bb08d5f1d7819faa198c7014d397244acd54eb35fe95fc79ef53c5ff770f6e608a0868508422386f110c4357fb69 SHA512 0c3799d15688496ff67007323e0398e7b82becb83d77db4585b5439107f3b4244cff658b908d125d1615391265cc5add2ba5116027bf67c7603c49de54b73f02 DIST pypy-exe-7.3.13-1.x86.gpkg.tar 9574400 BLAKE2B 29b9d82995b503f5fa933c0ab3ea988b0321768692974d232040afc1b24fb45905f1ae526f57e443110e7341ed310753e4a0ffd161979b0bdc8e6cf1374ca540 SHA512 9046ae99f4996188c04a098e5d716e885545437f5e31e1c75268b45f80d4743b1c431a2aeed990746530ce3c6077a985ff535f813fabcf2ccac91ed8dbc4f2ef +DIST pypy-exe-7.3.14-1.amd64-musl.gpkg.tar 12943360 BLAKE2B dcb129b19ba43ba92697f6b9133591ca02923b2d5b2bcbbc8c2936ea0aaa7c77caffe264fc5ed35bb46621b4ab47ebeaa8079a56558d39153b26d95c42d1b809 SHA512 783c09d6054209a0c4c7fbd366bf712fd53deb14a8083e1bb18cb5e4f2c5cbd2c638e42a0b8e2abc7d5fcd3b1437004532089ac8c35fcda512f3695e4105c2d7 +DIST pypy-exe-7.3.14-1.amd64.gpkg.tar 12861440 BLAKE2B 88ff25e6ecd12ac2844317923e4d353608bdcc8b65c3a828b5728d0b92759a8c6844b4b0e62563cd24c13b755416176f670a288e26317d8b114af3a1d774f5de SHA512 fa1407b2dae1e6e796611921a32a1f655ecf932601211c0257e6b3877636d99140c2a3617c6601a517eda1c1166f2b9d2fc47edf51703d7e0342699906bd1eaf +DIST pypy-exe-7.3.14-1.arm64-musl.gpkg.tar 10895360 BLAKE2B c8ad4bd01df3ac990e54e6b22cca5d19d2b1c145e8672def6ef5e80e8b1240ec497fb5bfbcedafd2165e654a813ec5091eed6be797bba6c8ce431bf176e68818 SHA512 705ac967d776003c504df4c4c74549ba52c9b91e8145ed6e7d51e35603b5d2800350f159312077ff754254ec8ab539817d989d61b3ab289fdf32e52c85a58992 +DIST pypy-exe-7.3.14-1.arm64.gpkg.tar 10864640 BLAKE2B 6bf4cf7188edeca9cc94c4764c3c1f1cefb36e6430c3ec8c014ae25a91f9a1e6fd87701d0a6d06a36d3a607eef5c01605d6ed86fb1112901ca4b3827fec8c5c0 SHA512 fd85453a5729be5905a2eaf58109fa19268358244989d24d4a7fd4e627a60ff083d6ef96a3a244016ec87f4d3f76ee777f5fe6e356ef8819621b3740c0b19fc5 +DIST pypy-exe-7.3.14-1.ppc64le-musl.gpkg.tar 6696960 BLAKE2B 7478945b927d9df57e1242edbb57b99ab004d3e62159fbcdfb4ea6d406e1df73cfdb2e56bd87dc716b070792973ddffb2b9e535a0c63fe12548457920e20f29e SHA512 4e10026546933bbb734aa203b94941bb63471ab44396a405f6a0273a05e3f9225c8ec46011866e246681591f3ec9896d83a1246a1ca393739f864cdee53e8da8 +DIST pypy-exe-7.3.14-1.ppc64le.gpkg.tar 11110400 BLAKE2B 2651e0d0b592020a7b70a6bc43bd6d1eecc3842022a7fe09668abed088c2b6cbddc91f6dfa23a1474199290a2b1cc90111c3d5225c55b88e96ca26e19fe836f0 SHA512 aba7abe80d340ecedaaaf47747a109a32cf15bc0b2b16e3272440e8405b91314e423668c301a5cefa4a6b49c3718611012c138f5dc969cc78b5c8c53407ccdac +DIST pypy-exe-7.3.14-1.x86-musl.gpkg.tar 9830400 BLAKE2B 2c8b24951ed3f74ffca0be4e4f3c9e841240591d2b66a996f7028011270b292702e827ca59a1591a439fa3adcc1d5e3167d87fd9a15799985389acc3ede9b82d SHA512 dac584239b247738165d650b9b7da87cf006ee88081f32b8daaebd1dfb62aef86c0278b93a1b161ffd7bb0d15675fb7c85f18b373202389536c671194dffc227 +DIST pypy-exe-7.3.14-1.x86.gpkg.tar 9861120 BLAKE2B 02fb30d79d4dc7f844179f9f8ea42e8e4db607bf58b43f944dc2c2dcfaf1adf3acede93c32785bf46bb259af546a891471f558db7a00e653bf169760130dc0eb SHA512 e586be487950f0e33c558c8a2fc9f97fc46e9b4e5c113870661e45ee3c553b21686818eb36829b525201c24ec4c13da14bb22c723ae118ca40f222d2bf826458 diff --git a/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.14.ebuild b/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.14.ebuild new file mode 100644 index 000000000000..577201cf8c2d --- /dev/null +++ b/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.14.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pax-utils unpacker + +MY_P=pypy-exe-${PV}-1 +DESCRIPTION="PyPy executable (pre-built version)" +HOMEPAGE="https://www.pypy.org/" +SRC_URI=" + elibc_glibc? ( + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.amd64.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.arm64.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.ppc64le.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.x86.gpkg.tar + ) + ) + elibc_musl? ( + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.amd64-musl.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.arm64-musl.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.ppc64le-musl.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar + -> ${MY_P}.x86-musl.gpkg.tar + ) + ) +" +S="${WORKDIR}" + +LICENSE="MIT" +SLOT="${PV%_p*}" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +# sys-devel/gcc for libgcc_s.so +RDEPEND=" + app-arch/bzip2:0/1 + dev-libs/expat:0/0 + dev-libs/libffi:0/8 + sys-libs/ncurses:0/6 + >=sys-libs/zlib-1.1.3:0/1 + virtual/libintl:0/0 + elibc_glibc? ( + sys-devel/gcc + >=sys-libs/glibc-2.35 + ) + !dev-python/pypy-exe:${SLOT} +" + +QA_PREBUILT=" + usr/lib/pypy2.7/pypy-c-${SLOT} +" + +src_install() { + insinto / + doins -r */image/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 23f106c3c88a..1d1bd519014b 100644 --- a/dev-python/pypy-exe/Manifest +++ b/dev-python/pypy-exe/Manifest @@ -1,2 +1,4 @@ DIST pypy2.7-gentoo-patches-7.3.13.tar.xz 5340 BLAKE2B 843a7a5e4c2fd56fc4db51ba388736c0aa6593d45b145503f6428783a9fd815a77e2a06809077effced6fccf75c0dd38527a0695211852fd2a4c61b34e40c15c SHA512 cc8f6fc69f00030609a8d79f05a60b2e185141e9fc70a53b476b60a183dd0500627023658c6a57c2412f32af1db6fae91a361a4992d84e7dfbadb7eb4a98b8a1 +DIST pypy2.7-gentoo-patches-7.3.14.tar.xz 5344 BLAKE2B 841556694ad6bb61ea96e063c125508d574fa0be493f930435dff784a35def18c17d510c7123229cf85d576111b4a721cb52341ebb5f618d731335fbcf9ed267 SHA512 ccc8d03a17825607fb41c1e3926ff17908bd644542d9431c8f9291ed10a852416cf91b09c5c0ba0446f73208755b3bbb742c926be55875cfd69646f1ac7a8cae DIST pypy2.7-v7.3.13-src.tar.bz2 19907651 BLAKE2B ce80db193afadbc721e781cbfe3d72bfe420eef3ede408f23213ab5d87a9a42c025d3c31c742dcb55a039b618930ebc4899d704f060d294f2e492d4d754effba SHA512 deeca234abbe526102cec637dc88399f462f64ae66c38782e6f3372b484d25fa4e88b906f783ba515bed17d2e82626d1c94fd6ee9b8b64e393f9bc0f5ee2b07b +DIST pypy2.7-v7.3.14-src.tar.bz2 19910947 BLAKE2B 3d03b16b4e6344b8590aaf1815202782bb355ab21422c5ea5b40cd84f36fa2ff37b2493313a3faf242039b9b91e3c8ea8fe1237a487a0dac44e4c27bf29f5f85 SHA512 e806aedc1625c1601fa623c3b03881f820d37455c5432bef345f85ef0300247f7725efe3bf470fe533aa422dbceaadca636d0c4bf74c65e1e04c0f82380e53f0 diff --git a/dev-python/pypy-exe/pypy-exe-7.3.14.ebuild b/dev-python/pypy-exe/pypy-exe-7.3.14.ebuild new file mode 100644 index 000000000000..6f7eef22f3b8 --- /dev/null +++ b/dev-python/pypy-exe/pypy-exe-7.3.14.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs pax-utils toolchain-funcs + +PYPY_PV=${PV%_p*} +MY_P=pypy2.7-v${PYPY_PV/_} +PATCHSET="pypy2.7-gentoo-patches-${PV/_}" + +DESCRIPTION="PyPy executable (build from source)" +HOMEPAGE="https://www.pypy.org/" +SRC_URI=" + https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2 + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz +" +S="${WORKDIR}/${MY_P}-src" + +LICENSE="MIT" +SLOT="${PYPY_PV}" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2" + +DEPEND=" + >=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= ) +" +RDEPEND=" + ${DEPEND} + !dev-python/pypy-exe-bin:${PYPY_PV} +" +# don't enforce the dep on dev-python/pypy with USE=low-memory +# since it's going to cause circular dep with unhelpful error message +BDEPEND=" + !low-memory? ( + || ( + dev-python/pypy + dev-lang/python:2.7 + ) + ) +" + +check_env() { + if ! has_version -b dev-python/pypy; then + if use low-memory; then + eerror "USE=low-memory requires (a prior version of) dev-python/pypy" + eerror "installed." + else + ewarn "CPython 2.7 will be used to perform the translation. Upstream" + ewarn "recommends using (a prior version of) dev-python/pypy instead." + fi + elog "You can install a prebuilt version of PyPy first using e.g.:" + elog " $ emerge -1v dev-python/pypy dev-python/pypy-exe-bin" + + if use low-memory; then + die "dev-python/pypy needs to be installed for USE=low-memory" + fi + fi + + 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() { + [[ ${MERGE_TYPE} != binary ]] && check_env +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + default +} + +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 + if use low-memory || has_version -b dev-python/pypy; then + einfo "Using already-installed PyPy to perform the translation." + interp=( pypy ) + if use low-memory; then + local -x PYPY_GC_MAX_DELTA=200MB + interp+=( --jit loop_longevity=300 ) + fi + else + einfo "Using CPython 2.7 to perform the translation." + interp=( python2.7 ) + + # reuse bundled pycparser to avoid external dep + mkdir -p "${T}"/pymod/cffi || die + : > "${T}"/pymod/cffi/__init__.py || die + cp -r lib_pypy/cffi/_pycparser "${T}"/pymod/cffi/ || die + local -x PYTHONPATH=${T}/pymod:${PYTHONPATH} + fi + + # translate into the C sources + # we're going to build 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-${PYPY_PV} + insinto "${dest}"/include/${PYPY_PV} + doins include/pypy_* + pax-mark m "${ED}${dest}/pypy-c-${PYPY_PV}" +} diff --git a/dev-python/pypy3/pypy3-7.3.14.ebuild b/dev-python/pypy3/pypy3-7.3.14.ebuild new file mode 100644 index 000000000000..ecf195f8f782 --- /dev/null +++ b/dev-python/pypy3/pypy3-7.3.14.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYVER=3.10 +DESCRIPTION="A fast, compliant alternative implementation of the Python (${PYVER}) language" +HOMEPAGE=" + https://www.pypy.org/ + https://foss.heptapod.net/pypy/pypy/ +" +S=${WORKDIR} + +LICENSE="MIT" +SLOT="0/pypy310-pp73-384" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+gdbm ncurses sqlite tk" + +RDEPEND=" + =dev-python/pypy3_10-${PV}*:${SLOT}[gdbm?,ncurses?,sqlite?,tk?] +" + +src_install() { + dodir /usr/bin + dosym pypy${PYVER} /usr/bin/pypy3 +} diff --git a/dev-python/pypy3_10-exe-bin/Manifest b/dev-python/pypy3_10-exe-bin/Manifest index eb762774eefe..8b31e94c2902 100644 --- a/dev-python/pypy3_10-exe-bin/Manifest +++ b/dev-python/pypy3_10-exe-bin/Manifest @@ -6,3 +6,11 @@ DIST pypy3_10-exe-7.3.13_p3-1.ppc64le-musl.gpkg.tar 6522880 BLAKE2B 6c1a9c390e35 DIST pypy3_10-exe-7.3.13_p3-1.ppc64le.gpkg.tar 10065920 BLAKE2B 951899b54a4fd248643625df6fa6926ed831b7b43d3020c62b109101877a06f5413ed41e1bf165b23bb66e2bfc4b910f84d6a3a9ad67cfaee2e8fbe5dec96bac SHA512 24b72ddedadce461b8dbaedc25dc582e8f215b194431a9a946b3d21725506730564e3ec64e640ae29baee0fae132e7b756b781444a6c0080890953234afb509f DIST pypy3_10-exe-7.3.13_p3-1.x86-musl.gpkg.tar 8806400 BLAKE2B 92152ea6f9c7a75934cb3a507d2c1ec17f91465aa3d5fb8f2cf8add2708d721a90d90c15656ada1c2ee0bf2290891cce090fed2b8ea4c8b9a17bccf3239ba1e9 SHA512 73292601e8ffb2c977a1b1253878d17bdf686d8a3b5ef7a737319aabfafe342c1b210f0773765203a41b55359a7c4fbe4958cc9813fc6849bf78ff5c5aaca7b0 DIST pypy3_10-exe-7.3.13_p3-1.x86.gpkg.tar 8765440 BLAKE2B 1ea5c757b5f87846000ed010ef9eecb40ff278b3bf97211037e184a0c96f643f17656a0801ae0fc8ff45f7fc20372474439d1e3a7ba38755a1f64cc56d5670c3 SHA512 88a7ab0d960f89d38ef1703eaf8afdfad18b9b1ee046295914bb4968f719759e3dd9a604930348568feb60afd466258705bd9c6e26f6c760f56ffb0ddf1038e7 +DIST pypy3_10-exe-7.3.14-1.amd64-musl.gpkg.tar 12001280 BLAKE2B 9f0507d48bea2773b0d648bf2817f3228c6cd985e2c5229456887af00a0d4b8e9f4d0f8a2c0dabd73880c06ab93c89ca7ddc5aa5cec8720407d14ed40303604b SHA512 7f2740e94100ff64b2e492d30d4f4ca7f313586b29eb2edbd6c405fcbee1712f253205d09a010cf6992c593b3bdc593732ab76eb41b154aaf170cfa46e2da800 +DIST pypy3_10-exe-7.3.14-1.amd64.gpkg.tar 12011520 BLAKE2B 256a561cc40aa2fa980766e19f253bfca5d301a0e79de419d18d13b23b038db593835cfcb5faa3089cec9e86fcee98b09498d951d549a66aac1545c5c7e39a47 SHA512 e250e7f2d7acdd7dd521cae9ed12b344759970280da4c4c8ee3f3d667449c31fd3762be9ae44093b7d0b7a963a1a3c82586ee298a6bea425e77638162c3662ea +DIST pypy3_10-exe-7.3.14-1.arm64-musl.gpkg.tar 10199040 BLAKE2B 782501fb169ad7ab0c22d10b58a559b3063d8c67db707c66147864b69d16dbde55027c841ad8548aaf574e20df95d87af7fdd7fb52030c9a2d71fc6a16ecda4e SHA512 9c353521198b6ff35213075177a5cea4d1f76d8148823077221f8fb2e32fc55cbe89590a69e36e670d97700c888f705cc26dd237ea137759cb44c311dbf89a49 +DIST pypy3_10-exe-7.3.14-1.arm64.gpkg.tar 10117120 BLAKE2B 4135a346b1d6e34ae90e5bfb255d3ca840fcfd13cd848b3b6562a650b364a9ff1f91a5eb81070252297bef87bc511cefeecf30e274be1c06b731eb33a88fbc33 SHA512 b60eade588eafbdea5285c31cda25c1f735da586ef56e7c81f98b883c481d866837680b86d5fdafa847282d1a83e1b7da9b4a95096041f7932ec6f77c74b897d +DIST pypy3_10-exe-7.3.14-1.ppc64le-musl.gpkg.tar 6737920 BLAKE2B 3578757c8fc2da1079808107272cff3b49ae295d8fea1009d9787faab68e8f32c6e633093394d83feb629b39a4c149d083cb80a1e48b2e892570f0ee43f72ba3 SHA512 f5c66d9f96d4ba94c54739812d315b92a99ca2f85c777c6fd8b704405ba8d2fc9f28e4ced24fab0548ceadee3e2b60288dafb9b023653439c2a0596d05b45d3b +DIST pypy3_10-exe-7.3.14-1.ppc64le.gpkg.tar 10362880 BLAKE2B f9422fb581ea1196d97ad420ebf192a6de343cd9024a030e987267a0c51b1a7070783ddd123c862cca7338c99011368bc5a8b6e603b15ae8e70358dd13275e97 SHA512 e9b55117a13767a855b4f25e0c3550370d9d4e4110aa7e685b4131e07dfaef9a68a01e3e18620aee40d9152a37e01271ada0e112d71dc92cafcc1ba240bf03a5 +DIST pypy3_10-exe-7.3.14-1.x86-musl.gpkg.tar 9031680 BLAKE2B ebd345010960b2c30e8ba68b79b5986c88c3657577c4cab36f8edd28e7df6f7e0f37a42a696cd6e6b17a2bc40896cab4280b1da9c0883925711d5eb46f827dda SHA512 ae2974c7c792900152d65114fd08c81ace540d13ab428de2fa8018bd8a1f279b13cac7c0b7b75b77335feb1463c537f2e7009d362ef42a1c54af7b5097d27d5b +DIST pypy3_10-exe-7.3.14-1.x86.gpkg.tar 9021440 BLAKE2B 48a724bcfc5751413abcdf7adfe906a221e3541bdb8c550ad3711be0a8420b60c7716372eac6cbbadcae496fa135864507293fb9d3c287fa82eb921bf9107726 SHA512 7499e54bf34d9786b414bde6cc6265fc9c7372136461577af9af3a74a1775144168ce8100a3c9dc090491b24a863442bec29db4117bb326dd1c878925794575f diff --git a/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.14.ebuild b/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.14.ebuild new file mode 100644 index 000000000000..3933dcac88c9 --- /dev/null +++ b/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.14.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pax-utils unpacker + +PYVER=3.10 +MY_P=pypy3_10-exe-${PV}-1 + +DESCRIPTION="PyPy3.10 executable (pre-built version)" +HOMEPAGE="https://www.pypy.org/" +SRC_URI=" + elibc_glibc? ( + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.amd64.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.arm64.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.ppc64le.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.x86.gpkg.tar + ) + ) + elibc_musl? ( + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.amd64-musl.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.arm64-musl.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.ppc64le-musl.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar + -> ${MY_P}.x86-musl.gpkg.tar + ) + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="${PV%_p*}" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +# sys-devel/gcc for libgcc_s.so +RDEPEND=" + app-arch/bzip2:0/1 + dev-libs/expat:0/0 + dev-libs/libffi:0/8 + sys-libs/ncurses:0/6 + >=sys-libs/zlib-1.1.3:0/1 + virtual/libintl:0/0 + elibc_glibc? ( + sys-devel/gcc + >=sys-libs/glibc-2.35 + ) + !dev-python/pypy3_10-exe:${SLOT} +" + +PYPY_PV=${PV%_p*} +QA_PREBUILT=" + usr/bin/pypy${PYVER}-c-${PYPY_PV} +" + +src_install() { + insinto / + doins -r image/usr + fperms +x "/usr/bin/pypy${PYVER}-c-${PYPY_PV}" + pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" +} diff --git a/dev-python/pypy3_10-exe/Manifest b/dev-python/pypy3_10-exe/Manifest index aa0d06633988..0b81ced85f26 100644 --- a/dev-python/pypy3_10-exe/Manifest +++ b/dev-python/pypy3_10-exe/Manifest @@ -1,2 +1,4 @@ DIST pypy3.10-gentoo-patches-7.3.13_p3.tar.xz 9780 BLAKE2B a72cfc6723ad914f012309eac7606a37f2e6dd2c5f83c049c0d68466dae45a366536f2065c1ccdc9516339cb8949b146e410ab04b1cbbff3b9d62620a039040d SHA512 c1beb5c661dd0c0d94bebb23b82972ac9442caf777c377923c31b3f82b007396d0c3ef9874fc01cf765986cc7c6a941628f7e377a732a0706e99e3acb6fc5db6 +DIST pypy3.10-gentoo-patches-7.3.14.tar.xz 4772 BLAKE2B 3866dd6a86f88bf10d5a9a639defea0dbe3cb301ccb23d015b147a220f0e32041dc46497e43ad03c1c486291bb56752d77eaa2703e164e58f4f6af3e6b1e2433 SHA512 5da998beefaabe1307a16f1d9d4239453b9017aaabefbdb34d70ce339bfb9f8b7a258cdfcba74e0241bf140b3d2aae500710309d1dddb667154be7c482e88daa DIST pypy3.10-v7.3.13-src.tar.bz2 23067819 BLAKE2B 6e2bfd83bcf16feef006dad39ab6d8f452418ee6bc4043edaa590db702f39275e775004bdba762736a901da94cb5274cd34f2811461048d46ac0f4af04158702 SHA512 16fbc76558152b3eadca999d56197a6bf906cbb7bb75035ccd3501372af0f0c22533d22ba231a40b7c02afa11f0d692a6ae85ba6d5e1607b737b8c68209b7c43 +DIST pypy3.10-v7.3.14-src.tar.bz2 23828709 BLAKE2B 15b3197953ff6271ddc9aad317f06094e1744111b7236447f029299dcc8a8ee089a8d91eec46d634489e0e89c94c0b18fda97dee51b3030ac62b0beeea7d6413 SHA512 4162d60d3869cfc87b1850266b9c7147413d3a7184a3c0c2edf1d1270ba3dff2db8047c7f2b5bbdd4c4d5136823adc078a5d45d575715984bab6633d1462f694 diff --git a/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.14.ebuild b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.14.ebuild new file mode 100644 index 000000000000..9eec2da0971d --- /dev/null +++ b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.14.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs flag-o-matic pax-utils toolchain-funcs + +PYPY_PV=${PV%_p*} +PYVER=3.10 +MY_P="pypy${PYVER}-v${PYPY_PV/_}" +PATCHSET="pypy${PYVER}-gentoo-patches-${PV}" + +DESCRIPTION="PyPy3.10 executable (build from source)" +HOMEPAGE="https://www.pypy.org/" +SRC_URI=" + https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2 + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz +" +S="${WORKDIR}/${MY_P}-src" + +LICENSE="MIT" +SLOT="${PYPY_PV}" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+jit low-memory ncurses cpu_flags_x86_sse2" + +RDEPEND=" + app-arch/bzip2:0= + dev-libs/expat:0= + dev-libs/libffi:0= + >=sys-libs/zlib-1.1.3:0= + virtual/libintl:0= + ncurses? ( sys-libs/ncurses:0= ) + !dev-python/pypy3-exe-bin:${SLOT} +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-python/pypy + virtual/pkgconfig +" + +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() { + [[ ${MERGE_TYPE} != binary ]] && check_env +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + default +} + +src_configure() { + tc-export CC + + # Yes, yuck, but it's being worked on upstream (bug #918971). + # https://foss.heptapod.net/pypy/pypy/-/issues/4042 + append-flags $(test-flags-CC -Wno-error=incompatible-pointer-types) + + 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 + --withmod-bz2 + $(usex ncurses --with{,out}mod-_minimal_curses) + ) + + local interp=( pypy ) + if use low-memory; then + local -x PYPY_GC_MAX_DELTA=200MB + interp+=( --jit loop_longevity=300 ) + fi + + # translate into the C sources + # we're going to build 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() { + cd "${T}"/usession*-0 || die + newbin "testing_1/pypy${PYVER}-c" "pypy${PYVER}-c-${PYPY_PV}" + insinto "/usr/include/pypy${PYVER}/${PYPY_PV}" + doins *.h + pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" +} diff --git a/dev-python/pypy3_10/Manifest b/dev-python/pypy3_10/Manifest index aa0d06633988..0b81ced85f26 100644 --- a/dev-python/pypy3_10/Manifest +++ b/dev-python/pypy3_10/Manifest @@ -1,2 +1,4 @@ DIST pypy3.10-gentoo-patches-7.3.13_p3.tar.xz 9780 BLAKE2B a72cfc6723ad914f012309eac7606a37f2e6dd2c5f83c049c0d68466dae45a366536f2065c1ccdc9516339cb8949b146e410ab04b1cbbff3b9d62620a039040d SHA512 c1beb5c661dd0c0d94bebb23b82972ac9442caf777c377923c31b3f82b007396d0c3ef9874fc01cf765986cc7c6a941628f7e377a732a0706e99e3acb6fc5db6 +DIST pypy3.10-gentoo-patches-7.3.14.tar.xz 4772 BLAKE2B 3866dd6a86f88bf10d5a9a639defea0dbe3cb301ccb23d015b147a220f0e32041dc46497e43ad03c1c486291bb56752d77eaa2703e164e58f4f6af3e6b1e2433 SHA512 5da998beefaabe1307a16f1d9d4239453b9017aaabefbdb34d70ce339bfb9f8b7a258cdfcba74e0241bf140b3d2aae500710309d1dddb667154be7c482e88daa DIST pypy3.10-v7.3.13-src.tar.bz2 23067819 BLAKE2B 6e2bfd83bcf16feef006dad39ab6d8f452418ee6bc4043edaa590db702f39275e775004bdba762736a901da94cb5274cd34f2811461048d46ac0f4af04158702 SHA512 16fbc76558152b3eadca999d56197a6bf906cbb7bb75035ccd3501372af0f0c22533d22ba231a40b7c02afa11f0d692a6ae85ba6d5e1607b737b8c68209b7c43 +DIST pypy3.10-v7.3.14-src.tar.bz2 23828709 BLAKE2B 15b3197953ff6271ddc9aad317f06094e1744111b7236447f029299dcc8a8ee089a8d91eec46d634489e0e89c94c0b18fda97dee51b3030ac62b0beeea7d6413 SHA512 4162d60d3869cfc87b1850266b9c7147413d3a7184a3c0c2edf1d1270ba3dff2db8047c7f2b5bbdd4c4d5136823adc078a5d45d575715984bab6633d1462f694 diff --git a/dev-python/pypy3_10/pypy3_10-7.3.14.ebuild b/dev-python/pypy3_10/pypy3_10-7.3.14.ebuild new file mode 100644 index 000000000000..723a5ebe36a9 --- /dev/null +++ b/dev-python/pypy3_10/pypy3_10-7.3.14.ebuild @@ -0,0 +1,211 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multiprocessing pax-utils toolchain-funcs + +PYPY_PV=${PV%_p*} +PYVER=3.10 +MY_P="pypy${PYVER}-v${PYPY_PV/_}" +PATCHSET="pypy${PYVER}-gentoo-patches-${PV/_rc/rc}" + +DESCRIPTION="A fast, compliant alternative implementation of the Python (${PYVER}) language" +HOMEPAGE=" + https://www.pypy.org/ + https://foss.heptapod.net/pypy/pypy/ +" +SRC_URI=" + https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2 + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz +" +S="${WORKDIR}/${MY_P}-src" + +LICENSE="MIT" +# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' +# also check pypy/interpreter/pycode.py -> pypy_incremental_magic +SLOT="0/pypy310-pp73-384" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+ensurepip gdbm +jit ncurses sqlite tk" +# many tests are failing upstream +# see https://buildbot.pypy.org/summary?branch=py${PYVER} +RESTRICT="test" + +RDEPEND=" + || ( + >=dev-python/${PN}-exe-${PYPY_PV}:${PYPY_PV}[bzip2(+),ncurses?] + >=dev-python/${PN}-exe-bin-${PYPY_PV}:${PYPY_PV} + ) + dev-lang/python-exec[python_targets_pypy3(-)] + dev-libs/openssl:0= + dev-python/gentoo-common + ensurepip? ( dev-python/ensurepip-wheels ) + gdbm? ( sys-libs/gdbm:0= ) + sqlite? ( dev-db/sqlite:3= ) + tk? ( + dev-lang/tk:0= + dev-tcltk/tix:0= + ) + !~dev-python/pypy3-7.3.12_rc1 +" +DEPEND=" + ${RDEPEND} +" + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + default +} + +src_configure() { + tc-export CC +} + +src_compile() { + mkdir bin || die + # switch to the layout expected for cffi module builds + mkdir include/pypy${PYVER} || die + # copy over to make sys.prefix happy + cp -p "${BROOT}"/usr/bin/pypy${PYVER}-c-${PYPY_PV} pypy${PYVER}-c || die + cp -p "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/* include/pypy${PYVER}/ || die + # (not installed by pypy-exe) + rm pypy/module/cpyext/include/_numpypy/numpy/README || die + mv pypy/module/cpyext/include/* include/pypy${PYVER}/ || die + mv pypy/module/cpyext/parse/*.h include/pypy${PYVER}/ || die + pax-mark m pypy${PYVER}-c + + # verify the subslot + local soabi=$( + ./pypy${PYVER}-c - <<-EOF + import importlib.util + import sysconfig + soabi = sysconfig.get_config_var("SOABI") + magic = importlib.util._RAW_MAGIC_NUMBER & 0xffff + print(f"{soabi}-{magic}") + EOF + ) + [[ ${soabi} == ${SLOT#*/} ]] || die "update subslot to ${soabi}" + + # Add epython.py to the distribution + echo 'EPYTHON="pypy3"' > lib-python/3/epython.py || die + + einfo "Generating caches and CFFI modules ..." + + # Generate sysconfig data + local host_gnu_type=$(sh pypy/tool/release/config.guess) + local overrides=( + HOST_GNU_TYPE "${host_gnu_type:-unknown}" + INCLUDEPY "${EPREFIX}/usr/include/pypy${PYVER}" + LIBDIR "${EPREFIX}/usr/$(get_libdir)" + TZPATH "${EPREFIX}/usr/share/zoneinfo" + WHEEL_PKG_DIR "${EPREFIX}/usr/lib/python/ensurepip" + ) + ./pypy${PYVER}-c -m sysconfig --generate-posix-vars "${overrides[@]}" || die + local outdir + outdir=$(<pybuilddir.txt) || die + cp "${outdir}"/_sysconfigdata__*.py lib-python/3/ || die + + # Generate Grammar and PatternGrammar pickles. + ./pypy${PYVER}-c - <<-EOF || die "Generation of Grammar and PatternGrammar pickles failed" + import lib2to3.pygram + import lib2to3.patcomp + lib2to3.patcomp.PatternCompiler() + EOF + + # Generate cffi modules + # Please keep in sync with lib_pypy/pypy_tools/build_cffi_imports.py! + # (NB: we build CFFI modules first to avoid error log when importing + # build_cffi_imports). + cffi_targets=( + pypy_util blake2/_blake2 sha3/_sha3 ssl + audioop syslog pwdgrp resource lzma posixshmem + ctypes_test testmultiphase + ) + 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${PYVER}-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" + done + # testcapi does not have a "build" script + ../pypy${PYVER}-c -c "import _testcapi" || die + + # Verify that CFFI module list is up-to-date + local expected_cksum=a4138e48 + local local_cksum=$( + ../pypy${PYVER}-c - <<-EOF + import binascii + import json + from pypy_tools.build_cffi_imports import cffi_build_scripts as x + print("%08x" % (binascii.crc32(json.dumps(x).encode()),)) + EOF + ) + if [[ ${local_cksum} != ${expected_cksum} ]]; then + die "Please verify cffi_targets and update checksum to ${local_cksum}" + fi + + # Cleanup temporary objects + find \( -name "*_cffi.c" -o -name '*.o' \) -delete || die + find -type d -empty -delete || die +} + +src_install() { + einfo "Installing PyPy ..." + dodir /usr/bin + dosym pypy${PYVER}-c-${PYPY_PV} /usr/bin/pypy${PYVER} + insinto /usr/lib/pypy${PYVER} + # preserve mtimes to avoid obsoleting caches + insopts -p + doins -r lib-python/3/. lib_pypy/. + insinto /usr/include + doins -r include/pypy${PYVER} + + # replace copied headers with symlinks + for x in "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/*; do + dosym "${PYPY_PV}/${x##*/}" "/usr/include/pypy${PYVER}/${x##*/}" + done + + dodoc README.rst + + local dest=/usr/lib/pypy${PYVER} + rm -r "${ED}${dest}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${ED}${dest}"/ensurepip || die + fi + if ! use gdbm; then + rm -r "${ED}${dest}"/_gdbm* || die + fi + if ! use sqlite; then + rm -r "${ED}${dest}"/sqlite3 \ + "${ED}${dest}"/_sqlite3* \ + "${ED}${dest}"/test/test_sqlite.py || die + fi + if ! use tk; then + rm -r "${ED}${dest}"/{idlelib,tkinter} \ + "${ED}${dest}"/_tkinter \ + "${ED}${dest}"/test/test_{tcl,tk,ttk*}.py || die + fi + dosym ../python/EXTERNALLY-MANAGED "${dest}/EXTERNALLY-MANAGED" + + local -x PYTHON=${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" "${PYTHON}" || die + + einfo "Byte-compiling Python standard library..." + # exclude list from CPython Makefile.pre.in + "${PYTHON}" -m compileall -j "$(makeopts_jobs)" -o 0 -o 1 -o 2 \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + --hardlink-dupes -q -f -d "${dest}" "${ED}${dest}" || die + + # remove to avoid collisions + rm "${PYTHON}" || die +} diff --git a/dev-python/pypy3_9-exe-bin/Manifest b/dev-python/pypy3_9-exe-bin/Manifest index e63e559e559e..17aa6a91cb8e 100644 --- a/dev-python/pypy3_9-exe-bin/Manifest +++ b/dev-python/pypy3_9-exe-bin/Manifest @@ -6,3 +6,11 @@ DIST pypy3_9-exe-7.3.13-1.ppc64le-musl.gpkg.tar 6389760 BLAKE2B 1eb0a9aed7e28227 DIST pypy3_9-exe-7.3.13-1.ppc64le.gpkg.tar 9963520 BLAKE2B 07e02711f40e336077162887f1e39e761c295ef13300be46871082a4ecc998bedabbca38aba2a22d76899dd367d25194cf60f5ebe75fd89306c6661beaf4383e SHA512 939850b6d1c4acf634e9fb7eacabefb4888938fda2e333dd658e46304b281619b737cf3b5c1969c4114269a5a2ad90a193a1e7ca3bf57d67c4b777d308997cdf DIST pypy3_9-exe-7.3.13-1.x86-musl.gpkg.tar 8704000 BLAKE2B 22e5b403fe30d147d4eeff43b4ff010f5234a759a4383d2131a04e871039ac19f0c9918f43d2958554c0d25c2a1ad5532ab90a11bb2b401ec00f804b8a4f0b58 SHA512 3e9f5f3529473beaa13e1c473743449d08eb636f45fe6f94ecd5dc3560f2b48bd46ba9dc7aef9fbb54c94fd822e1835f0b58b611522a5349d54e5c509a5c1384 DIST pypy3_9-exe-7.3.13-1.x86.gpkg.tar 8642560 BLAKE2B c5f481f79ba67c5250d6d72d3582ff72be3f55516f14acbfe6720b65d7d6b1464c9a2703f7bb75e9479c5a1e83b07f0c6fa628a55a019eeb9ac939cb68275e99 SHA512 0eadc7cf710c2c02ef9c0ba7ae0c45a9055bb65f0f341d5039e41934d3217b0cd92ee169569205a7b14217f92e91da9b8d376b0dfb25c6c41be150771711ba36 +DIST pypy3_9-exe-7.3.14-1.amd64-musl.gpkg.tar 11878400 BLAKE2B 200c9e8ad15eff269c26edb0db30fb642502f969a35290e86d1aa1814a1b331dbf2b5cbb7848164b2383f2e7b1bd03ed69f44c010c8240bc34d9ca44d638c5a0 SHA512 7e41264432aab6f70e552931e27be8ee0126b9eb530a8d7b5f7cac32f1e5778965481f92c92cb1ab485a6d3f0196300741d591e20ce2f0c53af08e6f25224236 +DIST pypy3_9-exe-7.3.14-1.amd64.gpkg.tar 11857920 BLAKE2B e65451a17c7c253ccf6865e0c1e4767cc382322f0d3d6d476e847db0f0535eb82db5ff1716f1e5114fb73fee9f9fa2ac8b3251cd53ba3a271e0a6a9170b38a85 SHA512 2e0c1fbff05f8b3f24b442f53cbe2c937d108176b86195483b2de718b48c198a3efd2916d1206bbf2b8579b93657a954b688445918ff306dcde1d0157dd3f84f +DIST pypy3_9-exe-7.3.14-1.arm64-musl.gpkg.tar 10024960 BLAKE2B 68191a2c591d88dda53064572e85a4df07fd72c4219a89e73bcb03b87cee307aa385f4d8d366edf6ae7338b2f494d73c06e2b7f74f9251787d3fba9b92ba98bc SHA512 90870861fc0e9d70ab750b2ef259c056019173b475b514edf563231e05488cd3fd47d61ccd2d7742482b2c463fcb5280daf1f48089f16ef99eb43f9b24e69cc8 +DIST pypy3_9-exe-7.3.14-1.arm64.gpkg.tar 10024960 BLAKE2B 7e386315979ce7f4da6883906c3c754ad021df0ca7e5a9b57d81dc2bb1c09158d81b9960320bbdab47433d5b45d84f8024dc575a6f215c5e502bda3828797b60 SHA512 5311e5d8a6196398bc891b24d2b2ac0efe8ff64d254d27d04fae7e1d20418d77a19408a4276830b90951c1baf5f331bf4632476ac1e3845cbc8e4d47d0e578e5 +DIST pypy3_9-exe-7.3.14-1.ppc64le-musl.gpkg.tar 6584320 BLAKE2B 7fdcf4a6ed39a0c25be6dac0c3b5880e7aa7f5ea179b8790ac9d520b69fc1165554094d783d9d9327a3b3305b839c5ff3d94bcae04139606d6f10290f263c5c2 SHA512 299b851b509ef0905313761f82d89034cfe3cae5defeeb938635cb6a5d456ff9f3254b3875177d3720622168fdd0e8d635c62ddb6179d1ff2652ea333e1e730a +DIST pypy3_9-exe-7.3.14-1.ppc64le.gpkg.tar 10260480 BLAKE2B 94ec718a5c37dbf6b15e91346147918284e9778b8f5240dc0169fe13cd2356fbea87ae0c24a718f86e04929cc63a8e8e0b5291da4c257338c7f4f419448848ef SHA512 809f76e514ef3a050be570b81e56a872573a7125c55581104057505a13d11580d2f0f71a3e59c6fd22b2dcd3fb3cd1e2ae046ff4dcb9bf2c791675e112ff6526 +DIST pypy3_9-exe-7.3.14-1.x86-musl.gpkg.tar 8888320 BLAKE2B 6aa189e8a5e80bbed01216808d2b7b543831a19e0039f7e8ed037881ea6a5a22ecc3acb1179a7892a4896dd2ef783ce169689a8f6c45bbaef662528cc2b74264 SHA512 4b68eae8185ece64a59b0ba952779f8fa31594f874dbccf125a9243ff656b86e0381d4ac39f70f2456edf58a2715277e0ee29840126437643587c4dfcf065904 +DIST pypy3_9-exe-7.3.14-1.x86.gpkg.tar 8919040 BLAKE2B 3896f0db4893fb54bc085f79a861cafc2395a3160efe8efe344530052e5c9e4547121e6e3263e4e1ad36ea7aa45de62b454bd89a5ddefd999d088be612b9d97a SHA512 1dd32f1e05817f18ca76a3c5ad38b100ac8601a2df20307fbec1336b0139a7e2a701759a833b5991875458a117a772bb94b7aba80f7a2712ff380a2e3d9be62e diff --git a/dev-python/pypy3_9-exe-bin/pypy3_9-exe-bin-7.3.14.ebuild b/dev-python/pypy3_9-exe-bin/pypy3_9-exe-bin-7.3.14.ebuild new file mode 100644 index 000000000000..d714e8dea6e4 --- /dev/null +++ b/dev-python/pypy3_9-exe-bin/pypy3_9-exe-bin-7.3.14.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pax-utils unpacker + +PYVER=3.9 +MY_P=pypy3_9-exe-${PV}-1 + +DESCRIPTION="PyPy3.9 executable (pre-built version)" +HOMEPAGE="https://www.pypy.org/" +SRC_URI=" + elibc_glibc? ( + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.amd64.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.arm64.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.ppc64le.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.x86.gpkg.tar + ) + ) + elibc_musl? ( + amd64? ( + https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.amd64-musl.gpkg.tar + ) + arm64? ( + https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.arm64-musl.gpkg.tar + ) + ppc64? ( + https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.ppc64le-musl.gpkg.tar + ) + x86? ( + https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy3_9-exe/${MY_P}.gpkg.tar + -> ${MY_P}.x86-musl.gpkg.tar + ) + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="${PV%_p*}" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +# sys-devel/gcc for libgcc_s.so +RDEPEND=" + app-arch/bzip2:0/1 + dev-libs/expat:0/0 + dev-libs/libffi:0/8 + sys-libs/ncurses:0/6 + >=sys-libs/zlib-1.1.3:0/1 + virtual/libintl:0/0 + elibc_glibc? ( + sys-devel/gcc + >=sys-libs/glibc-2.35 + ) + !dev-python/pypy3_9-exe:${SLOT} +" + +PYPY_PV=${PV%_p*} +QA_PREBUILT=" + usr/bin/pypy${PYVER}-c-${PYPY_PV} +" + +src_install() { + insinto / + doins -r image/usr + fperms +x "/usr/bin/pypy${PYVER}-c-${PYPY_PV}" + pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" +} diff --git a/dev-python/pypy3_9-exe/Manifest b/dev-python/pypy3_9-exe/Manifest index ef3b3502ebdf..398f5084298e 100644 --- a/dev-python/pypy3_9-exe/Manifest +++ b/dev-python/pypy3_9-exe/Manifest @@ -1,2 +1,4 @@ DIST pypy3.9-gentoo-patches-7.3.13.tar.xz 7476 BLAKE2B 70f80c489686e92e933a200d2e92a095a80e2300814ec4e1f3cb31ec5f5500a45667f7bfe9570ea5eef3933fdda33a9930bdf2cf683c28e3ddb610bebeeca6dd SHA512 5170f5141beb93b3b37cc94f85324c88182967eaff2f8ca26b81d63d5b0d20414a139ca44c250c07b46c747e27c97fd0fe5a2365f6636aba2dd28df3bc55cdca +DIST pypy3.9-gentoo-patches-7.3.14.tar.xz 5808 BLAKE2B 92ab7e9129838ff22cc13a64fe1ffe9ffd3af45ec777bde531ce2e15b87681e17fca2f1dc037ee4798bca5a9312ca4c961ec97b0a53bf5e6dc36fd12241151c9 SHA512 dffd17558d5ec2625682e5476ea53a9fe273f553b94d2589628e23ac3b45c50b5bf3ba9c7d92935e477374d9220af6ed310abae1270175f091a8c5a267a4bacd DIST pypy3.9-v7.3.13-src.tar.bz2 23452374 BLAKE2B b5ce8dd78e4851b5c7fa6aa0c6f2f5c198a3b2d1e4691ccb20d1b229397d60ac41eaecef37f7c76e4de837876bdd6c1e4276302afc292080e0a38f1a58869580 SHA512 04b184050625f06d2acaa836a786db788c4f658f3384ebde176d0acc95044ee83dbf7193ebab1e4fd6275bed7a590d3945482294be32d8f94e8c541e053dce59 +DIST pypy3.9-v7.3.14-src.tar.bz2 24683302 BLAKE2B 318fe17b423ce9c5b374cbceacf480ddbad7862bd6507d74289bbc0bd8ba8cf350ad21297b1e2dab7dfe6e7f542d929259be8d57867420b8a9a59284532aa9e2 SHA512 77db85092ca8ce419e30b274ec001566bbd275d88e74e5a3a3d0d557b18beb5a1e98428487f338e46f64893e54bf426464d372056c37a87a2b42b36c7d0fb536 diff --git a/dev-python/pypy3_9-exe/pypy3_9-exe-7.3.14.ebuild b/dev-python/pypy3_9-exe/pypy3_9-exe-7.3.14.ebuild new file mode 100644 index 000000000000..a6d7ba06e1b1 --- /dev/null +++ b/dev-python/pypy3_9-exe/pypy3_9-exe-7.3.14.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs pax-utils toolchain-funcs + +PYPY_PV=${PV%_p*} +PYVER=3.9 +MY_P="pypy${PYVER}-v${PYPY_PV/_}" +PATCHSET="pypy${PYVER}-gentoo-patches-${PV/_}" + +DESCRIPTION="PyPy3.9 executable (build from source)" +HOMEPAGE="https://www.pypy.org/" +SRC_URI=" + https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2 + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz +" +S="${WORKDIR}/${MY_P}-src" + +LICENSE="MIT" +SLOT="${PYPY_PV}" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+jit low-memory ncurses cpu_flags_x86_sse2" + +RDEPEND=" + app-arch/bzip2:0= + dev-libs/expat:0= + dev-libs/libffi:0= + >=sys-libs/zlib-1.1.3:0= + virtual/libintl:0= + ncurses? ( sys-libs/ncurses:0= ) + !dev-python/pypy3-exe-bin:${SLOT} +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + dev-python/pypy + virtual/pkgconfig +" + +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() { + [[ ${MERGE_TYPE} != binary ]] && check_env +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + default +} + +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 + --withmod-bz2 + $(usex ncurses --with{,out}mod-_minimal_curses) + ) + + local interp=( pypy ) + if use low-memory; then + local -x PYPY_GC_MAX_DELTA=200MB + interp+=( --jit loop_longevity=300 ) + fi + + # translate into the C sources + # we're going to build 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() { + cd "${T}"/usession*-0 || die + newbin "testing_1/pypy${PYVER}-c" "pypy${PYVER}-c-${PYPY_PV}" + insinto "/usr/include/pypy${PYVER}/${PYPY_PV}" + doins *.h + pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" +} diff --git a/dev-python/pypy3_9/Manifest b/dev-python/pypy3_9/Manifest index ef3b3502ebdf..398f5084298e 100644 --- a/dev-python/pypy3_9/Manifest +++ b/dev-python/pypy3_9/Manifest @@ -1,2 +1,4 @@ DIST pypy3.9-gentoo-patches-7.3.13.tar.xz 7476 BLAKE2B 70f80c489686e92e933a200d2e92a095a80e2300814ec4e1f3cb31ec5f5500a45667f7bfe9570ea5eef3933fdda33a9930bdf2cf683c28e3ddb610bebeeca6dd SHA512 5170f5141beb93b3b37cc94f85324c88182967eaff2f8ca26b81d63d5b0d20414a139ca44c250c07b46c747e27c97fd0fe5a2365f6636aba2dd28df3bc55cdca +DIST pypy3.9-gentoo-patches-7.3.14.tar.xz 5808 BLAKE2B 92ab7e9129838ff22cc13a64fe1ffe9ffd3af45ec777bde531ce2e15b87681e17fca2f1dc037ee4798bca5a9312ca4c961ec97b0a53bf5e6dc36fd12241151c9 SHA512 dffd17558d5ec2625682e5476ea53a9fe273f553b94d2589628e23ac3b45c50b5bf3ba9c7d92935e477374d9220af6ed310abae1270175f091a8c5a267a4bacd DIST pypy3.9-v7.3.13-src.tar.bz2 23452374 BLAKE2B b5ce8dd78e4851b5c7fa6aa0c6f2f5c198a3b2d1e4691ccb20d1b229397d60ac41eaecef37f7c76e4de837876bdd6c1e4276302afc292080e0a38f1a58869580 SHA512 04b184050625f06d2acaa836a786db788c4f658f3384ebde176d0acc95044ee83dbf7193ebab1e4fd6275bed7a590d3945482294be32d8f94e8c541e053dce59 +DIST pypy3.9-v7.3.14-src.tar.bz2 24683302 BLAKE2B 318fe17b423ce9c5b374cbceacf480ddbad7862bd6507d74289bbc0bd8ba8cf350ad21297b1e2dab7dfe6e7f542d929259be8d57867420b8a9a59284532aa9e2 SHA512 77db85092ca8ce419e30b274ec001566bbd275d88e74e5a3a3d0d557b18beb5a1e98428487f338e46f64893e54bf426464d372056c37a87a2b42b36c7d0fb536 diff --git a/dev-python/pypy3_9/pypy3_9-7.3.14.ebuild b/dev-python/pypy3_9/pypy3_9-7.3.14.ebuild new file mode 100644 index 000000000000..6a263ec2fbb4 --- /dev/null +++ b/dev-python/pypy3_9/pypy3_9-7.3.14.ebuild @@ -0,0 +1,211 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multiprocessing pax-utils toolchain-funcs + +PYPY_PV=${PV%_p*} +PYVER=3.9 +MY_P="pypy${PYVER}-v${PYPY_PV/_}" +PATCHSET="pypy${PYVER}-gentoo-patches-${PV/_rc/rc}" + +DESCRIPTION="A fast, compliant alternative implementation of the Python (${PYVER}) language" +HOMEPAGE=" + https://www.pypy.org/ + https://foss.heptapod.net/pypy/pypy/ +" +SRC_URI=" + https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2 + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz +" +S="${WORKDIR}/${MY_P}-src" + +LICENSE="MIT" +# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' +# also check pypy/interpreter/pycode.py -> pypy_incremental_magic +SLOT="0/pypy39-pp73-336" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+ensurepip gdbm +jit ncurses sqlite tk" +# many tests are failing upstream +# see https://buildbot.pypy.org/summary?branch=py${PYVER} +RESTRICT="test" + +RDEPEND=" + || ( + >=dev-python/${PN}-exe-${PYPY_PV}:${PYPY_PV}[bzip2(+),ncurses?] + >=dev-python/${PN}-exe-bin-${PYPY_PV}:${PYPY_PV} + ) + dev-lang/python-exec[python_targets_pypy3(-)] + dev-libs/openssl:0= + dev-python/gentoo-common + ensurepip? ( dev-python/ensurepip-wheels ) + gdbm? ( sys-libs/gdbm:0= ) + sqlite? ( dev-db/sqlite:3= ) + tk? ( + dev-lang/tk:0= + dev-tcltk/tix:0= + ) + !<dev-python/pypy3-7.3.12_rc +" +DEPEND=" + ${RDEPEND} +" + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + default +} + +src_configure() { + tc-export CC +} + +src_compile() { + mkdir bin || die + # switch to the layout expected for cffi module builds + mkdir include/pypy${PYVER} || die + # copy over to make sys.prefix happy + cp -p "${BROOT}"/usr/bin/pypy${PYVER}-c-${PYPY_PV} pypy${PYVER}-c || die + cp -p "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/* include/pypy${PYVER}/ || die + # (not installed by pypy-exe) + rm pypy/module/cpyext/include/_numpypy/numpy/README || die + mv pypy/module/cpyext/include/* include/pypy${PYVER}/ || die + mv pypy/module/cpyext/parse/*.h include/pypy${PYVER}/ || die + pax-mark m pypy${PYVER}-c + + # verify the subslot + local soabi=$( + ./pypy${PYVER}-c - <<-EOF + import importlib.util + import sysconfig + soabi = sysconfig.get_config_var("SOABI") + magic = importlib.util._RAW_MAGIC_NUMBER & 0xffff + print(f"{soabi}-{magic}") + EOF + ) + [[ ${soabi} == ${SLOT#*/} ]] || die "update subslot to ${soabi}" + + # Add epython.py to the distribution + echo 'EPYTHON="pypy3"' > lib-python/3/epython.py || die + + einfo "Generating caches and CFFI modules ..." + + # Generate sysconfig data + local host_gnu_type=$(sh pypy/tool/release/config.guess) + local overrides=( + HOST_GNU_TYPE "${host_gnu_type:-unknown}" + INCLUDEPY "${EPREFIX}/usr/include/pypy${PYVER}" + LIBDIR "${EPREFIX}/usr/$(get_libdir)" + TZPATH "${EPREFIX}/usr/share/zoneinfo" + WHEEL_PKG_DIR "${EPREFIX}/usr/lib/python/ensurepip" + ) + ./pypy${PYVER}-c -m sysconfig --generate-posix-vars "${overrides[@]}" || die + local outdir + outdir=$(<pybuilddir.txt) || die + cp "${outdir}"/_sysconfigdata__*.py lib-python/3/ || die + + # Generate Grammar and PatternGrammar pickles. + ./pypy${PYVER}-c - <<-EOF || die "Generation of Grammar and PatternGrammar pickles failed" + import lib2to3.pygram + import lib2to3.patcomp + lib2to3.patcomp.PatternCompiler() + EOF + + # Generate cffi modules + # Please keep in sync with lib_pypy/pypy_tools/build_cffi_imports.py! + # (NB: we build CFFI modules first to avoid error log when importing + # build_cffi_imports). + cffi_targets=( + pypy_util blake2/_blake2 sha3/_sha3 ssl + audioop syslog pwdgrp resource lzma posixshmem + ctypes_test testmultiphase + ) + 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${PYVER}-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" + done + # testcapi does not have a "build" script + ../pypy${PYVER}-c -c "import _testcapi" || die + + # Verify that CFFI module list is up-to-date + local expected_cksum=a4138e48 + local local_cksum=$( + ../pypy${PYVER}-c - <<-EOF + import binascii + import json + from pypy_tools.build_cffi_imports import cffi_build_scripts as x + print("%08x" % (binascii.crc32(json.dumps(x).encode()),)) + EOF + ) + if [[ ${local_cksum} != ${expected_cksum} ]]; then + die "Please verify cffi_targets and update checksum to ${local_cksum}" + fi + + # Cleanup temporary objects + find \( -name "*_cffi.c" -o -name '*.o' \) -delete || die + find -type d -empty -delete || die +} + +src_install() { + einfo "Installing PyPy ..." + dodir /usr/bin + dosym pypy${PYVER}-c-${PYPY_PV} /usr/bin/pypy${PYVER} + insinto /usr/lib/pypy${PYVER} + # preserve mtimes to avoid obsoleting caches + insopts -p + doins -r lib-python/3/. lib_pypy/. + insinto /usr/include + doins -r include/pypy${PYVER} + + # replace copied headers with symlinks + for x in "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/*; do + dosym "${PYPY_PV}/${x##*/}" "/usr/include/pypy${PYVER}/${x##*/}" + done + + dodoc README.rst + + local dest=/usr/lib/pypy${PYVER} + rm -r "${ED}${dest}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${ED}${dest}"/ensurepip || die + fi + if ! use gdbm; then + rm -r "${ED}${dest}"/_gdbm* || die + fi + if ! use sqlite; then + rm -r "${ED}${dest}"/sqlite3 \ + "${ED}${dest}"/_sqlite3* \ + "${ED}${dest}"/test/test_sqlite.py || die + fi + if ! use tk; then + rm -r "${ED}${dest}"/{idlelib,tkinter} \ + "${ED}${dest}"/_tkinter \ + "${ED}${dest}"/test/test_{tcl,tk,ttk*}.py || die + fi + dosym ../python/EXTERNALLY-MANAGED "${dest}/EXTERNALLY-MANAGED" + + local -x PYTHON=${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" "${PYTHON}" || die + + einfo "Byte-compiling Python standard library..." + # exclude list from CPython Makefile.pre.in + "${PYTHON}" -m compileall -j "$(makeopts_jobs)" -o 0 -o 1 -o 2 \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + --hardlink-dupes -q -f -d "${dest}" "${ED}${dest}" || die + + # remove to avoid collisions + rm "${PYTHON}" || die +} diff --git a/dev-python/python-sense-hat/Manifest b/dev-python/python-sense-hat/Manifest deleted file mode 100644 index d1e5bc696c3f..000000000000 --- a/dev-python/python-sense-hat/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST python-sense-hat-2.4.0.gh.tar.gz 27396 BLAKE2B 7f7482e17f80a3598c92f53f7a5b99ce4f5da10a5fc9ba6de656b6e18db323f8133f720d1486c3ecbe9badfdfe597c5365d2ba17ff637933d3053ec52f36dcfa SHA512 b2ce6c231b814d415dcf72b1031b29fd2309ccf194b8996401b1d3d7ff356ad4ed83a9ecff7c182410f789c3f1f47c3a6d64dd53884abf952f928734b94e54a5 diff --git a/dev-python/sense-hat/Manifest b/dev-python/sense-hat/Manifest new file mode 100644 index 000000000000..b6adbde75568 --- /dev/null +++ b/dev-python/sense-hat/Manifest @@ -0,0 +1,2 @@ +DIST sense-hat-2.4.0.gh.tar.gz 27396 BLAKE2B 7f7482e17f80a3598c92f53f7a5b99ce4f5da10a5fc9ba6de656b6e18db323f8133f720d1486c3ecbe9badfdfe597c5365d2ba17ff637933d3053ec52f36dcfa SHA512 b2ce6c231b814d415dcf72b1031b29fd2309ccf194b8996401b1d3d7ff356ad4ed83a9ecff7c182410f789c3f1f47c3a6d64dd53884abf952f928734b94e54a5 +DIST sense-hat-2.6.0.gh.tar.gz 26598 BLAKE2B eabb9cae494584bb05d4d6e7111284925c2be8c8abcfe0f346f148ab2e29bae4ee3adf46aa1c83ad098760f7adf57635fa7b392effa5ffab065562c0f8a60e17 SHA512 23a10b7af223bf373ecef987c40da6ec7b7e802169b8abb0a810dce369d969276c290aef9b9e6e70ee3824ce6d238dcc2654e06d87d0e05b056d11f64ac9209a diff --git a/dev-python/python-sense-hat/metadata.xml b/dev-python/sense-hat/metadata.xml index 56888db15d3c..56888db15d3c 100644 --- a/dev-python/python-sense-hat/metadata.xml +++ b/dev-python/sense-hat/metadata.xml diff --git a/dev-python/python-sense-hat/python-sense-hat-2.4.0.ebuild b/dev-python/sense-hat/sense-hat-2.4.0.ebuild index 3f00db9a6d16..bb0ea189a61b 100644 --- a/dev-python/python-sense-hat/python-sense-hat-2.4.0.ebuild +++ b/dev-python/sense-hat/sense-hat-2.4.0.ebuild @@ -4,13 +4,15 @@ EAPI=8 DISTUTILS_USE_PEP517=setuptools +MY_PN="python-${PN}" PYTHON_COMPAT=( python3_{8,9,10,11,12} ) inherit distutils-r1 DESCRIPTION="Raspberry Pi Sense HAT python library" HOMEPAGE="https://github.com/astro-pi/python-sense-hat" -SRC_URI="https://github.com/astro-pi/python-sense-hat/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz" +SRC_URI="https://github.com/astro-pi/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}/${MY_PN}-${PV}" LICENSE="BSD" SLOT="0" diff --git a/dev-python/sense-hat/sense-hat-2.6.0.ebuild b/dev-python/sense-hat/sense-hat-2.6.0.ebuild new file mode 100644 index 000000000000..7b0b91f11847 --- /dev/null +++ b/dev-python/sense-hat/sense-hat-2.6.0.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +MY_PN="python-${PN}" +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 + +DESCRIPTION="Raspberry Pi Sense HAT python library" +HOMEPAGE="https://github.com/astro-pi/python-sense-hat" +SRC_URI="https://github.com/astro-pi/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}/${MY_PN}-${PV}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~arm ~arm64" + +RDEPEND=" + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/rtimulib[${PYTHON_USEDEP}] +" + +DEPEND="${RDEPEND}" |
