]> code.ossystems Code Review - openembedded-core.git/commit
python_pep517: use installer instead of pip
authorRoss Burton <ross@burtonini.com>
Mon, 14 Mar 2022 14:39:23 +0000 (14:39 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 15 Mar 2022 08:40:12 +0000 (08:40 +0000)
commit4b6b8b8a5510e4119ab26905537ba89fb55097f1
treec9ac56a33d17e61d55de7033d40102f2943365b0
parent8beed9f6c4f750dfb6d1c205bd6f58441582101a
python_pep517: use installer instead of pip

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>
meta/classes/python_pep517.bbclass
meta/recipes-devtools/python/python3-flit-core_3.7.1.bb
meta/recipes-devtools/python/python3-pip_22.0.3.bb
meta/recipes-devtools/python/python3-setuptools_59.5.0.bb
meta/recipes-devtools/python/python3-wheel_0.37.1.bb