diff options
Diffstat (limited to 'scipy/f2py/__init__.py')
-rw-r--r-- | scipy/f2py/__init__.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/scipy/f2py/__init__.py b/scipy/f2py/__init__.py new file mode 100644 index 000000000..5c2c3e927 --- /dev/null +++ b/scipy/f2py/__init__.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python + +__all__ = ['run_main','compile','f2py_testing'] + +import os +import tempfile +import sys +import commands + +import f2py2e +run_main = f2py2e.run_main +main = f2py2e.main +import f2py_testing + +def compile(source, + modulename = 'untitled', + extra_args = '', + verbose = 1, + source_fn = None + ): + ''' Build extension module from processing source with f2py. + Read the source of this function for more information. + ''' + from scipy.distutils.exec_command import exec_command + if source_fn is None: + fname = os.path.join(tempfile.mktemp()+'.f') + else: + fname = source_fn + + f = open(fname,'w') + f.write(source) + f.close() + + args = ' -c -m %s %s %s'%(modulename,fname,extra_args) + c = '%s -c "import scipy.f2py as f2py2e;f2py2e.main()" %s' %(sys.executable,args) + s,o = exec_command(c) + if source_fn is None: + try: os.remove(fname) + except OSError: pass + return s |