On 13.10.18 07:02, Eduardo Habkost wrote: > Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> > --- > I'd like to do this in QEMU 3.1. I think it's time to drop > support for old systems that have only Python 2. > > We still have a few scripts that are not required for building > QEMU that still work only with Python 2 (iotests being the most > relevant set). Requiring Python 3 for building QEMU won't > prevent people from using those scripts with Python 2 until they > are finally ported.
It very much does because the iotests specifically use the python path qemu was configured with. To fix this, configure would need to write something else for into tests/qemu-iotests/common.env for $PYTHON. But what? I don't really want to introduce a new configure option for this. So the real fix is indeed to make the iotests work with Python 3, and I think that needs to be done before we can require Python 3. Maybe it even needs to be done at the same time. Max > --- > configure | 8 ++++---- > .travis.yml | 2 +- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/configure b/configure > index f89d293585..43b45745dc 100755 > --- a/configure > +++ b/configure > @@ -885,7 +885,7 @@ fi > > : ${make=${MAKE-make}} > : ${install=${INSTALL-install}} > -: ${python=${PYTHON-python}} > +: ${python=${PYTHON-python3}} > : ${smbd=${SMBD-/usr/sbin/smbd}} > > # Default objcc to clang if available, otherwise use CC > @@ -1730,13 +1730,13 @@ exit 0 > fi > > if ! has $python; then > - error_exit "Python not found. Use --python=/path/to/python" > + error_exit "Python 3 not found. Use --python=/path/to/python" > fi > > # Note that if the Python conditional here evaluates True we will exit > # with status 1 which is a shell 'false' value. > -if ! $python -c 'import sys; sys.exit(sys.version_info < (2,7))'; then > - error_exit "Cannot use '$python', Python 2 >= 2.7 or Python 3 is > required." \ > +if ! $python -c 'import sys; sys.exit(sys.version_info < (3,0))'; then > + error_exit "Cannot use '$python', Python 3 is required." \ > "Use --python=/path/to/python to specify a supported Python." > fi > > diff --git a/.travis.yml b/.travis.yml > index 95be6ec59f..caca9685fa 100644 > --- a/.travis.yml > +++ b/.travis.yml > @@ -5,7 +5,7 @@ sudo: false > dist: trusty > language: c > python: > - - "2.6" > + - "3.6" > compiler: > - gcc > cache: ccache >