mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-15 17:06:58 +02:00
Merge pull request #2374 from flatcar/dongsu/python-oem-3.9.16
dev-lang/python-oem: update to 3.9.16
This commit is contained in:
commit
cd9009eaa4
@ -0,0 +1 @@
|
|||||||
|
- python-oem ([3.9.16](https://www.python.org/downloads/release/python-3916/))
|
@ -1,3 +1,3 @@
|
|||||||
DIST Python-3.9.12.tar.xz 19740524 BLAKE2B 05f2469aa53ca36221ef4976b17bfde3e5b86afd5a8114e5a7fd899f975a8e55022555ef718d5352ab68de1b7b23865a0bf713768c9c2b30d591438c9a396d25 SHA512 081981901e14149748fd35228db0b3b1d96fef227ae7404f07b8bad0fda4b02649bf31c348c94aefdaf3327565d78f9489437c2c02f647b15d41376a27a23e97
|
DIST Python-3.9.16.tar.xz 19738796 BLAKE2B 70dedeb70d9d8f27e4f6db5106623e087c61d451c7a04639cf8d3503ad02d4d43f1b36d0cdf1131aefc9bf6e677e561227dd4baef2c2c3d2dbf6d3e7dc36bd94 SHA512 b5fd0afe131c82bbce6ddf887c59eef6945910d6a9a2bc87c0927f4e4a096bf9ca4d25bcb729c40f6ebb8a65fbe8bf7b0b97a7c4a8c9e551240eb4f34b878653
|
||||||
DIST Python-3.9.12.tar.xz.asc 833 BLAKE2B 33436d0404a643215a8fd2b967ffd216201da24f374941bf65b888159ccfabcbe79b751eca2dd489b06605604338c8bbaab74aa10abbe4bcffaa54236301228e SHA512 dddaa27f8a29034f458edb6739398a5455c87fe37b6349e161865a9deedca118ffe9cb82663cc75bbe60b3b556399c0c6855f5262aac1fe90d36a3694fca65b2
|
DIST Python-3.9.16.tar.xz.asc 833 BLAKE2B 416b4a4be06e101c5971c12a6f21229c425bcabaea58487e0d1b24d6dea318c58806ee43892fc704df8252670451bd6a4a2610c25672d3983ddb081fed34b92d SHA512 468959c36a3ec6136f57a39475fff4745a25be0cb5d3d58cf3e5faf0b9ce2d2a8b89f1f9fea1479c4c6ad12ac49e97c1cfd4291c978bb3d30df5a582ec315210
|
||||||
DIST python-gentoo-patches-3.9.12.tar.xz 12848 BLAKE2B 5dd66fa94b136a463d2c4be3a5b7dfad770c3905467a1d81af02a35b2783ce7d614881c915ee8f8e764c1656963d6886d9c60c6e524f512e1bc496e42d01307b SHA512 07de63e47a8e547724099062239df8fcfd254f19d38be28131e6bbb094ffbab8483861fb6a5905e60d7fa7a1a5dc06785951fa31984ecad89516b0b742c47f91
|
DIST python-gentoo-patches-3.9.16.tar.xz 23348 BLAKE2B 26b66e57530d167776d2aee60fd4620fc8e6c229f371616fdaa74aa2f03fd5a50b61653a5f34e0f2659901ba167af7c2aadbb0d2db773ab08bac8b3125c84b77 SHA512 8260369d96a6328ad8498359ecc56f48cb02015547065cdaec28a6bb2293bef420cb12764fae9fdd13f4a6faa60c4c402e804a22cbed7dca031ac1679032f9f6
|
||||||
|
@ -82,6 +82,3 @@ Modifications made:
|
|||||||
- Create versionless links (python and python3) to python executable.
|
- Create versionless links (python and python3) to python executable.
|
||||||
|
|
||||||
- Remove installed stuff in `/discard`.
|
- Remove installed stuff in `/discard`.
|
||||||
|
|
||||||
- Replace the dependency on `virtual/awk` with `app-alternatives/awk`.
|
|
||||||
The former is gone in favor of the latter.
|
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
EAPI="7"
|
EAPI="7"
|
||||||
WANT_LIBTOOL="none"
|
WANT_LIBTOOL="none"
|
||||||
|
|
||||||
inherit autotools check-reqs flag-o-matic multiprocessing \
|
inherit autotools check-reqs flag-o-matic multiprocessing
|
||||||
python-utils-r1 toolchain-funcs verify-sig
|
inherit prefix python-utils-r1 toolchain-funcs verify-sig
|
||||||
|
|
||||||
MY_PV=${PV/_rc/rc}
|
MY_PV=${PV/_rc/rc}
|
||||||
MY_P="Python-${MY_PV%_p*}"
|
MY_P="Python-${MY_PV%_p*}"
|
||||||
@ -13,19 +13,22 @@ PYVER=$(ver_cut 1-2)
|
|||||||
PATCHSET="python-gentoo-patches-${MY_PV}"
|
PATCHSET="python-gentoo-patches-${MY_PV}"
|
||||||
|
|
||||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||||
HOMEPAGE="https://www.python.org/"
|
HOMEPAGE="
|
||||||
|
https://www.python.org/
|
||||||
|
https://github.com/python/cpython/
|
||||||
|
"
|
||||||
SRC_URI="
|
SRC_URI="
|
||||||
https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz
|
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
|
||||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
|
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
|
||||||
verify-sig? (
|
verify-sig? (
|
||||||
https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz.asc
|
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
|
||||||
)
|
)
|
||||||
"
|
"
|
||||||
S="${WORKDIR}/${MY_P}"
|
S="${WORKDIR}/${MY_P}"
|
||||||
|
|
||||||
LICENSE="PSF-2"
|
LICENSE="PSF-2"
|
||||||
SLOT="${PYVER}"
|
SLOT="${PYVER}"
|
||||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
|
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||||
IUSE="hardened"
|
IUSE="hardened"
|
||||||
|
|
||||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||||
@ -42,12 +45,12 @@ DEPEND="
|
|||||||
virtual/libcrypt:=
|
virtual/libcrypt:=
|
||||||
virtual/libintl
|
virtual/libintl
|
||||||
"
|
"
|
||||||
|
# autoconf-archive needed to eautoreconf
|
||||||
BDEPEND="
|
BDEPEND="
|
||||||
|
sys-devel/autoconf-archive
|
||||||
app-alternatives/awk
|
app-alternatives/awk
|
||||||
virtual/pkgconfig
|
virtual/pkgconfig
|
||||||
sys-devel/autoconf-archive
|
|
||||||
verify-sig? ( sec-keys/openpgp-keys-python )
|
verify-sig? ( sec-keys/openpgp-keys-python )
|
||||||
!sys-devel/gcc[libffi(-)]
|
|
||||||
"
|
"
|
||||||
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
|
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc
|
||||||
@ -65,21 +68,18 @@ src_unpack() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
src_prepare() {
|
src_prepare() {
|
||||||
# Ensure that internal copies of zlib are not used.
|
|
||||||
rm -fr Modules/zlib || die
|
|
||||||
|
|
||||||
local PATCHES=(
|
local PATCHES=(
|
||||||
"${WORKDIR}/${PATCHSET}"
|
"${WORKDIR}/${PATCHSET}"
|
||||||
)
|
)
|
||||||
|
|
||||||
default
|
default
|
||||||
|
|
||||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
# https://bugs.gentoo.org/850151
|
||||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
|
||||||
|
|
||||||
# force correct number of jobs
|
# force the correct number of jobs
|
||||||
# https://bugs.gentoo.org/737660
|
# https://bugs.gentoo.org/737660
|
||||||
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
|
local jobs=$(makeopts_jobs)
|
||||||
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
|
sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
|
||||||
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
|
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
|
||||||
|
|
||||||
@ -87,7 +87,6 @@ src_prepare() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
src_configure() {
|
src_configure() {
|
||||||
local disable
|
|
||||||
# disable automagic bluetooth headers detection
|
# disable automagic bluetooth headers detection
|
||||||
export ac_cv_header_bluetooth_bluetooth_h=no
|
export ac_cv_header_bluetooth_bluetooth_h=no
|
||||||
disable+=" gdbm"
|
disable+=" gdbm"
|
||||||
@ -102,18 +101,9 @@ src_configure() {
|
|||||||
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
append-flags -fwrapv
|
||||||
append-flags -fwrapv
|
|
||||||
fi
|
|
||||||
|
|
||||||
filter-flags -malign-double
|
filter-flags -malign-double
|
||||||
|
|
||||||
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
|
||||||
if is-flagq -O3; then
|
|
||||||
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
|
||||||
use hardened && replace-flags -O3 -O2
|
|
||||||
fi
|
|
||||||
|
|
||||||
# https://bugs.gentoo.org/700012
|
# https://bugs.gentoo.org/700012
|
||||||
if is-flagq -flto || is-flagq '-flto=*'; then
|
if is-flagq -flto || is-flagq '-flto=*'; then
|
||||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||||
@ -126,9 +116,10 @@ src_configure() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||||
tc-export CXX
|
# PKG_CONFIG needed for cross.
|
||||||
|
tc-export CXX PKG_CONFIG
|
||||||
|
|
||||||
local dbmliborder
|
local dbmliborder=
|
||||||
|
|
||||||
local myeconfargs=(
|
local myeconfargs=(
|
||||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||||
@ -156,12 +147,73 @@ src_configure() {
|
|||||||
|
|
||||||
# disable implicit optimization/debugging flags
|
# disable implicit optimization/debugging flags
|
||||||
local -x OPT=
|
local -x OPT=
|
||||||
|
|
||||||
|
if tc-is-cross-compiler ; then
|
||||||
|
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
|
||||||
|
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
|
||||||
|
|
||||||
|
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||||
|
# propagated to sysconfig for built extensions
|
||||||
|
local -x CFLAGS_NODIST=${CFLAGS_FOR_BUILD}
|
||||||
|
local -x LDFLAGS_NODIST=${LDFLAGS_FOR_BUILD}
|
||||||
|
local -x CFLAGS= LDFLAGS=
|
||||||
|
|
||||||
|
# We need to build our own Python on CBUILD first, and feed it in.
|
||||||
|
# bug #847910 and bug #864911.
|
||||||
|
local myeconfargs_cbuild=(
|
||||||
|
"${myeconfargs[@]}"
|
||||||
|
|
||||||
|
--libdir="${cbuild_libdir:2}"
|
||||||
|
|
||||||
|
# As minimal as possible for the mini CBUILD Python
|
||||||
|
# we build just for cross.
|
||||||
|
--without-lto
|
||||||
|
--disable-optimizations
|
||||||
|
)
|
||||||
|
|
||||||
|
# Point the imminent CHOST build to the Python we just
|
||||||
|
# built for CBUILD.
|
||||||
|
export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}"
|
||||||
|
|
||||||
|
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
|
||||||
|
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
|
||||||
|
# We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
|
||||||
|
# libdir correctly for cross.
|
||||||
|
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \
|
||||||
|
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
|
||||||
|
|
||||||
|
# Avoid as many dependencies as possible for the cross build.
|
||||||
|
cat >> Makefile <<-EOF || die
|
||||||
|
MODULE_NIS=disabled
|
||||||
|
MODULE__DBM=disabled
|
||||||
|
MODULE__GDBM=disabled
|
||||||
|
MODULE__DBM=disabled
|
||||||
|
MODULE__SQLITE3=disabled
|
||||||
|
MODULE__HASHLIB=disabled
|
||||||
|
MODULE__SSL=disabled
|
||||||
|
MODULE__CURSES=disabled
|
||||||
|
MODULE__CURSES_PANEL=disabled
|
||||||
|
MODULE_READLINE=disabled
|
||||||
|
MODULE__TKINTER=disabled
|
||||||
|
MODULE_PYEXPAT=disabled
|
||||||
|
MODULE_ZLIB=disabled
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Unfortunately, we do have to build this immediately, and
|
||||||
|
# not in src_compile, because CHOST configure for Python
|
||||||
|
# will check the existence of the Python it was pointed to
|
||||||
|
# immediately.
|
||||||
|
PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake
|
||||||
|
popd &> /dev/null || die
|
||||||
|
fi
|
||||||
|
|
||||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||||
# propagated to sysconfig for built extensions
|
# propagated to sysconfig for built extensions
|
||||||
local -x CFLAGS_NODIST=${CFLAGS}
|
local -x CFLAGS_NODIST=${CFLAGS}
|
||||||
local -x LDFLAGS_NODIST=${LDFLAGS}
|
local -x LDFLAGS_NODIST=${LDFLAGS}
|
||||||
local -x CFLAGS= LDFLAGS=
|
local -x CFLAGS= LDFLAGS=
|
||||||
|
|
||||||
|
hprefixify setup.py
|
||||||
econf "${myeconfargs[@]}"
|
econf "${myeconfargs[@]}"
|
||||||
|
|
||||||
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||||
@ -169,6 +221,9 @@ src_configure() {
|
|||||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||||
die "Broken sem_open function (bug 496328)"
|
die "Broken sem_open function (bug 496328)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# install epython.py as part of stdlib
|
||||||
|
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
|
||||||
}
|
}
|
||||||
|
|
||||||
src_compile() {
|
src_compile() {
|
Loading…
Reference in New Issue
Block a user