summaryrefslogtreecommitdiff
path: root/numpy/distutils/command/build_clib.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/distutils/command/build_clib.py')
-rw-r--r--numpy/distutils/command/build_clib.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/numpy/distutils/command/build_clib.py b/numpy/distutils/command/build_clib.py
index 3319c6a75..de1781991 100644
--- a/numpy/distutils/command/build_clib.py
+++ b/numpy/distutils/command/build_clib.py
@@ -46,9 +46,12 @@ class build_clib(old_build_clib):
return
# Make sure that library sources are complete.
+ languages = []
for (lib_name, build_info) in self.libraries:
if not all_strings(build_info.get('sources',[])):
self.run_command('build_src')
+ l = build_info.get('language',None)
+ if l and l not in languages: languages.append(l)
from distutils.ccompiler import new_compiler
self.compiler = new_compiler(compiler=self.compiler,
@@ -69,7 +72,8 @@ class build_clib(old_build_clib):
self.fcompiler = new_fcompiler(compiler=self.fcompiler,
verbose=self.verbose,
dry_run=self.dry_run,
- force=self.force)
+ force=self.force,
+ requiref90='f90' in languages)
self.fcompiler.customize(self.distribution)
libraries = self.libraries
@@ -124,12 +128,14 @@ class build_clib(old_build_clib):
'for fortran compiler: %s' \
% (config_fc))
from numpy.distutils.fcompiler import new_fcompiler
+ requiref90 = build_info.get('language','c')=='f90'
fcompiler = new_fcompiler(compiler=self.fcompiler.compiler_type,
verbose=self.verbose,
dry_run=self.dry_run,
- force=self.force)
+ force=self.force,
+ requiref90=requiref90)
fcompiler.customize(config_fc)
-
+
macros = build_info.get('macros')
include_dirs = build_info.get('include_dirs')
extra_postargs = build_info.get('extra_compiler_args') or []