mirror of
https://github.com/flatcar/scripts.git
synced 2025-11-28 05:51:43 +01:00
eclass/distutils-r1: Sync with Gentoo
It's from Gentoo commit 32bbaebe4b727997e483d6b78c8d71cf9fde6b7e.
This commit is contained in:
parent
ba19252ad1
commit
5b68190314
@ -154,10 +154,11 @@
|
||||
# will be merged into ${D}.
|
||||
|
||||
# @ECLASS_VARIABLE: DISTUTILS_UPSTREAM_PEP517
|
||||
# @DEFAULT_UNSET
|
||||
# @DESCRIPTION:
|
||||
# Specifies the PEP517 build backend used upstream. It is used
|
||||
# by the eclass to verify the correctness of DISTUTILS_USE_PEP517,
|
||||
# and matches DISTUTILS_USE_PEP517 by default. However, it can be
|
||||
# and defaults to ${DISTUTILS_USE_PEP517}. However, it can be
|
||||
# overriden to workaround the eclass check, when it is desirable
|
||||
# to build the wheel using other backend than the one used upstream.
|
||||
#
|
||||
@ -165,7 +166,6 @@
|
||||
# be subtle differences between the behavior of different PEP517 build
|
||||
# backends, for example regarding finding package files. When using
|
||||
# this option, please make sure that the package is installed correctly.
|
||||
: "${DISTUTILS_UPSTREAM_PEP517:=${DISTUTILS_USE_PEP517}}"
|
||||
|
||||
# @ECLASS_VARIABLE: DISTUTILS_USE_SETUPTOOLS
|
||||
# @DEFAULT_UNSET
|
||||
@ -322,7 +322,7 @@ _distutils_set_globals() {
|
||||
;;
|
||||
setuptools)
|
||||
bdep+='
|
||||
>=dev-python/setuptools-75.8.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/setuptools-78.1.0[${PYTHON_USEDEP}]
|
||||
'
|
||||
;;
|
||||
sip)
|
||||
@ -347,7 +347,7 @@ _distutils_set_globals() {
|
||||
eqawarn "is enabled."
|
||||
fi
|
||||
else
|
||||
local setuptools_dep='>=dev-python/setuptools-75.8.2[${PYTHON_USEDEP}]'
|
||||
local setuptools_dep='>=dev-python/setuptools-78.1.0[${PYTHON_USEDEP}]'
|
||||
|
||||
case ${DISTUTILS_USE_SETUPTOOLS:-bdepend} in
|
||||
no|manual)
|
||||
@ -388,6 +388,11 @@ _distutils_set_globals() {
|
||||
DISTUTILS_DEPS=${bdep}
|
||||
readonly DISTUTILS_DEPS
|
||||
fi
|
||||
else
|
||||
eqawarn "QA Notice: distutils-r1.eclass legacy mode is deprecated and will be removed."
|
||||
eqawarn "Please migrate your ebuilds to use DISTUTILS_USE_PEP517 (common values"
|
||||
eqawarn "are 'setuptools' for packages using setuptools/distutils,"
|
||||
eqawarn "and 'no' for packages using non-PEP517 build systems)."
|
||||
fi
|
||||
|
||||
if [[ ! ${DISTUTILS_OPTIONAL} ]]; then
|
||||
@ -599,7 +604,7 @@ distutils_enable_sphinx() {
|
||||
#
|
||||
# - pytest: dev-python/pytest
|
||||
#
|
||||
# - setup.py: setup.py test (no deps included)
|
||||
# - setup.py: setup.py test (no deps included; deprecated)
|
||||
#
|
||||
# - unittest: for built-in Python unittest module
|
||||
#
|
||||
@ -645,14 +650,10 @@ distutils_enable_tests() {
|
||||
fi
|
||||
;;
|
||||
setup.py)
|
||||
eqawarn "QA Notice: 'distutils_enable_tests setup.py' is deprecated and will be removed."
|
||||
eqawarn "Please use unittest or pytest instead."
|
||||
;;
|
||||
unittest)
|
||||
# unittest-or-fail is needed in py<3.12
|
||||
local test_pkgs="$(python_gen_cond_dep '
|
||||
dev-python/unittest-or-fail[${PYTHON_USEDEP}]
|
||||
' 3.10 3.11
|
||||
)"
|
||||
[[ -n ${test_pkgs} ]] && test_deps+=" ${test_pkgs}"
|
||||
;;
|
||||
*)
|
||||
die "${FUNCNAME}: unsupported argument: ${1}"
|
||||
@ -981,15 +982,6 @@ distutils-r1_python_prepare_all() {
|
||||
if [[ ! ${DISTUTILS_USE_PEP517} ]]; then
|
||||
_distutils-r1_disable_ez_setup
|
||||
_distutils-r1_handle_pyproject_toml
|
||||
|
||||
case ${DISTUTILS_USE_SETUPTOOLS} in
|
||||
no)
|
||||
eqawarn "Non-PEP517 builds are deprecated for ebuilds using plain distutils."
|
||||
eqawarn "Please migrate to DISTUTILS_USE_PEP517=setuptools."
|
||||
eqawarn "Please see Python Guide for more details:"
|
||||
eqawarn " https://projects.gentoo.org/python/guide/distutils.html"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [[ ${DISTUTILS_IN_SOURCE_BUILD} && ! ${DISTUTILS_SINGLE_IMPL} ]]
|
||||
@ -1164,7 +1156,10 @@ _distutils-r1_get_backend() {
|
||||
fi
|
||||
|
||||
# verify that the ebuild correctly specifies the build backend
|
||||
local expected_backend=$(_distutils-r1_key_to_backend "${DISTUTILS_UPSTREAM_PEP517}")
|
||||
local expected_backend=$(
|
||||
_distutils-r1_key_to_backend \
|
||||
"${DISTUTILS_UPSTREAM_PEP517:-${DISTUTILS_USE_PEP517}}"
|
||||
)
|
||||
if [[ ${expected_backend} != ${build_backend} ]]; then
|
||||
# special-case deprecated backends
|
||||
case ${build_backend} in
|
||||
@ -1188,7 +1183,7 @@ _distutils-r1_get_backend() {
|
||||
|
||||
# if we didn't die, we're dealing with a deprecated backend
|
||||
if [[ ! -f ${T}/.distutils_deprecated_backend_warned ]]; then
|
||||
eqawarn "${build_backend} backend is deprecated. Please see:"
|
||||
eqawarn "QA Notice: ${build_backend} backend is deprecated. Please see:"
|
||||
eqawarn "https://projects.gentoo.org/python/guide/qawarn.html#deprecated-pep-517-backends"
|
||||
eqawarn "The project should use ${expected_backend} instead."
|
||||
> "${T}"/.distutils_deprecated_backend_warned || die
|
||||
@ -1996,7 +1991,7 @@ _distutils-r1_compare_installed_files() {
|
||||
--exclude="*$(get_modname)" \
|
||||
"${_DISTUTILS_PREVIOUS_SITE}" "${sitedir}"
|
||||
if [[ ${?} -ne 0 ]]; then
|
||||
eqawarn "Package creating at least one pure Python wheel installs different"
|
||||
eqawarn "QA Notice: Package creating at least one pure Python wheel installs different"
|
||||
eqawarn "Python files between implementations. See diff in build log, above"
|
||||
eqawarn "this message."
|
||||
fi
|
||||
@ -2187,7 +2182,7 @@ _distutils-r1_post_python_install() {
|
||||
if [[ ! ${DISTUTILS_EXT} && ! ${_DISTUTILS_EXT_WARNED} ]]; then
|
||||
if [[ $(find "${sitedir}" -name "*$(get_modname)" | head -n 1) ]]
|
||||
then
|
||||
eqawarn "Python extension modules (*$(get_modname)) found installed. Please set:"
|
||||
eqawarn "QA Notice: Python extension modules (*$(get_modname)) found installed. Please set:"
|
||||
eqawarn " DISTUTILS_EXT=1"
|
||||
eqawarn "in the ebuild."
|
||||
_DISTUTILS_EXT_WARNED=1
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user