]> code.ossystems Code Review - openembedded-core.git/commitdiff
pip_install_wheel: improved wheel filename guess
authorTim Orling <ticotimo@gmail.com>
Fri, 25 Feb 2022 04:03:31 +0000 (20:03 -0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 25 Feb 2022 15:43:50 +0000 (15:43 +0000)
Rather than only use PYPI_PACKAGE as a guess, fall back on PN for cases
where a recipe does not inherit pypi.

Wheels can only have alphanumeric characters in the 'distribution'
name [1]. Any other characters are replaced with an underscore. Provide a
function to replace dash with underscore.

[1] https://www.python.org/dev/peps/pep-0491/#escaping-and-unicode

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/pip_install_wheel.bbclass

index 8a848c0ebab3300ef55cdd3236570e8a911cda74..9f9feda6ee0e41f20f25e567118e5b5440c57462 100644 (file)
@@ -1,6 +1,10 @@
 DEPENDS:append = " python3-pip-native"
 
-PIP_INSTALL_PACKAGE ?= "${PYPI_PACKAGE}"
+def guess_pip_install_package_name(d):
+    '''https://www.python.org/dev/peps/pep-0491/#escaping-and-unicode'''
+    return (d.getVar('PYPI_PACKAGE') or d.getVar('PN')).replace('-', '_')
+
+PIP_INSTALL_PACKAGE ?= "${@guess_pip_install_package_name(d)}"
 PIP_INSTALL_DIST_PATH ?= "${B}/dist"
 PYPA_WHEEL ??= "${PIP_INSTALL_DIST_PATH}/${PIP_INSTALL_PACKAGE}-${PV}-*.whl"