summaryrefslogtreecommitdiff
path: root/numpy
diff options
context:
space:
mode:
Diffstat (limited to 'numpy')
-rw-r--r--numpy/distutils/command/build.py16
-rw-r--r--numpy/distutils/command/config_compiler.py11
-rw-r--r--numpy/distutils/fcompiler/__init__.py3
3 files changed, 24 insertions, 6 deletions
diff --git a/numpy/distutils/command/build.py b/numpy/distutils/command/build.py
index a968a2739..d984cd29b 100644
--- a/numpy/distutils/command/build.py
+++ b/numpy/distutils/command/build.py
@@ -2,6 +2,7 @@ import os
import sys
from distutils.command.build import build as old_build
from distutils.util import get_platform
+from numpy.distutils.command.config_compiler import show_fortran_compilers
class build(old_build):
@@ -10,6 +11,21 @@ class build(old_build):
('build_src', old_build.has_ext_modules),
] + old_build.sub_commands
+ user_options = old_build.user_options + [
+ ('fcompiler=', None,
+ "specify the Fortran compiler type"),
+ ]
+
+ help_options = old_build.help_options + [
+ ('help-fcompiler',None, "list available Fortran compilers",
+ show_fortran_compilers),
+ ]
+
+ def initialize_options(self):
+ old_build.initialize_options(self)
+ self.fcompiler = None
+ return
+
def finalize_options(self):
build_scripts = self.build_scripts
old_build.finalize_options(self)
diff --git a/numpy/distutils/command/config_compiler.py b/numpy/distutils/command/config_compiler.py
index 881327aba..627f09d8b 100644
--- a/numpy/distutils/command/config_compiler.py
+++ b/numpy/distutils/command/config_compiler.py
@@ -9,7 +9,6 @@ def show_fortran_compilers(_cache=[]):
# Using cache to prevent infinite recursion
if _cache: return
_cache.append(1)
- log.set_verbosity(-2)
from numpy.distutils.fcompiler import show_fcompilers
import distutils.core
dist = distutils.core._setup_distribution
@@ -57,11 +56,12 @@ class config_fc(Command):
return
def finalize_options(self):
- log.info('unifing config_fc, config, build_clib, build_ext commands --fcompiler options')
+ log.info('unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options')
build_clib = self.get_finalized_command('build_clib')
build_ext = self.get_finalized_command('build_ext')
config = self.get_finalized_command('config')
- cmd_list = [self, config, build_clib, build_ext]
+ build = self.get_finalized_command('build')
+ cmd_list = [self, config, build_clib, build_ext, build]
for a in ['fcompiler']:
l = []
for c in cmd_list:
@@ -95,11 +95,12 @@ class config_cc(Command):
return
def finalize_options(self):
- log.info('unifing config_cc, config, build_clib, build_ext commands --compiler options')
+ log.info('unifing config_cc, config, build_clib, build_ext, build commands --compiler options')
build_clib = self.get_finalized_command('build_clib')
build_ext = self.get_finalized_command('build_ext')
config = self.get_finalized_command('config')
- cmd_list = [self, config, build_clib, build_ext]
+ build = self.get_finalized_command('build')
+ cmd_list = [self, config, build_clib, build_ext, build]
for a in ['compiler']:
l = []
for c in cmd_list:
diff --git a/numpy/distutils/fcompiler/__init__.py b/numpy/distutils/fcompiler/__init__.py
index 1bc0ab2e7..2a6ee5320 100644
--- a/numpy/distutils/fcompiler/__init__.py
+++ b/numpy/distutils/fcompiler/__init__.py
@@ -710,12 +710,12 @@ def show_fcompilers(dist = None):
dist.cmdclass['config_fc'] = config_fc
dist.parse_config_files()
dist.parse_command_line()
-
compilers = []
compilers_na = []
compilers_ni = []
for compiler in fcompiler_class.keys():
v = 'N/A'
+ log.set_verbosity(-2)
try:
c = new_fcompiler(compiler=compiler)
c.customize(dist)
@@ -724,6 +724,7 @@ def show_fcompilers(dist = None):
pass
except Exception, msg:
log.warn(msg)
+
if v is None:
compilers_na.append(("fcompiler="+compiler, None,
fcompiler_class[compiler][2]))