Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/pypy3-exe/
Date: Fri, 30 Dec 2022 14:33:04
Message-Id: 1672410774.b3e85530e81b9a8249815355f1e53b39e0c6eab1.mgorny@gentoo
1 commit: b3e85530e81b9a8249815355f1e53b39e0c6eab1
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Fri Dec 30 11:17:39 2022 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Fri Dec 30 14:32:54 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3e85530
7
8 dev-python/pypy3-exe: Bump to 7.3.11
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 dev-python/pypy3-exe/Manifest | 2 +
13 dev-python/pypy3-exe/pypy3-exe-7.3.11.ebuild | 126 +++++++++++++++++++++++++++
14 2 files changed, 128 insertions(+)
15
16 diff --git a/dev-python/pypy3-exe/Manifest b/dev-python/pypy3-exe/Manifest
17 index 4c1972bf2684..c04d96f5f6e5 100644
18 --- a/dev-python/pypy3-exe/Manifest
19 +++ b/dev-python/pypy3-exe/Manifest
20 @@ -1,2 +1,4 @@
21 DIST pypy3.9-gentoo-patches-7.3.10.tar.xz 10012 BLAKE2B 45186cf6e8608995af6c0d763a2d676d862ba886acb3a0e0f0056309123d0db75240a175ecf90e24889a139f228dffc788872a5ca84736f4ce0901eda0acb789 SHA512 e6c39666f34bb7e2db72f153fad2d89421b30c04de88812637027a7e8a73bccc7620a7296b2b205464ad7fd0c911bc7a7f0dc0fc504dc8d163f7087b8b0c61b3
22 +DIST pypy3.9-gentoo-patches-7.3.11.tar.xz 6444 BLAKE2B adcc1ae4c3ae2c5317a05d6de51785945625d8bcc7cb35bd6608fa80f09b37c483c95663eacb0353013a5abec308d25b12666699c65512f5f3a6d7345f2b5b18 SHA512 f2064ecffa09ba23f5f8c281ca4c8c0740cb6b57185d66c02eec2bcb77cfb566b1a2db4f52c472bcaf0d5fb759ee8003b27761af37785d12465c2010fd73c49d
23 DIST pypy3.9-v7.3.10-src.tar.bz2 23416039 BLAKE2B 1b13e8bbe6c38c4b9183a632063aeed593986bc7906cfe527fa7534d29f9b1ae0f1e6d3795ff73be19f5737c3fd9d1b3cc2777f30d9237d853e4266bea60a5bb SHA512 1ed3fc9cdda7f3144141fc6a37b124e7141cb3f294ce8b5ca3c3aa30a3c58715e168879decaa796c890a9a287c82c2dbabb81db5f6b8d17f4215d7d3261fe9a8
24 +DIST pypy3.9-v7.3.11-src.tar.bz2 23460769 BLAKE2B fa8a827c28813243926c8689addb008c0a43acdc3f81a18749a8f2c1926b6294f2c0c95a4c315e3b77ce84b4f337af7a0bce5daf8dcb60ead965532d4af183cb SHA512 33c978ffbeeb39453028d1d1646ccfdace062ce48a5d939245bea41643038dd3687e80e34f88fa0622bcb175d7dd78f75cbe36b24229c8052f09d2d17dcdfd8c
25
26 diff --git a/dev-python/pypy3-exe/pypy3-exe-7.3.11.ebuild b/dev-python/pypy3-exe/pypy3-exe-7.3.11.ebuild
27 new file mode 100644
28 index 000000000000..b6be3f4fae2a
29 --- /dev/null
30 +++ b/dev-python/pypy3-exe/pypy3-exe-7.3.11.ebuild
31 @@ -0,0 +1,126 @@
32 +# Copyright 1999-2022 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=8
36 +
37 +inherit check-reqs pax-utils toolchain-funcs
38 +
39 +PYPY_PV=${PV%_p*}
40 +MY_P=pypy3.9-v${PYPY_PV/_}
41 +PATCHSET="pypy3.9-gentoo-patches-${PV/_}"
42 +
43 +DESCRIPTION="PyPy3 executable (build from source)"
44 +HOMEPAGE="https://www.pypy.org/"
45 +SRC_URI="
46 + https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
47 + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
48 +"
49 +S="${WORKDIR}/${MY_P}-src"
50 +
51 +LICENSE="MIT"
52 +SLOT="3.9-${PYPY_PV}"
53 +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
54 +IUSE="+jit low-memory ncurses cpu_flags_x86_sse2"
55 +
56 +RDEPEND="
57 + app-arch/bzip2:0=
58 + dev-libs/expat:0=
59 + dev-libs/libffi:0=
60 + >=sys-libs/zlib-1.1.3:0=
61 + virtual/libintl:0=
62 + ncurses? ( sys-libs/ncurses:0= )
63 + !dev-python/pypy3-exe-bin:${SLOT}
64 +"
65 +DEPEND="
66 + ${RDEPEND}
67 +"
68 +BDEPEND="
69 + dev-python/pypy
70 +"
71 +
72 +check_env() {
73 + if use low-memory; then
74 + CHECKREQS_MEMORY="1750M"
75 + use amd64 && CHECKREQS_MEMORY="3500M"
76 + else
77 + CHECKREQS_MEMORY="3G"
78 + use amd64 && CHECKREQS_MEMORY="6G"
79 + fi
80 +
81 + check-reqs_pkg_pretend
82 +}
83 +
84 +pkg_pretend() {
85 + [[ ${MERGE_TYPE} != binary ]] && check_env
86 +}
87 +
88 +pkg_setup() {
89 + [[ ${MERGE_TYPE} != binary ]] && check_env
90 +}
91 +
92 +src_prepare() {
93 + local PATCHES=(
94 + "${WORKDIR}/${PATCHSET}"
95 + )
96 + default
97 +}
98 +
99 +src_configure() {
100 + tc-export CC
101 +
102 + local jit_backend
103 + if use jit; then
104 + jit_backend='--jit-backend='
105 +
106 + # We only need the explicit sse2 switch for x86.
107 + # On other arches we can rely on autodetection which uses
108 + # compiler macros. Plus, --jit-backend= doesn't accept all
109 + # the modern values...
110 +
111 + if use x86; then
112 + if use cpu_flags_x86_sse2; then
113 + jit_backend+=x86
114 + else
115 + jit_backend+=x86-without-sse2
116 + fi
117 + else
118 + jit_backend+=auto
119 + fi
120 + fi
121 +
122 + local args=(
123 + --no-shared
124 + $(usex jit -Ojit -O2)
125 +
126 + ${jit_backend}
127 +
128 + pypy/goal/targetpypystandalone
129 + --withmod-bz2
130 + $(usex ncurses --with{,out}mod-_minimal_curses)
131 + )
132 +
133 + local interp=( pypy )
134 + if use low-memory; then
135 + local -x PYPY_GC_MAX_DELTA=200MB
136 + interp+=( --jit loop_longevity=300 )
137 + fi
138 +
139 + # translate into the C sources
140 + # we're going to build them ourselves since otherwise pypy does not
141 + # free up the unneeded memory before spawning the compiler
142 + set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}"
143 + echo -e "\033[1m${@}\033[0m"
144 + "${@}" || die "translation failed"
145 +}
146 +
147 +src_compile() {
148 + emake -C "${T}"/usession*-0/testing_1
149 +}
150 +
151 +src_install() {
152 + cd "${T}"/usession*-0 || die
153 + newbin testing_1/pypy3.9-c pypy3.9-c-${PYPY_PV}
154 + insinto /usr/include/pypy3.9/${PYPY_PV}
155 + doins *.h
156 + pax-mark m "${ED}/usr/bin/pypy3.9-c-${PYPY_PV}"
157 +}