diff options
Diffstat (limited to 'numpy/distutils/fcompiler/vast.py')
-rw-r--r-- | numpy/distutils/fcompiler/vast.py | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/numpy/distutils/fcompiler/vast.py b/numpy/distutils/fcompiler/vast.py new file mode 100644 index 000000000..30472d893 --- /dev/null +++ b/numpy/distutils/fcompiler/vast.py @@ -0,0 +1,53 @@ +import os +import sys + +from numpy.distutils.cpuinfo import cpu +from numpy.distutils.fcompiler.gnu import GnuFCompiler + +class VastFCompiler(GnuFCompiler): + + compiler_type = 'vast' + version_pattern = r'\s*Pacific-Sierra Research vf90 '\ + '(Personal|Professional)\s+(?P<version>[^\s]*)' + + # VAST f90 does not support -o with -c. So, object files are created + # to the current directory and then moved to build directory + object_switch = ' && function _mvfile { mv -v `basename $1` $1 ; } && _mvfile ' + + executables = { + 'version_cmd' : ["vf90", "-v"], + 'compiler_f77' : ["g77"], + 'compiler_fix' : ["f90", "-Wv,-ya"], + 'compiler_f90' : ["f90"], + 'linker_so' : ["f90"], + 'archiver' : ["ar", "-cr"], + 'ranlib' : ["ranlib"] + } + module_dir_switch = None #XXX Fix me + module_include_switch = None #XXX Fix me + + def find_executables(self): + pass + + def get_version_cmd(self): + f90 = self.compiler_f90[0] + d,b = os.path.split(f90) + vf90 = os.path.join(d,'v'+b) + return vf90 + + def get_flags_arch(self): + vast_version = self.get_version() + gnu = GnuFCompiler() + gnu.customize(None) + self.version = gnu.get_version() + opt = GnuFCompiler.get_flags_arch(self) + self.version = vast_version + return opt + +if __name__ == '__main__': + from distutils import log + log.set_verbosity(2) + from numpy.distutils.fcompiler import new_fcompiler + compiler = new_fcompiler(compiler='vast') + compiler.customize() + print compiler.get_version() |