On 15 Mar 2023, at 14:16, Böszörményi Zoltán <zbos...@gmail.com> wrote:
> 
> 2023. 03. 15. 13:46 keltezéssel, Ross Burton írta:
>> On 15 Mar 2023, at 08:04, Zoltan Boszormenyi via lists.openembedded.org 
>> <zboszor=gmail....@lists.openembedded.org> wrote:
>>> Some python modules (e.g. SciPy, scikit-image) use meson-python
>>> (a.k.a. mesonpy) in pyproject.toml:
>>> 
>>>    [build-system]
>>>    build-backend = 'mesonpy'
>>> 
>>> This class, together with python3-meson-python and its dependencies
>>> will allow building such modules.
>> So the pep517 build thing provides dependencies (which we ignore),
> 
> Does this mean recipes using this class would specify the
> build dependencies themselves instead of having them
> brought in via the class?

Yes. That’s explicit and intentionally the desired behaviour.  Dependencies are 
declared in the recipe.

>> build isolation (which we disable), and automatic use of the right tooling 
>> (which we have to specify manually).
> 
> Not sure what this means, please elaborate.

The python ‘build’ tool can do builds inside a minimal virtual environment. We 
deliberately don’t do this: dependencies are expected to be in the sysroot via 
DEPENDS, and they should be used. build won’t be able to fetch anything else 
during do_compile anyway, as the network is disabled.

build also reads the pyproject.toml to determine what build tool to use.  As we 
need dependencies up front this isn’t possible.

> Please instruct me what clean up in this class to get this acceptible.
> 
> meta-scipy has a quite old SciPy version and the latest version uses this 
> thing.
> I have a working scikit-image 0.20.0 recipe also using this.
> 
>> So what does the meson-python integration bring?  Can we just run meson 
>> directly?
> 
> Unfortunately, no.
> 
> meson itself does not provide a PEP517 compliant build backend.
> meson-python (mesonpy, https://pypi.org/project/meson-python/) does that as a 
> wrapper over meson.

Right, but if we’re just calling meson that isn’t relevant.

> I tried just using meson, but while it the .so parts were built,
> none of the .py files were properly owned and no egg metadata
> was generated. While the first issue is fixable in the recipe,
> the second isn’t.

So the point of meson-python is to write the package metadata, right.

It seems very overcomplicated for such a simple job, but fine.

I’ll give this another review tomorrow, but fyi you can remove the setuptools 
dependency.

Ross
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#101566): 
https://lists.openembedded.org/g/openembedded-devel/message/101566
Mute This Topic: https://lists.openembedded.org/mt/97622993/21656
Group Owner: openembedded-devel+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to