Python 3.4 support for ports

Rainer Müller raimue at macports.org
Mon Mar 17 16:33:34 PDT 2014


On 2014-03-03 21:11, Wahlstedt Jyrki wrote:
> Can you use ’python3.4m-config’? It should give you the correct include directories. (I looked at the patch-python3.diff, configure script seems to take a simplistic view on directory naming:( )

Thanks for the hint. I learned now that the 'm' is called an abiflag and
is used to distinguish different python configurations. However, I don't
understand why this suddenly appears for python 3.4 now and is not
present in previous versions, although they also have this flag set:

$ python3.4 -c 'import sys; print(sys.abiflags);'
m
$ python3.3 -c 'import sys; print(sys.abiflags);'
m

The config dir also has the suffix for both 3.3 and 3.4:

$ python3.3-config --configdir
/opt/local/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/config-3.3m
$ python3.4m-config --configdir
/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/config-3.4m

But there is no python3.3m-config, it is called python3.3-config.

I had tried to get this to work by including the ABI flag for the command:
"${vi_cv_path_python3}${vi_cv_var_python3_abiflags}-config --ldflags"

The configure script extracts these from the python interpreter. This
works for python34, but fails for python33 because they differ in the
way the ABI flags are exposed in the various commands.

How am I supposed to detect which flags I have to include for the
python3.*-config command?

Rainer


More information about the macports-dev mailing list