summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3-wheel_0.37.1.bb
AgeCommit message (Collapse)Author
2022-03-17classes/flit_core: rename to python_flit_coreRoss Burton
To be more uniform with the other new Python classes, rename this to python_flit_core and update the recipes that use it. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-16python_pep517: use installer instead of pipRoss Burton
Instead of battling pip to install a wheel, use installer. Installer does one thing, so it's faster and easier to work with. This means setuptools, pip, and wheel are no longer part of the bootstrap phase, so they can be built normally. To avoid sysroot file conflicts these three recipes can't install .pyc files to the native sysroot. We currently patch pypa/installer to allow us to override the interpreter used, which means we can drop the interpreter seding. We don't need to recompile any Python which is found in $bindir as Python doesn't actually load those files. Across a build of oe-core, the only differences between using pip and installer are: - the .dist-info/RECORD files are ordered differently - the .dist-info/REQUESTED and INSTALLER files are not created - the hashbang in native scripts is "/usr/bin/env nativepython" instead of pointing directly at the native sysroot python3. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-13meta: rename pip_install_wheel.bbclass to python_pep517.bbclassRoss Burton
pip_install_wheel shouldn't restricted to just using Pip to install wheels (the installer module is simplier and likely a better option), and in the future may be extended to also provide do_compile() using the build module. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-11pip_install_wheel: add a generic do_install for bootstrappingRoss Burton
Several recipes are duplicating the same bootstrap logic for installing a wheel without using any tools. Add an implementation to pip_install_wheel to centralise the code, and remove the duplicated code from the following recipes: - python3-flit-core - python3-pip - python3-setuptools - python3-wheel Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-03-09python3-wheel: clean up PYPA_WHEEL usageRoss Burton
Remove the use of PYPA_WHEEL in the native do_install() as this variable will be disappearing shortly. Remove the bbfatal_log in the native do_install(), if this breaks then something has gone very wrong and the user is not expected to fix it. Also flit_core inherits setuptools3-base, so no need to inherit it again. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-25python3-wheel-native: install ${bindir}/wheelTim Orling
pip install would normally install [project.scripts] to ${D}${bindir} but our naïve bootstrapping only unzipps the wheel to ${D}${PYTHON_SITEPACKAGES_DIR}. Correct this by creating the equivalent script in do_install:class-native [YOCTO #14739] Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-25python3-wheel: inherit flit_coreTim Orling
Backport pyproject.toml from flit-backend branch. Inherit flit_core class to build Inherit pip_install_wheel to install wheels for target We need to bootstrap python3-wheel-native in order to have bdist_wheel available to python3-setuptools-native and the refactored setuptools3.bbclass. Simply unzip the wheel into PYTHON_SITEPACKAGES_DIR for class-native. [YOCTO #14638] Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-25python3-wheel: move 0.37.1 from meta-pythonTim Orling
This is one of the "new build tools" which are part of pypa (Python Packaging Authority) toolchain. Wheels are the official delivery mechanism for Python packages, replacing the now deprecated Eggs (egg-info). [YOCTO #14638] Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>