There's been a lot of work on this class so clean it up a bit.
Rationalise imports, python3-dir is already included in python3native.
Don't write a helper script in do_configure, just call the API in
do_compile. In the long term this should be using pypa/build instead
of calling the API directly.
Stub out do_configure as the base configure isn't useful.
Write the wheel to PIP_INSTALL_DIST_PATH instead of hard-coding S/dist,
and clean it.
Use EXPORT_FUNCTIONS on the tasks.
Signed-off-by: Ross Burton <ross.burton@...>
---
meta-python/classes/poetry_core.bbclass | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/meta-python/classes/poetry_core.bbclass b/meta-python/classe=
s/poetry_core.bbclass
index 4b3f9631e2..fb37c78c78 100644
--- a/meta-python/classes/poetry_core.bbclass
+++ b/meta-python/classes/poetry_core.bbclass
@@ -1,15 +1,15 @@
-inherit pip_install_wheel python3native python3-dir setuptools3-base
+inherit pip_install_wheel python3native setuptools3-base
=20
-DEPENDS +=3D "python3 python3-poetry-core-native python3-pip-native"
+DEPENDS +=3D "python3-poetry-core-native"
=20
-do_configure () {
- mkdir -p ${S}/dist
- cat > ${S}/build-it.py << EOF
-from poetry.core.masonry import api
-api.build_wheel('${S}/dist')
-EOF
+poetry_core_do_configure () {
+ :
}
=20
-do_compile () {
- ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} ${S}/build=
-it.py
+# TODO: ideally this uses pypa/build
+poetry_core_do_compile () {
+ nativepython3 -c "from poetry.core.masonry import api; api.build_whe=
el('${PIP_INSTALL_DIST_PATH}')"
}
+do_compile[cleandirs] +=3D "${PIP_INSTALL_DIST_PATH}"
+
+EXPORT_FUNCTIONS do_configure do_compile
--=20
2.25.1