[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#13170: automake and pyconfigure: a future integration?
From: |
Roumen Petrov |
Subject: |
bug#13170: automake and pyconfigure: a future integration? |
Date: |
Sat, 15 Dec 2012 02:30:40 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20100101 Firefox/17.0 SeaMonkey/2.14.1 |
Hi All,
This is cross-list discussion and my post is only to address@hidden .
Kerrick Staley wrote:
Quite a lengthy response for such a simple inquiry!
Really, I'd just like to get gobject-introspection to compile on Arch
Linux. The problem is that gobject-introspection's configure.ac has the line
AM_PATH_PYTHON([2.5])
but gobject-introspection can't actually work with Python 3 or higher (the
default on Arch); it needs Python 2. Automake doesn't seem to provide a way
to specify this need.
Probably exist package that could be run on 3x without to be ported.
May be automake macro could be improved to check for same 'major' version.
The problem could be fixed by changing AM_PATH_PYTHON could be changed to
prefer Python 2 over Python 3, as my patch does.
I don't know what is content of Kerrick's patch as I'm not subscriber of
am.patch list.
AM-macro (11.x or master) use default list python python2 python3
python3.x.... python2.7 ... python2.0.
Also 3.x lack search for cpython ABI versions but I could not found
reasons macro to support this.
However, I guess this
would cause packages that support both Python 2 and Python 3 to build
against Python 2 by default even if Python 3 is present.
I'm not sure that am-macro should check for X.Y versions. I think that
python3 is enough . Lets keep in list 2.x for historical reasons.
CPython create hard link python -> pythonX.Y for versions from 2x
branches. Such link is not created in 3x branches . Those branches
create link python3 -> python3.N (symbolic in more recent) and hard link
python3.N -> python3.N$(ABI) . Only pyvenv does not follow such rule
(symlinked to pyvenv-3.N) may be because does not exist in 2.x branch.
If a vendor decide to link python to python3 then 3x version will be
preferred.
Also users could specify python interpreter in PYTHON env. variable same
as CC end etc. This is the way that I test automake from master branch
some time ago with cpython from head on site with 2.7.3 version.
$ PATH=$PY_ROOT/bin:$PATH
$ export PATH
$ PYTHON=python3.4
$ export PYTHON
$ cat python3.log
python3: running python3.4 -V
Python 3.4.0a0
....
checking for python version... 3.4
....
++ python3.4 -c 'import imp; print(imp.get_tag())'
+ am_pep3147_tag=cpython-34
....
python3: exit 0
Version in name is not available on windows where exists only python.exe
(+pythonw.exe) but installations use different path.
[SNIP]
Roumen