summaryrefslogtreecommitdiff
path: root/.waf3-1.7.16-0356ded4079f8d9c0828a065ed2fdab1/waflib/Tools/ifort.py
diff options
context:
space:
mode:
authoryo mama <pepper@scannerjammer.com>2015-01-25 23:46:43 -0800
committeryo mama <pepper@scannerjammer.com>2015-01-25 23:46:43 -0800
commite49ddd41e5549c1c6abab8005edd2e8b18ee0e09 (patch)
tree017a97ce4f17c9a4422e80f56f4e638c629438d4 /.waf3-1.7.16-0356ded4079f8d9c0828a065ed2fdab1/waflib/Tools/ifort.py
working copy...first push
Diffstat (limited to '.waf3-1.7.16-0356ded4079f8d9c0828a065ed2fdab1/waflib/Tools/ifort.py')
-rw-r--r--.waf3-1.7.16-0356ded4079f8d9c0828a065ed2fdab1/waflib/Tools/ifort.py49
1 files changed, 49 insertions, 0 deletions
diff --git a/.waf3-1.7.16-0356ded4079f8d9c0828a065ed2fdab1/waflib/Tools/ifort.py b/.waf3-1.7.16-0356ded4079f8d9c0828a065ed2fdab1/waflib/Tools/ifort.py
new file mode 100644
index 0000000..a9f2528
--- /dev/null
+++ b/.waf3-1.7.16-0356ded4079f8d9c0828a065ed2fdab1/waflib/Tools/ifort.py
@@ -0,0 +1,49 @@
+#! /usr/bin/env python
+# encoding: utf-8
+# WARNING! Do not edit! http://waf.googlecode.com/git/docs/wafbook/single.html#_obtaining_the_waf_file
+
+import re
+from waflib import Utils
+from waflib.Tools import fc,fc_config,fc_scan,ar
+from waflib.Configure import conf
+@conf
+def find_ifort(conf):
+ fc=conf.find_program('ifort',var='FC')
+ fc=conf.cmd_to_list(fc)
+ conf.get_ifort_version(fc)
+ conf.env.FC_NAME='IFORT'
+@conf
+def ifort_modifier_cygwin(conf):
+ raise NotImplementedError("Ifort on cygwin not yet implemented")
+@conf
+def ifort_modifier_win32(conf):
+ fc_config.fortran_modifier_win32(conf)
+@conf
+def ifort_modifier_darwin(conf):
+ fc_config.fortran_modifier_darwin(conf)
+@conf
+def ifort_modifier_platform(conf):
+ dest_os=conf.env['DEST_OS']or Utils.unversioned_sys_platform()
+ ifort_modifier_func=getattr(conf,'ifort_modifier_'+dest_os,None)
+ if ifort_modifier_func:
+ ifort_modifier_func()
+@conf
+def get_ifort_version(conf,fc):
+ version_re=re.compile(r"ifort\s*\(IFORT\)\s*(?P<major>\d*)\.(?P<minor>\d*)",re.I).search
+ cmd=fc+['--version']
+ out,err=fc_config.getoutput(conf,cmd,stdin=False)
+ if out:
+ match=version_re(out)
+ else:
+ match=version_re(err)
+ if not match:
+ conf.fatal('cannot determine ifort version.')
+ k=match.groupdict()
+ conf.env['FC_VERSION']=(k['major'],k['minor'])
+def configure(conf):
+ conf.find_ifort()
+ conf.find_program('xiar',var='AR')
+ conf.env.ARFLAGS='rcs'
+ conf.fc_flags()
+ conf.fc_add_flags()
+ conf.ifort_modifier_platform()