new file mode 100644
@@ -0,0 +1,18 @@
+DEPENDS:append = " python3-pip-native"
+
+PIP_INSTALL_PACKAGE ?= "${PYPI_PACKAGE}"
+PIP_INSTALL_DIST_PATH ?= "${B}/dist"
+PYPA_WHEEL ??= "${PIP_INSTALL_DIST_PATH}/${PIP_INSTALL_PACKAGE}-${PV}-*.whl"
+
+pip_install_wheel_do_install:prepend () {
+ install -d ${D}${PYTHON_SITEPACKAGES_DIR}
+}
+
+export PYPA_WHEEL
+
+pip_install_wheel_do_install () {
+ nativepython3 -m pip install -vvvv --no-deps --no-index --target ${D}${PYTHON_SITEPACKAGES_DIR} ${PYPA_WHEEL} ||
+ bbfatal_log "Failed to pip install wheel. Check the logs."
+}
+
+EXPORT_FUNCTIONS do_install
Provide a helper class to use pip to install wheels built by either bdist_wheel or a PEP-517 backend. By passings --no-deps and --no-index we avoid finicky dependency checking (pip expects wheels in its cache) and avoid trying to fetch wheels from pypi.org. This is basically the same behavior we have now, the dependencies should be declared in the recipe. [YOCTO #14638] Signed-off-by: Tim Orling <tim.orling@konsulko.com> --- meta/classes/pip_install_wheel.bbclass | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 meta/classes/pip_install_wheel.bbclass