qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH 0/3] configure: create a python venv and install meson


From: Paolo Bonzini
Subject: Re: [RFC PATCH 0/3] configure: create a python venv and install meson
Date: Wed, 29 Mar 2023 15:02:38 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0

Thanks for posting this!

On 3/28/23 23:11, John Snow wrote:
This series is in RFC state; some notable things:
- So far, only meson is included in this setup.
- There's a ton of debugging prints everywhere. It's extremely chatty right now.
- Sphinx and qemu.qmp are not yet included in this venv.
   (qemu.qmp isn't able to be removed from the tree yet.)
- Testing isn't yet*fully*  switched over.
- There is no online functionality yet, this series is *100% offline* -
   it's the harder option, so I tackled it first.

Some known bugs as of now:
- venv-in-venv setups are not yet handled.
- python3.7 setups without setuptools/pip in the host environment may be
   unable to generate script file shims; a workaround is in development
   but wasn't ready today. I decided to exclude it.

I don't think that's needed at all---requiring setuptools on those older Python versions is good enough and can be mentioned in either an error message or the release notes. But out of curiosity what was the workaround?

I think the steps for the first working version should be:

* fix venv-in-venv using the .pth trick

* undo the meson parts from PATCH 3; make patch 3 create the venv + subsume the MKVENV parts of the Makefiles + always set explicit_python=yes (so that at this point the in-tree meson is always used).

* add a patch that starts rejecting --meson=/path/to/meson and drops explicit_python (instead using pyvenv/bin/meson to check whether a system meson is usable)

* make Meson use a sphinx-build binary from the virtual environment (i.e. pass -Dsphinx_build=$PWD/pyvenv/bin/sphinx-build)

These are the bare minimum needed to drop Python 3.6 support in QEMU 8.1.

Paolo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]