commit: c8b8dc11f7235ad4f7b05f24bd75a85c110ec400
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 25 11:29:51 2022 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Apr 2 16:29:47 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8b8dc11
distutils-r1.eclass: Support backend-path in pyproject.toml
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
eclass/distutils-r1.eclass | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index ed2e9f70269f..0491452104be 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1015,8 +1015,15 @@ distutils_pep517_install() {
einfo " Building the wheel for ${PWD#${WORKDIR}/} via ${build_backend}"
local wheel=$(
"${EPYTHON}" - 3>&1 >&2 <<-EOF || die "Wheel build failed"
- import ${build_backend%:*}
import os
+ import sys
+ import tomli
+
+ sys.path[:0] = (tomli.load(open("pyproject.toml", "rb"))
+ .get("build-system", {})
+ .get("backend-path", []))
+
+ import ${build_backend%:*}
print(${build_backend/:/.}.build_wheel(os.environ['WHEEL_BUILD_DIR']),
file=os.fdopen(3, 'w'))
EOF