summaryrefslogtreecommitdiff
path: root/scipy_distutils/hpuxfcompiler.py
diff options
context:
space:
mode:
Diffstat (limited to 'scipy_distutils/hpuxfcompiler.py')
-rw-r--r--scipy_distutils/hpuxfcompiler.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/scipy_distutils/hpuxfcompiler.py b/scipy_distutils/hpuxfcompiler.py
new file mode 100644
index 000000000..60682a81e
--- /dev/null
+++ b/scipy_distutils/hpuxfcompiler.py
@@ -0,0 +1,39 @@
+import os
+import sys
+
+from cpuinfo import cpu
+from fcompiler import FCompiler
+
+class HPUXFCompiler(FCompiler):
+
+ compiler_type = 'hpux'
+ version_pattern = r'HP F90 (?P<version>[^\s*,]*)'
+
+ executables = {
+ 'version_cmd' : ["f90", "+version"],
+ 'compiler_f77' : ["f90"],
+ 'compiler_fix' : ["f90"],
+ 'compiler_f90' : ["f90"],
+ 'linker_so' : None,
+ 'archiver' : ["ar", "-cr"],
+ 'ranlib' : ["ranlib"]
+ }
+
+ def get_flags(self):
+ return ['+pic=long','+ppu']
+ def get_flags_opt(self):
+ return ['-O3']
+ def get_libraries(self):
+ return ['m']
+ def get_version(self, force=0, ok_status=[256,0]):
+ # XXX status==256 may indicate 'unrecognized option' or
+ # 'no input file'. So, version_cmd needs more work.
+ return FCompiler.get_version(self,force,ok_status)
+
+if __name__ == '__main__':
+ from distutils import log
+ log.set_verbosity(10)
+ from fcompiler import new_fcompiler
+ compiler = new_fcompiler(compiler='hpux')
+ compiler.customize()
+ print compiler.get_version()