summaryrefslogtreecommitdiff
path: root/numpy/distutils/fcompiler/intel.py
diff options
context:
space:
mode:
authorPearu Peterson <pearu.peterson@gmail.com>2006-04-09 10:11:56 +0000
committerPearu Peterson <pearu.peterson@gmail.com>2006-04-09 10:11:56 +0000
commit50e69de29085387db2e0ab7768bc9b81c2712169 (patch)
tree3b9d37236a5754adde5e6588521d5bc7b2d690bb /numpy/distutils/fcompiler/intel.py
parenta8e674757141889f3609890a1d89a8634abc98bb (diff)
downloadnumpy-50e69de29085387db2e0ab7768bc9b81c2712169.tar.gz
Add Intel EM64T Fortran Compiler support.
Diffstat (limited to 'numpy/distutils/fcompiler/intel.py')
-rw-r--r--numpy/distutils/fcompiler/intel.py25
1 files changed, 23 insertions, 2 deletions
diff --git a/numpy/distutils/fcompiler/intel.py b/numpy/distutils/fcompiler/intel.py
index 3f5cd2cb5..1274ba05f 100644
--- a/numpy/distutils/fcompiler/intel.py
+++ b/numpy/distutils/fcompiler/intel.py
@@ -54,9 +54,9 @@ class IntelFCompiler(FCompiler):
opt.extend(['-tpp7','-xB'])
elif cpu.is_Pentium():
opt.append('-tpp5')
- elif cpu.is_PentiumIV() or cpu.is_XEON():
+ elif cpu.is_PentiumIV() or cpu.is_Xeon():
opt.extend(['-tpp7','-xW'])
- if cpu.has_mmx():
+ if cpu.has_mmx() and not cpu.is_Xeon():
opt.append('-xM')
if cpu.has_sse2():
opt.append('-arch SSE2')
@@ -93,6 +93,27 @@ class IntelItaniumFCompiler(IntelFCompiler):
'ranlib' : ["ranlib"]
}
+class IntelEM64TFCompiler(IntelFCompiler):
+ compiler_type = 'intelem'
+
+ version_pattern = r'Intel\(R\) Fortran Compiler for Intel\(R\) EM64T-based '\
+ 'applications, Version (?P<version>[^\s*]*)'
+
+ for fc_exe in map(find_executable,['ifort','efort','efc']):
+ if os.path.isfile(fc_exe):
+ break
+
+ executables = {
+ 'version_cmd' : [fc_exe, "-FI -V -c %(fname)s.f -o %(fname)s.o" \
+ % {'fname':dummy_fortran_file()}],
+ 'compiler_f77' : [fc_exe,"-FI","-w90","-w95"],
+ 'compiler_fix' : [fc_exe,"-FI"],
+ 'compiler_f90' : [fc_exe],
+ 'linker_so' : [fc_exe,"-shared"],
+ 'archiver' : ["ar", "-cr"],
+ 'ranlib' : ["ranlib"]
+ }
+
class IntelVisualFCompiler(FCompiler):
compiler_type = 'intelv'