From: Paolo Bonzini <pbonzini@redhat.com>
To: John Snow <jsnow@redhat.com>, qemu-devel@nongnu.org
Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Beraldo Leal" <bleal@redhat.com>,
"Thomas Huth" <thuth@redhat.com>,
"Cleber Rosa" <crosa@redhat.com>
Subject: Re: [RFC PATCH 0/3] configure: create a python venv and install meson
Date: Wed, 29 Mar 2023 15:02:38 +0200 [thread overview]
Message-ID: <44ed710a-f897-2be6-4f07-928ba4cb535e@redhat.com> (raw)
In-Reply-To: <20230328211119.2748442-1-jsnow@redhat.com>
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
next prev parent reply other threads:[~2023-03-29 13:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-28 21:11 [RFC PATCH 0/3] configure: create a python venv and install meson John Snow
2023-03-28 21:11 ` [RFC PATCH 1/3] python: add mkvenv.py John Snow
2023-03-29 12:56 ` Paolo Bonzini
2023-03-30 14:00 ` John Snow
2023-03-31 8:44 ` Paolo Bonzini
2023-03-31 10:01 ` Paolo Bonzini
2023-04-13 16:10 ` John Snow
2023-04-13 16:26 ` John Snow
2023-03-28 21:11 ` [RFC PATCH 2/3] tests: add python3-venv dependency John Snow
2023-03-28 21:11 ` [RFC PATCH 3/3] configure: install meson to a python virtual environment John Snow
2023-03-29 12:32 ` Paolo Bonzini
2023-03-29 12:53 ` Daniel P. Berrangé
2023-03-29 13:27 ` Paolo Bonzini
2023-03-29 13:31 ` Daniel P. Berrangé
2023-04-12 1:27 ` John Snow
2023-03-29 13:02 ` Paolo Bonzini [this message]
2023-03-30 14:11 ` [RFC PATCH 0/3] configure: create a python venv and install meson John Snow
2023-03-31 8:40 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=44ed710a-f897-2be6-4f07-928ba4cb535e@redhat.com \
--to=pbonzini@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=bleal@redhat.com \
--cc=crosa@redhat.com \
--cc=jsnow@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).