diff options
author | GavinZhang <zhanggan@cn.ibm.com> | 2022-08-14 11:01:22 +0800 |
---|---|---|
committer | GavinZhang <zhanggan@cn.ibm.com> | 2022-08-14 11:01:22 +0800 |
commit | 505cff914de69205daec2dc4e60a3017a0534b4b (patch) | |
tree | 68cb2c1a5a3996b9fa2d0dfbc4adb724909bad04 /numpy/distutils/fcompiler | |
parent | c652fcbd9c7d651780ea56f078c8609932822cf7 (diff) | |
download | numpy-505cff914de69205daec2dc4e60a3017a0534b4b.tar.gz |
DEV: supporting IBM i system
Diffstat (limited to 'numpy/distutils/fcompiler')
-rw-r--r-- | numpy/distutils/fcompiler/__init__.py | 6 | ||||
-rw-r--r-- | numpy/distutils/fcompiler/gnu.py | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/numpy/distutils/fcompiler/__init__.py b/numpy/distutils/fcompiler/__init__.py index d8dcfa899..ecba3e5d5 100644 --- a/numpy/distutils/fcompiler/__init__.py +++ b/numpy/distutils/fcompiler/__init__.py @@ -527,6 +527,12 @@ class FCompiler(CCompiler): ld_so_aix = os.path.join(python_lib, 'config', 'ld_so_aix') python_exp = os.path.join(python_lib, 'config', 'python.exp') linker_so = [ld_so_aix] + linker_so + ['-bI:'+python_exp] + if sys.platform.startswith('os400'): + from distutils.sysconfig import get_config_var + python_config = get_config_var('LIBPL') + ld_so_aix = os.path.join(python_config, 'ld_so_aix') + python_exp = os.path.join(python_config, 'python.exp') + linker_so = [ld_so_aix] + linker_so + ['-bI:'+python_exp] self.set_commands(linker_so=linker_so+linker_so_flags) linker_exe = self.linker_exe diff --git a/numpy/distutils/fcompiler/gnu.py b/numpy/distutils/fcompiler/gnu.py index cdb6aef94..3472b5d4c 100644 --- a/numpy/distutils/fcompiler/gnu.py +++ b/numpy/distutils/fcompiler/gnu.py @@ -256,7 +256,7 @@ class GnuFCompiler(FCompiler): if sys.platform == 'darwin': return f'-Wl,-rpath,{dir}' - elif sys.platform[:3] == 'aix': + elif sys.platform.startswith(('aix', 'os400')): # AIX RPATH is called LIBPATH return f'-Wl,-blibpath:{dir}' else: @@ -305,7 +305,7 @@ class Gnu95FCompiler(GnuFCompiler): module_dir_switch = '-J' module_include_switch = '-I' - if sys.platform[:3] == 'aix': + if sys.platform.startswith(('aix', 'os400')): executables['linker_so'].append('-lpthread') if platform.architecture()[0][:2] == '64': for key in ['compiler_f77', 'compiler_f90','compiler_fix','linker_so', 'linker_exe']: |