[LLVMdev] upgrading Python on http://bb.pgr.jp bots

NAKAMURA Takumi geek4civic at gmail.com
Sun Mar 25 04:05:06 PDT 2012


Good evening, Eli.

2012/3/25 Bendersky, Eli <eli.bendersky at intel.com>:
> It appears that some of the bots on http://bb.pgr.jp use a really old
> version of Python (2.4)

I know. It is extremely old. IIRC, RHEL5(and its clone) does not
provide python greater than 2.4 by default.
EPEL (extra packages for enterprise linux, by fedora) provides 2.6.
CentOS5, my buildslave, and RHEL5 can use EPEL, AFAIK.

> This Python was released back in 2004 and it’s unmaintained for a very long
> time. Restricting to such a version makes Python-written tools in LLVM
> (mostly LIT) hard to maintain because many features long taken for granted
> don’t work on 2.4

For short term, you can maintain for py24, because my buildbot is
visible to public.
But I rethought it would be an opportunity to get rid of older python.

FYI, Red hat has been maintaining his packages, including python as bugfixes.
(clones may track upstream...)

> Is there a chance you could upgrade your bot(s) to a younger Python?

We should implement an option to detect and specify qualified python
for llvm builds in configuration.
cmake build can specify python path. (but it does not check compatibility)
IIRC autoconf doesn't.

Note, upgrading system's python is not good thing. Most Linux distros
depend on python deeply.
Then, we should use prefixed python.
For example, /usr/bin/python26 or /usr/bin/python2.6 .

I would be happier if you will propose RFC, after 3.1 released.

  - Mention minimum required version of python
  - Specify python name (--with-python=pythonXX) in autoconf
  - Check and qualify capability of specified python (autoconf and cmake)
  - Detect available pythons automatically (autoconf and cmake)
  - Configuring #!shbang. "#!/usr/bin/env python" would be unsuitable
then any more due to suffix issue.
  - Tweaking Python bindings?

...Takumi




More information about the llvm-dev mailing list