[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-trivial] [PATCH] configure: Don't write .pyc files by default
From: |
Stefan Weil |
Subject: |
Re: [Qemu-trivial] [PATCH] configure: Don't write .pyc files by default (python -B) |
Date: |
Thu, 14 Nov 2013 18:43:48 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.1.0 |
Am 14.11.2013 15:45, schrieb Stefan Hajnoczi:
> On Tue, Aug 27, 2013 at 3:12 PM, Stefan Weil <address@hidden> wrote:
>> When a Python script is run, Python normally writes bytecode into a .pyc
>> file.
>> QEMU's build process uses several Python scripts which are called from
>> configure or make.
>>
>> The generated .pyc files take disk space without being of much use, because
>> those scripts are short, not time critical and only called a few times.
>>
>> Python's option -B disables writing of .pyc files. QEMU now uses "python -B"
>> as default, but it is still possible to choose a different call by passing
>> --python=PYTHON to configure.
>>
>> Signed-off-by: Stefan Weil <address@hidden>
>> ---
>>
>> It was necessary to change from "$python" to simply $python in the
>> Python test. This should not matter: we already have a simple $python
>> in configure, and Python wants to be installed in a path without
>> spaces.
>>
>> Stefan
[...]
>> This patch breaks ./configure on RHEL 5 and other older distros that
>> use Python 2.4.
>>
>> The version test in ./configure fails because the python interpreter
>> does not accept the -B option:
>> http://buildbot.b1-systems.de/qemu/builders/default_x86_64_rhel5/builds/762/steps/configure/logs/stdio
>>
>> Can you add -B after version detection, if available? (No .pyc is
>> generated for statements evaluated on the command-line during version
>> detection.)
>>
>> Stefan
I'm sorry that I did not notice this regression in the buildbot report.
We have several possibilities how we can handle this incompatibility for
old versions of Python.
According to http://docs.python.org/2/whatsnew/2.6.html, the -B option
was introduced with
Python 2.6 which was released on October 1 2008.
Solution 1: We don't modify the current configure script because it
works with Python versions
since 5 years. For older versions there is a very simple workaround:
call configure with
--python=python. This additional parameter would also be needed for the
buildbots running
with Python 2.4.
Solution 2: I modify the configure script to set -B only if it is
supported. This makes it marginally
longer (more lines of code, one more Python execution).
Would 1 be sufficient, or do you prefer getting a patch with solution 2?
In any case, I don't think
this is a must for QEMU 1.7.
Stefan