Gentoo Archives: gentoo-commits

From: Quentin Retornaz <gentoo@××××××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/libressl:master commit in: dev-lang/python/
Date: Thu, 28 Apr 2022 23:41:04
Message-Id: 1651189179.b78960e0cbe3c74cbc310e1d64bcc1162212c845.quentin@gentoo
1 commit: b78960e0cbe3c74cbc310e1d64bcc1162212c845
2 Author: orbea <orbea <AT> riseup <DOT> net>
3 AuthorDate: Wed Apr 27 16:33:48 2022 +0000
4 Commit: Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
5 CommitDate: Thu Apr 28 23:39:39 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=b78960e0
7
8 dev-lang/python: Remove old version.
9
10 Signed-off-by: orbea <orbea <AT> riseup.net>
11 Closes: https://github.com/gentoo/libressl/pull/394
12 Signed-off-by: Quentin Retornaz <gentoo <AT> retornaz.com>
13
14 dev-lang/python/Manifest | 3 -
15 dev-lang/python/python-3.9.9-r1.ebuild | 378 ---------------------------------
16 2 files changed, 381 deletions(-)
17
18 diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
19 index 99c95f6..47530ac 100644
20 --- a/dev-lang/python/Manifest
21 +++ b/dev-lang/python/Manifest
22 @@ -1,6 +1,3 @@
23 DIST Python-3.9.11.tar.xz 19724780 BLAKE2B 25b017e36b22235790633eb1a88f52092225252f39963fc365c1ea863f5b5d98a796bceb01e5e34c02d9690f2a664959766b214b8c13350d6e22839218d0c097 SHA512 804e6e6b31922378f07f290023f6efc870c6fd3010204c499c2b375880f6e6ec0f72ce96a8fff81956f6fa3bea2123df2138ef0fda23a3d5d3cf757174a930c3
24 DIST Python-3.9.11.tar.xz.asc 833 BLAKE2B c60c291f3dad39c842d16717239006f3ee703eaa586d95ea02ba4486d20a1e82065bbaf7af6f7cf6a04799229359791a72834096b6ce5f5d2b583ba5962d441b SHA512 a84bbfa68ec1c0e45bbd64af4481be7d68885021287731c69346a3cb25c9bf607be84dd72af2d3a6fbeabbde64975f37c4bb4f61274e72b92b4277fa48543e52
25 -DIST Python-3.9.9.tar.xz 19144372 BLAKE2B 3a144ca5e4b11b2fd09d05a4a40ddf3f622c077338602c519b21ea827c96e0f14ab97563c0a9d306ae4a5c3f44753573a07474dc084fb364d24b2128bb378ddd SHA512 0ab29fb9a7ecb808bd08d84d28908d5a934e0f021853da0f7a9c94670eb30c8dbbc233d461afdb3995b0de59275ef7e1de43e82d7f848802cbd6e6e50b7b25a6
26 -DIST Python-3.9.9.tar.xz.asc 833 BLAKE2B 41d05ee1ec256f0cab4e9d3540877783745f0f30e3f1177d01096b352341a90893c5c9523926bed8176bd304cbb1fd6619be3b4e375103874eac5e5ebc113135 SHA512 84fb739c60216ab9a7a487a0ec4039a7e85c7684ef1f71d8b3bc415ff2ae284f79474103ae05385502bc2510401f8cfb33d84dccf5d0ea9a0dd62528519d935f
27 DIST python-gentoo-patches-3.9.11.tar.xz 12844 BLAKE2B de7ffa39e96127949d2b894fe15c8c1345180842791743af14a3728a7c950e877ab7c74f3e72da5518b16ecb2f3ff13e6132740bb067fe43a8359c673befbaf5 SHA512 0507792188587e66d63a70dde17c6aea1c9aab9e40ace3aeb585adbd2c62acf828782312ba7523f7a4ea49ab1125a30c7b091d10fe02874b018f2733fb8e141d
28 -DIST python-gentoo-patches-3.9.9.tar.xz 13200 BLAKE2B 672e3b79094cbc791988639a5dde4c9e5622e91bef4310d26838716c65763ca69a12c6afef2f19487f4389974af009896e452c19783b0a491072d13f893af7e9 SHA512 3cd4ddd070ab48d9978e1136d237fc24030fd3ce6704371ce99815702a45d839ee26c7e9552b004661827759edd30222434e4166f9ee16f873ad4783c83f723f
29
30 diff --git a/dev-lang/python/python-3.9.9-r1.ebuild b/dev-lang/python/python-3.9.9-r1.ebuild
31 deleted file mode 100644
32 index dd18752..0000000
33 --- a/dev-lang/python/python-3.9.9-r1.ebuild
34 +++ /dev/null
35 @@ -1,378 +0,0 @@
36 -# Copyright 1999-2022 Gentoo Authors
37 -# Distributed under the terms of the GNU General Public License v2
38 -
39 -EAPI="7"
40 -WANT_LIBTOOL="none"
41 -
42 -inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
43 - python-utils-r1 toolchain-funcs verify-sig
44 -
45 -MY_PV=${PV/_rc/rc}
46 -MY_P="Python-${MY_PV%_p*}"
47 -PYVER=$(ver_cut 1-2)
48 -PATCHSET="python-gentoo-patches-${MY_PV}"
49 -
50 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
51 -HOMEPAGE="https://www.python.org/"
52 -SRC_URI="https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
53 - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
54 - verify-sig? (
55 - https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz.asc
56 - )"
57 -S="${WORKDIR}/${MY_P}"
58 -
59 -LICENSE="PSF-2"
60 -SLOT="${PYVER}"
61 -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
62 -IUSE="bluetooth build examples gdbm hardened lto +ncurses pgo +readline +sqlite +ssl test tk wininst +xml"
63 -RESTRICT="!test? ( test )"
64 -
65 -# Do not add a dependency on dev-lang/python to this ebuild.
66 -# If you need to apply a patch which requires python for bootstrapping, please
67 -# run the bootstrap code on your dev box and include the results in the
68 -# patchset. See bug 447752.
69 -
70 -RDEPEND="app-arch/bzip2:=
71 - app-arch/xz-utils:=
72 - dev-lang/python-exec[python_targets_python3_9(-)]
73 - dev-libs/libffi:=
74 - sys-apps/util-linux:=
75 - >=sys-libs/zlib-1.1.3:=
76 - virtual/libcrypt:=
77 - virtual/libintl
78 - gdbm? ( sys-libs/gdbm:=[berkdb] )
79 - ncurses? ( >=sys-libs/ncurses-5.2:= )
80 - readline? ( >=sys-libs/readline-4.1:= )
81 - sqlite? ( >=dev-db/sqlite-3.3.8:3= )
82 - ssl? ( >=dev-libs/openssl-1.1.1:= )
83 - tk? (
84 - >=dev-lang/tcl-8.0:=
85 - >=dev-lang/tk-8.0:=
86 - dev-tcltk/blt:=
87 - dev-tcltk/tix
88 - )
89 - xml? ( >=dev-libs/expat-2.1:= )"
90 -# bluetooth requires headers from bluez
91 -DEPEND="${RDEPEND}
92 - bluetooth? ( net-wireless/bluez )
93 - test? ( app-arch/xz-utils[extra-filters(+)] )"
94 -BDEPEND="
95 - virtual/awk
96 - virtual/pkgconfig
97 - sys-devel/autoconf-archive
98 - verify-sig? ( sec-keys/openpgp-keys-python )
99 - !sys-devel/gcc[libffi(-)]"
100 -RDEPEND+=" !build? ( app-misc/mime-types )"
101 -
102 -VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
103 -
104 -# large file tests involve a 2.5G file being copied (duplicated)
105 -CHECKREQS_DISK_BUILD=5500M
106 -
107 -pkg_pretend() {
108 - use test && check-reqs_pkg_pretend
109 -}
110 -
111 -pkg_setup() {
112 - use test && check-reqs_pkg_setup
113 -}
114 -
115 -src_unpack() {
116 - if use verify-sig; then
117 - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
118 - fi
119 - default
120 -}
121 -
122 -src_prepare() {
123 - # Ensure that internal copies of expat, libffi and zlib are not used.
124 - rm -fr Modules/expat || die
125 - rm -fr Modules/_ctypes/libffi* || die
126 - rm -fr Modules/zlib || die
127 -
128 - rm -f "${WORKDIR}/${PATCHSET}"/0013-bpo-43998-Default-to-TLS-1.2-and-increase-cipher-sui.patch || die
129 -
130 - local PATCHES=(
131 - "${WORKDIR}/${PATCHSET}"
132 - "${FILESDIR}"/${PN}-3.9.9-r1-libressl.patch
133 - )
134 -
135 - default
136 -
137 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
138 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
139 -
140 - # force correct number of jobs
141 - # https://bugs.gentoo.org/737660
142 - local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
143 - sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
144 - sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
145 -
146 - eautoreconf
147 -}
148 -
149 -src_configure() {
150 - local disable
151 - # disable automagic bluetooth headers detection
152 - use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
153 - use gdbm || disable+=" gdbm"
154 - use ncurses || disable+=" _curses _curses_panel"
155 - use readline || disable+=" readline"
156 - use sqlite || disable+=" _sqlite3"
157 - use ssl || export PYTHON_DISABLE_SSL="1"
158 - use tk || disable+=" _tkinter"
159 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
160 - export PYTHON_DISABLE_MODULES="${disable}"
161 -
162 - if ! use xml; then
163 - ewarn "You have configured Python without XML support."
164 - ewarn "This is NOT a recommended configuration as you"
165 - ewarn "may face problems parsing any XML documents."
166 - fi
167 -
168 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
169 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
170 - fi
171 -
172 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
173 - append-flags -fwrapv
174 - fi
175 -
176 - filter-flags -malign-double
177 -
178 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
179 - if is-flagq -O3; then
180 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
181 - use hardened && replace-flags -O3 -O2
182 - fi
183 -
184 - # https://bugs.gentoo.org/700012
185 - if is-flagq -flto || is-flagq '-flto=*'; then
186 - append-cflags $(test-flags-CC -ffat-lto-objects)
187 - fi
188 -
189 - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
190 - tc-export CXX
191 -
192 - # Fix implicit declarations on cross and prefix builds. Bug #674070.
193 - use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
194 -
195 - local dbmliborder
196 - if use gdbm; then
197 - dbmliborder+="${dbmliborder:+:}gdbm"
198 - fi
199 -
200 - if use pgo; then
201 - local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
202 - export PROFILE_TASK="-m test -j${jobs} --pgo-extended -x test_gdb -u-network"
203 -
204 - # All of these seem to occasionally hang for PGO inconsistently
205 - # They'll even hang here but be fine in src_test sometimes.
206 - # bug #828535 (and related: bug #788022)
207 - PROFILE_TASK+=" -x test_socket -x test_asyncio -x test_httpservers -x test_logging -x test_multiprocessing_fork -x test_xmlrpc"
208 -
209 - if has_version "app-arch/rpm" ; then
210 - # Avoid sandbox failure (attempts to write to /var/lib/rpm)
211 - PROFILE_TASK+=" -x test_distutils"
212 - fi
213 - fi
214 -
215 - local myeconfargs=(
216 - # glibc-2.30 removes it; since we can't cleanly force-rebuild
217 - # Python on glibc upgrade, remove it proactively to give
218 - # a chance for users rebuilding python before glibc
219 - ac_cv_header_stropts_h=no
220 -
221 - --enable-shared
222 - --enable-ipv6
223 - --infodir='${prefix}/share/info'
224 - --mandir='${prefix}/share/man'
225 - --with-computed-gotos
226 - --with-dbmliborder="${dbmliborder}"
227 - --with-libc=
228 - --enable-loadable-sqlite-extensions
229 - --without-ensurepip
230 - --with-system-expat
231 - --with-system-ffi
232 -
233 - $(use_with lto)
234 - $(use_enable pgo optimizations)
235 - )
236 -
237 - OPT="" econf "${myeconfargs[@]}"
238 -
239 - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
240 - eerror "configure has detected that the sem_open function is broken."
241 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
242 - die "Broken sem_open function (bug 496328)"
243 - fi
244 -}
245 -
246 -src_compile() {
247 - # Ensure sed works as expected
248 - # https://bugs.gentoo.org/594768
249 - local -x LC_ALL=C
250 - # Prevent using distutils bundled by setuptools.
251 - # https://bugs.gentoo.org/823728
252 - export SETUPTOOLS_USE_DISTUTILS=stdlib
253 -
254 - if use pgo ; then
255 - # bug 660358
256 - local -x COLUMNS=80
257 - local -x PYTHONDONTWRITEBYTECODE=
258 -
259 - addpredict /usr/lib/python3.9/site-packages
260 - fi
261 -
262 - emake CPPFLAGS= CFLAGS= LDFLAGS=
263 -
264 - # Work around bug 329499. See also bug 413751 and 457194.
265 - if has_version dev-libs/libffi[pax-kernel]; then
266 - pax-mark E python
267 - else
268 - pax-mark m python
269 - fi
270 -}
271 -
272 -src_test() {
273 - # Tests will not work when cross compiling.
274 - if tc-is-cross-compiler; then
275 - elog "Disabling tests due to crosscompiling."
276 - return
277 - fi
278 -
279 - # Skip failing tests.
280 - local skipped_tests="gdb"
281 -
282 - for test in ${skipped_tests}; do
283 - mv "${S}"/Lib/test/test_${test}.py "${T}"
284 - done
285 -
286 - # bug 660358
287 - local -x COLUMNS=80
288 - local -x PYTHONDONTWRITEBYTECODE=
289 -
290 - local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
291 -
292 - emake test EXTRATESTOPTS="-u-network -j${jobs}" \
293 - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
294 - local result=$?
295 -
296 - for test in ${skipped_tests}; do
297 - mv "${T}/test_${test}.py" "${S}"/Lib/test
298 - done
299 -
300 - elog "The following tests have been skipped:"
301 - for test in ${skipped_tests}; do
302 - elog "test_${test}.py"
303 - done
304 -
305 - elog "If you would like to run them, you may:"
306 - elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
307 - elog "and run the tests separately."
308 -
309 - if [[ ${result} -ne 0 ]]; then
310 - die "emake test failed"
311 - fi
312 -}
313 -
314 -src_install() {
315 - local libdir=${ED}/usr/lib/python${PYVER}
316 -
317 - emake DESTDIR="${D}" altinstall
318 -
319 - # Remove static library
320 - rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
321 -
322 - sed \
323 - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
324 - -e "s/\(PY_LDFLAGS=\).*/\1/" \
325 - -i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
326 -
327 - # Fix collisions between different slots of Python.
328 - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
329 -
330 - # Cheap hack to get version with ABIFLAGS
331 - local abiver=$(cd "${ED}/usr/include"; echo python*)
332 - if [[ ${abiver} != python${PYVER} ]]; then
333 - # Replace python3.X with a symlink to python3.Xm
334 - rm "${ED}/usr/bin/python${PYVER}" || die
335 - dosym "${abiver}" "/usr/bin/python${PYVER}"
336 - # Create python3.X-config symlink
337 - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
338 - # Create python-3.5m.pc symlink
339 - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
340 - fi
341 -
342 - # python seems to get rebuilt in src_install (bug 569908)
343 - # Work around it for now.
344 - if has_version dev-libs/libffi[pax-kernel]; then
345 - pax-mark E "${ED}/usr/bin/${abiver}"
346 - else
347 - pax-mark m "${ED}/usr/bin/${abiver}"
348 - fi
349 -
350 - use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
351 - use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
352 -
353 - dodoc Misc/{ACKS,HISTORY,NEWS}
354 -
355 - if use examples; then
356 - docinto examples
357 - find Tools -name __pycache__ -exec rm -fr {} + || die
358 - dodoc -r Tools
359 - fi
360 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
361 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
362 - emake --no-print-directory -s -f - 2>/dev/null)
363 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
364 -
365 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
366 - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
367 - sed \
368 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
369 - -e "s:@PYDOC@:pydoc${PYVER}:" \
370 - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
371 - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
372 -
373 - local -x EPYTHON=python${PYVER}
374 - # if not using a cross-compiler, use the fresh binary
375 - if ! tc-is-cross-compiler; then
376 - local -x PYTHON=./python
377 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
378 - else
379 - local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
380 - fi
381 -
382 - echo "EPYTHON='${EPYTHON}'" > epython.py || die
383 - python_domodule epython.py
384 -
385 - # python-exec wrapping support
386 - local pymajor=${PYVER%.*}
387 - local scriptdir=${D}$(python_get_scriptdir)
388 - mkdir -p "${scriptdir}" || die
389 - # python and pythonX
390 - ln -s "../../../bin/${abiver}" \
391 - "${scriptdir}/python${pymajor}" || die
392 - ln -s "python${pymajor}" "${scriptdir}/python" || die
393 - # python-config and pythonX-config
394 - # note: we need to create a wrapper rather than symlinking it due
395 - # to some random dirname(argv[0]) magic performed by python-config
396 - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
397 - #!/bin/sh
398 - exec "${abiver}-config" "\${@}"
399 - EOF
400 - chmod +x "${scriptdir}/python${pymajor}-config" || die
401 - ln -s "python${pymajor}-config" \
402 - "${scriptdir}/python-config" || die
403 - # 2to3, pydoc
404 - ln -s "../../../bin/2to3-${PYVER}" \
405 - "${scriptdir}/2to3" || die
406 - ln -s "../../../bin/pydoc${PYVER}" \
407 - "${scriptdir}/pydoc" || die
408 - # idle
409 - if use tk; then
410 - ln -s "../../../bin/idle${PYVER}" \
411 - "${scriptdir}/idle" || die
412 - fi
413 -}