diff options
author | rgommers <ralf.gommers@googlemail.com> | 2011-03-02 15:57:33 +0800 |
---|---|---|
committer | rgommers <ralf.gommers@googlemail.com> | 2011-03-02 15:57:33 +0800 |
commit | ee0831a821744c2d013724456700573918b4ca37 (patch) | |
tree | 9288ab5ed81d0d41702bede7eb5c7a195db98df7 /numpy/distutils | |
parent | 05142b69d8304b219fa2e85c6e810a3f91e09c8b (diff) | |
download | numpy-ee0831a821744c2d013724456700573918b4ca37.tar.gz |
BUG: fix up shared library extension, which changed in Python 3.2. Closes #1749.
Diffstat (limited to 'numpy/distutils')
-rw-r--r-- | numpy/distutils/fcompiler/__init__.py | 5 | ||||
-rw-r--r-- | numpy/distutils/system_info.py | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/numpy/distutils/fcompiler/__init__.py b/numpy/distutils/fcompiler/__init__.py index 397b36ce9..d2400459f 100644 --- a/numpy/distutils/fcompiler/__init__.py +++ b/numpy/distutils/fcompiler/__init__.py @@ -27,7 +27,7 @@ except NameError: from numpy.compat import open_latin1 -from distutils.sysconfig import get_config_var, get_python_lib +from distutils.sysconfig import get_config_var, get_config_vars, get_python_lib from distutils.fancy_getopt import FancyGetopt from distutils.errors import DistutilsModuleError, \ DistutilsExecError, CompileError, LinkError, DistutilsPlatformError @@ -196,6 +196,9 @@ class FCompiler(CCompiler): src_extensions = ['.for','.ftn','.f77','.f','.f90','.f95','.F','.F90'] obj_extension = ".o" shared_lib_extension = get_config_var('SO') # or .dll + # fix long extension for Python >=3.2, see PEP 3149. + if 'SOABI' in get_config_vars(): + shared_lib_extension = shared_lib_extension.replace('.'+get_config_var('SOABI'), '', 1) static_lib_extension = ".a" # or .lib static_lib_format = "lib%s%s" # or %s%s shared_lib_format = "%s%s" diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py index 7cc33eb43..7d1379981 100644 --- a/numpy/distutils/system_info.py +++ b/numpy/distutils/system_info.py @@ -211,6 +211,10 @@ default_include_dirs = filter(os.path.isdir, default_include_dirs) default_src_dirs = filter(os.path.isdir, default_src_dirs) so_ext = distutils.sysconfig.get_config_vars('SO')[0] or '' +# fix long extension for Python >=3.2, see PEP 3149. +if 'SOABI' in distutils.sysconfig.get_config_vars(): + so_ext = so_ext.replace('.'+distutils.sysconfig.get_config_var('SOABI'), '', 1) + def get_standard_file(fname): """Returns a list of files named 'fname' from @@ -1324,7 +1328,7 @@ class lapack_opt_info(system_info): or ('ATLAS_WITHOUT_LAPACK',None) in l: need_lapack = 1 info = atlas_info - + else: warnings.warn(AtlasNotFoundError.__doc__) need_blas = 1 |