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 <[email protected]>
---
 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/classes/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
 
-DEPENDS += "python3 python3-poetry-core-native python3-pip-native"
+DEPENDS += "python3-poetry-core-native"
 
-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 () {
+    :
 }
 
-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_wheel('${PIP_INSTALL_DIST_PATH}')"
 }
+do_compile[cleandirs] += "${PIP_INSTALL_DIST_PATH}"
+
+EXPORT_FUNCTIONS do_configure do_compile
-- 
2.25.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#95889): 
https://lists.openembedded.org/g/openembedded-devel/message/95889
Mute This Topic: https://lists.openembedded.org/mt/89645950/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to