[Scipy-svn] r3982 - branches/build_with_scons/scipy/sparse/linalg/eigen/arpack
scipy-svn at scipy.org
scipy-svn at scipy.org
Wed Mar 5 03:50:15 EST 2008
Author: cdavid
Date: 2008-03-05 02:50:06 -0600 (Wed, 05 Mar 2008)
New Revision: 3982
Added:
branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/SConstruct
branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/setupscons.py
Log:
sparse.linalg.eigen.arpack now builds with numscons.
Added: branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/SConstruct
===================================================================
--- branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/SConstruct 2008-03-05 08:17:19 UTC (rev 3981)
+++ branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/SConstruct 2008-03-05 08:50:06 UTC (rev 3982)
@@ -0,0 +1,44 @@
+from os.path import join as pjoin
+
+from numpy.distutils.misc_util import get_numpy_include_dirs
+
+from numscons import GetNumpyEnvironment
+from numscons import CheckF77LAPACK, CheckF77Clib
+from numscons import write_info
+
+env = GetNumpyEnvironment(ARGUMENTS)
+
+#=======================
+# Starting Configuration
+#=======================
+config = env.NumpyConfigure(custom_tests = {'CheckLAPACK' : CheckF77LAPACK,
+ 'CheckF77Clib' : CheckF77Clib})
+
+#-----------------
+# Checking Lapack
+#-----------------
+st = config.CheckLAPACK()
+if not st:
+ raise RuntimeError("no lapack found, necessary for arpack module")
+
+config.Finish()
+write_info(env)
+
+# Build arpack
+arpack_src = env.Glob(pjoin('ARPACK', 'SRC', '*.f'))
+arpack_src += env.Glob(pjoin('ARPACK', 'UTIL', '*.f'))
+arpack_src += env.Glob(pjoin('ARPACK', 'LAPACK', '*.f'))
+
+src = [str(s) for s in arpack_src]
+
+env.AppendUnique(CPPPATH = pjoin('ARPACK', 'SRC'))
+arpack_lib = env.NumpyStaticExtLibrary('arpack', source = src)
+
+# Build _arpack extension
+env.AppendUnique(CPPPATH = env['F2PYINCLUDEDIR'])
+env.AppendUnique(CPPPATH = get_numpy_include_dirs())
+
+env.NumpyFromFTemplate('arpack.pyf', 'arpack.pyf.src')
+wsrc = env.F2py(pjoin(env['build_dir'], '_arpackmodule.c'),
+ pjoin(env['build_dir'], 'arpack.pyf'))
+env.NumpyPythonExtension('_arpack', source = '_arpackmodule.c', LIBS = arpack_lib)
Copied: branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/setupscons.py (from rev 3979, branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/setup.py)
===================================================================
--- branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/setup.py 2008-03-05 08:14:54 UTC (rev 3979)
+++ branches/build_with_scons/scipy/sparse/linalg/eigen/arpack/setupscons.py 2008-03-05 08:50:06 UTC (rev 3982)
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+
+from os.path import join
+
+def configuration(parent_package='',top_path=None):
+ from numpy.distutils.misc_util import Configuration
+
+ config = Configuration('arpack',parent_package,top_path)
+#
+# lapack_opt = get_info('lapack_opt')
+#
+# if not lapack_opt:
+# raise NotFoundError,'no lapack/blas resources found'
+#
+# config = Configuration('arpack', parent_package, top_path)
+#
+# arpack_sources=[join('ARPACK','SRC', '*.f')]
+# arpack_sources.extend([join('ARPACK','UTIL', '*.f')])
+# arpack_sources.extend([join('ARPACK','LAPACK', '*.f')])
+#
+# config.add_library('arpack', sources=arpack_sources,
+# include_dirs=[join('ARPACK', 'SRC')])
+#
+#
+# config.add_extension('_arpack',
+# sources='arpack.pyf.src',
+# libraries=['arpack'],
+# extra_info = lapack_opt
+# )
+#
+ config.add_sconscript('SConstruct')
+ config.add_data_dir('tests')
+ return config
+
+if __name__ == '__main__':
+ from numpy.distutils.core import setup
+ setup(**configuration(top_path='').todict())
More information about the Scipy-svn
mailing list