It's not currently possible to set the build tree to be somewhere we
control, but we know it will always be in the build directory alongside
the setup.py so we can [cleandirs] that.
(From OE-Core rev: f3854f4f60801e3b6788bee3a0a1850fc498d536)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Explicitly call the build command, as by doing this we get to pass -j.
In packages without any C extensions this is mostly a no-op as
bdist_wheel will call it anyway. However, this does make a big
difference to build time for packages with non-trivial C extensions:
python3-cython:do_compile 204.8s -> 70.9s
python3-lxml:do_compile 157.5s -> 92.4s
(From OE-Core rev: 96d13feaa881ae4d275d16f7efca92dbd075241b)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
`exit_if_errors` must be called explicitly at the end of the task
execution to ensure that QA issues categorized as errors fail the task.
(From OE-Core rev: acc0c57e455670501433ba4514a977e16dc88c34)
Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We aren't checking for this variable anymore, so remove it from the
setuptools3 and setuptools3_legacy classes.
(From OE-Core rev: d6ef6c50dd344a8cfc873c18216ba497735d8200)
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Recipes are much more readable with whitespace around the assignment operators.
Fix various assignments in OE-Core to show this is definitely the preferred
formatting.
(From OE-Core rev: 30ea609d3357fb3de911f2f6a5e6856c151b976a)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some recipes use setuptools3 but should be using a PEP517-compliant
backend, be it the setuptools itself via python_setuptools_build_meta or
an alternative backend such as flit/hatch/poetry.
As we can't currently assume Python 3.11 on the build host we need to
parse the pyproject.toml manually, but this should be sufficient for the
limited parsing needed.
This task emits a QA error if a build backend is set, and can be ignored
by using INSANE_SKIP if needed.
[ YOCTO #14736 ]
(From OE-Core rev: a9d800f6cdfcedbe3de8366d935ee5f0c8557c06)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
python 2 is gone and we don't need the abstraction now, drop the remaining usage
of this variable.
The definition in python3-dir.bbclass is left for now for other layers.
(From OE-Core rev: b566b1e32c7993d1ab7795562f648e52ce186a70)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Move classes to classes-global or classes-recipe as appropriate to take
advantage of new bitbake functionality to check class scope/usage.
(From OE-Core rev: f5c128008365e141082c129417eb72d2751e8045)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>