commit: 40c3f5de5bc7bb569da1a65da80bb30556fbfc9e Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Tue Jan 31 11:29:12 2023 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Tue Feb 7 14:24:54 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40c3f5de
distutils-r1.eclass: esetup.py, omit setup.cfg check in PEP517 mode Closes: https://bugs.gentoo.org/891959 Closes: https://github.com/gentoo/gentoo/pull/29354 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> eclass/distutils-r1.eclass | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index 30398f9871cd..34f54da85ac3 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -647,7 +647,13 @@ esetup.py() { local setup_py=( setup.py ) if [[ ! -f setup.py ]]; then - if [[ ! -f setup.cfg ]]; then + # The following call can succeed even if the package does not + # feature any setuptools configuration. In non-PEP517 mode this + # could lead to installing an "empty" package. In PEP517 mode, + # we verify the build system when invoking the backend, + # rendering this check redundant (and broken for projects using + # pyproject.toml configuration). + if [[ ! ${DISTUTILS_USE_PEP517} && ! -f setup.cfg ]]; then die "${FUNCNAME}: setup.py nor setup.cfg not found" fi setup_py=( -c "from setuptools import setup; setup()" )
