qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] edk2 build scripts: work around TianoCore#1607 without forci


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH] edk2 build scripts: work around TianoCore#1607 without forcing Python 2
Date: Thu, 19 Sep 2019 18:39:52 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0

On 9/18/19 7:11 PM, Laszlo Ersek wrote:
> It turns out that forcing python2 for running the edk2 "build" utility is
> neither necessary nor sufficient.
> 
> Forcing python2 is not sufficient for two reasons:
> 
> - QEMU is moving away from python2, with python2 nearing EOL,
> 
> - according to my most recent testing, the lacking dependency information
>   in the makefiles that are generated by edk2's "build" utility can cause
>   parallel build failures even when "build" is executed by python2.
> 
> And forcing python2 is not necessary because we can still return to the
> original idea of filtering out jobserver-related options from MAKEFLAGS.
> So do that.

FYI I tried uninstalling python2 on Fedora 29,

$ make -C roms efi -j8
make: Entering directory '/home/phil/source/qemu/roms'
make -C edk2/BaseTools \
        EXTRA_OPTFLAGS='' \
        EXTRA_LDFLAGS=''
make[1]: Entering directory '/home/phil/source/qemu/roms/edk2/BaseTools'
[...]
make -C Tests
make[2]: Entering directory
'/home/phil/source/qemu/roms/edk2/BaseTools/Tests'
/bin/sh: python: command not found
make[2]: *** [GNUmakefile:11: test] Error 127

'python' seems to be provided by python-unversioned-command which is
wired to Python2:

$ dnf info python-unversioned-command
Last metadata expiration check: 0:03:08 ago on Thu 19 Sep 2019 04:21:21
PM UTC.
Available Packages
Name         : python-unversioned-command
Version      : 2.7.16
Release      : 2.fc29
Arch         : noarch
Size         : 13 k
Source       : python2-2.7.16-2.fc29.src.rpm
Repo         : updates
Summary      : The "python" command that runs Python 2
URL          : https://www.python.org/
License      : Python
Description  : This package contains /usr/bin/python - the "python"
command that runs Python 2.

I had to manually run update-alternatives to continue:

$ sudo update-alternatives --install /usr/bin/python python
/usr/bin/python3 69

Not sure this is the expected behavior, it is confusing.



reply via email to

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