def configuration(parent_package='', top_path=None): from numpy.distutils.system_info import get_info, NotFoundError from numpy.distutils.misc_util import Configuration from scipy._build_utils import get_g77_abi_wrappers, get_sgemv_fix 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 += get_g77_abi_wrappers(lapack_opt) config.add_library('arpack_scipy', sources=arpack_sources, include_dirs=[join('ARPACK', 'SRC')]) ext_sources = ['arpack.pyf.src'] ext_sources += get_sgemv_fix(lapack_opt) config.add_extension( '_arpack', sources=ext_sources, libraries=['arpack_scipy'], extra_info=lapack_opt, depends=arpack_sources, ) config.add_data_dir('tests') return config
def configuration(parent_package='',top_path=None): from numpy.distutils.system_info import get_info, NotFoundError from numpy.distutils.misc_util import Configuration from scipy._build_utils import get_g77_abi_wrappers, get_sgemv_fix 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 += get_g77_abi_wrappers(lapack_opt) config.add_library('arpack_scipy', sources=arpack_sources, include_dirs=[join('ARPACK', 'SRC')]) ext_sources = ['arpack.pyf.src'] ext_sources += get_sgemv_fix(lapack_opt) config.add_extension('_arpack', sources=ext_sources, libraries=['arpack_scipy'], extra_info=lapack_opt, depends=arpack_sources, ) config.add_data_dir('tests') # Add license files config.add_data_files('ARPACK/COPYING') return config
def configuration(parent_package='',top_path=None): from numpy.distutils.misc_util import Configuration from numpy.distutils.system_info import get_info from scipy._build_utils import get_sgemv_fix from scipy._build_utils import numpy_nodepr_api config = Configuration('dsolve',parent_package,top_path) config.add_data_dir('tests') lapack_opt = get_info('lapack_opt',notfound_action=2) if sys.platform == 'win32': superlu_defs = [('NO_TIMER',1)] else: superlu_defs = [] superlu_defs.append(('USE_VENDOR_BLAS',1)) superlu_src = join(dirname(__file__), 'SuperLU', 'SRC') sources = list(glob.glob(join(superlu_src, '*.c'))) headers = list(glob.glob(join(superlu_src, '*.h'))) if os.name == 'nt' and ('FPATH' in os.environ or 'MKLROOT' in os.environ): # when using MSVC + MKL, lsame is already in MKL sources.remove(join(superlu_src, 'lsame.c')) config.add_library('superlu_src', sources=sources, macros=superlu_defs, include_dirs=[superlu_src], ) # Extension ext_sources = ['_superlumodule.c', '_superlu_utils.c', '_superluobject.c'] ext_sources += get_sgemv_fix(lapack_opt) config.add_extension('_superlu', sources=ext_sources, libraries=['superlu_src'], depends=(sources + headers), extra_info=lapack_opt, **numpy_nodepr_api ) return config
def configuration(parent_package='', top_path=None): from numpy.distutils.system_info import get_info, NotFoundError, numpy_info from numpy.distutils.misc_util import Configuration, get_numpy_include_dirs from scipy._build_utils import (get_sgemv_fix, get_g77_abi_wrappers, split_fortran_files) config = Configuration('linalg', parent_package, top_path) lapack_opt = get_info('lapack_opt') if not lapack_opt: raise NotFoundError('no lapack/blas resources found') atlas_version = ([ v[3:-3] for k, v in lapack_opt.get('define_macros', []) if k == 'ATLAS_INFO' ] + [None])[0] if atlas_version: print(('ATLAS version: %s' % atlas_version)) # fblas: sources = ['fblas.pyf.src'] sources += get_g77_abi_wrappers(lapack_opt) sources += get_sgemv_fix(lapack_opt) config.add_extension('_fblas', sources=sources, depends=['fblas_l?.pyf.src'], extra_info=lapack_opt) # flapack: sources = ['flapack.pyf.src'] sources += get_g77_abi_wrappers(lapack_opt) config.add_extension('_flapack', sources=sources, depends=['flapack_user.pyf.src'], extra_info=lapack_opt) if atlas_version is not None: # cblas: config.add_extension('_cblas', sources=['cblas.pyf.src'], depends=['cblas.pyf.src', 'cblas_l1.pyf.src'], extra_info=lapack_opt) # clapack: config.add_extension('_clapack', sources=['clapack.pyf.src'], depends=['clapack.pyf.src'], extra_info=lapack_opt) # _flinalg: config.add_extension('_flinalg', sources=[join('src', 'det.f'), join('src', 'lu.f')], extra_info=lapack_opt) # _interpolative: routines_to_split = [ 'dfftb1', 'dfftf1', 'dffti1', 'dsint1', 'dzfft1', 'id_srand', 'idd_copyints', 'idd_id2svd0', 'idd_pairsamps', 'idd_permute', 'idd_permuter', 'idd_random_transf0', 'idd_random_transf0_inv', 'idd_random_transf_init0', 'idd_subselect', 'iddp_asvd0', 'iddp_rsvd0', 'iddr_asvd0', 'iddr_rsvd0', 'idz_estrank0', 'idz_id2svd0', 'idz_permute', 'idz_permuter', 'idz_random_transf0_inv', 'idz_random_transf_init0', 'idz_random_transf_init00', 'idz_realcomp', 'idz_realcomplex', 'idz_reco', 'idz_subselect', 'idzp_aid0', 'idzp_aid1', 'idzp_asvd0', 'idzp_rsvd0', 'idzr_asvd0', 'idzr_reco', 'idzr_rsvd0', 'zfftb1', 'zfftf1', 'zffti1', ] print('Splitting linalg.interpolative Fortran source files') dirname = os.path.split(os.path.abspath(__file__))[0] fnames = split_fortran_files(join(dirname, 'src', 'id_dist', 'src'), routines_to_split) fnames = [join('src', 'id_dist', 'src', f) for f in fnames] config.add_extension('_interpolative', fnames + ["interpolative.pyf"], extra_info=lapack_opt) # _calc_lwork: config.add_extension('_calc_lwork', [join('src', 'calc_lwork.f')], extra_info=lapack_opt) # _solve_toeplitz: config.add_extension('_solve_toeplitz', sources=[('_solve_toeplitz.c')], include_dirs=[get_numpy_include_dirs()]) config.add_data_dir('tests') # Cython BLAS/LAPACK config.add_data_files('cython_blas.pxd') config.add_data_files('cython_lapack.pxd') sources = ['_blas_subroutine_wrappers.f', '_lapack_subroutine_wrappers.f'] sources += get_g77_abi_wrappers(lapack_opt) sources += get_sgemv_fix(lapack_opt) includes = numpy_info().get_include_dirs() config.add_library('fwrappers', sources=sources, include_dirs=includes) config.add_extension('cython_blas', sources=['cython_blas.c'], depends=[ 'cython_blas.pyx', 'cython_blas.pxd', 'fortran_defs.h', '_blas_subroutines.h' ], include_dirs=['.'], libraries=['fwrappers'], extra_info=lapack_opt) config.add_extension('cython_lapack', sources=['cython_lapack.c'], depends=[ 'cython_lapack.pyx', 'cython_lapack.pxd', 'fortran_defs.h', '_lapack_subroutines.h' ], include_dirs=['.'], libraries=['fwrappers'], extra_info=lapack_opt) config.add_extension('_decomp_update', sources=['_decomp_update.c']) return config
def configuration(parent_package='',top_path=None): from numpy.distutils.system_info import get_info, NotFoundError from numpy.distutils.misc_util import Configuration, get_numpy_include_dirs from scipy._build_utils import get_sgemv_fix, get_g77_abi_wrappers, split_fortran_files config = Configuration('linalg',parent_package,top_path) lapack_opt = get_info('lapack_opt') if not lapack_opt: raise NotFoundError('no lapack/blas resources found') atlas_version = ([v[3:-3] for k,v in lapack_opt.get('define_macros',[]) if k == 'ATLAS_INFO']+[None])[0] if atlas_version: print(('ATLAS version: %s' % atlas_version)) # fblas: sources = ['fblas.pyf.src'] sources += get_g77_abi_wrappers(lapack_opt) sources += get_sgemv_fix(lapack_opt) config.add_extension('_fblas', sources=sources, depends=['fblas_l?.pyf.src'], extra_info=lapack_opt ) # flapack: sources = ['flapack.pyf.src'] sources += get_g77_abi_wrappers(lapack_opt) config.add_extension('_flapack', sources=sources, depends=['flapack_user.pyf.src'], extra_info=lapack_opt ) if atlas_version is not None: # cblas: config.add_extension('_cblas', sources=['cblas.pyf.src'], depends=['cblas.pyf.src', 'cblas_l1.pyf.src'], extra_info=lapack_opt ) # clapack: config.add_extension('_clapack', sources=['clapack.pyf.src'], depends=['clapack.pyf.src'], extra_info=lapack_opt ) # _flinalg: config.add_extension('_flinalg', sources=[join('src','det.f'),join('src','lu.f')], extra_info=lapack_opt ) # _interpolative: routines_to_split = [ 'dfftb1', 'dfftf1', 'dffti1', 'dsint1', 'dzfft1', 'id_srand', 'idd_copyints', 'idd_id2svd0', 'idd_pairsamps', 'idd_permute', 'idd_permuter', 'idd_random_transf0', 'idd_random_transf0_inv', 'idd_random_transf_init0', 'idd_subselect', 'iddp_asvd0', 'iddp_rsvd0', 'iddr_asvd0', 'iddr_rsvd0', 'idz_estrank0', 'idz_id2svd0', 'idz_permute', 'idz_permuter', 'idz_random_transf0_inv', 'idz_random_transf_init0', 'idz_random_transf_init00', 'idz_realcomp', 'idz_realcomplex', 'idz_reco', 'idz_subselect', 'idzp_aid0', 'idzp_aid1', 'idzp_asvd0', 'idzp_rsvd0', 'idzr_asvd0', 'idzr_reco', 'idzr_rsvd0', 'zfftb1', 'zfftf1', 'zffti1', ] print('Splitting linalg.interpolative Fortran source files') fnames = split_fortran_files(join(os.path.split( os.path.abspath(__file__))[0], 'src', 'id_dist', 'src'), routines_to_split) fnames = [join('src', 'id_dist', 'src', f) for f in fnames] config.add_extension('_interpolative', fnames + ["interpolative.pyf"], extra_info=lapack_opt ) # _calc_lwork: config.add_extension('_calc_lwork', [join('src', 'calc_lwork.f')], extra_info=lapack_opt) # _solve_toeplitz: config.add_extension('_solve_toeplitz', sources=[('_solve_toeplitz.c')], include_dirs=[get_numpy_include_dirs()]) config.add_data_dir('tests') config.add_data_dir('benchmarks') return config
def configuration(parent_package='', top_path=None): from numpy.distutils.system_info import get_info, NotFoundError from numpy.distutils.misc_util import Configuration from scipy._build_utils import get_sgemv_fix, get_g77_abi_wrappers, split_fortran_files config = Configuration('linalg', parent_package, top_path) lapack_opt = get_info('lapack_opt') if not lapack_opt: raise NotFoundError('no lapack/blas resources found') atlas_version = ([ v[3:-3] for k, v in lapack_opt.get('define_macros', []) if k == 'ATLAS_INFO' ] + [None])[0] if atlas_version: print(('ATLAS version: %s' % atlas_version)) # fblas: sources = ['fblas.pyf.src'] sources += get_g77_abi_wrappers(lapack_opt) sources += get_sgemv_fix(lapack_opt) config.add_extension('_fblas', sources=sources, depends=['fblas_l?.pyf.src'], extra_info=lapack_opt) # flapack: sources = ['flapack.pyf.src'] sources += get_g77_abi_wrappers(lapack_opt) config.add_extension('_flapack', sources=sources, depends=['flapack_user.pyf.src'], extra_info=lapack_opt) if atlas_version is not None: # cblas: config.add_extension('_cblas', sources=['cblas.pyf.src'], depends=['cblas.pyf.src', 'cblas_l1.pyf.src'], extra_info=lapack_opt) # clapack: config.add_extension('_clapack', sources=['clapack.pyf.src'], depends=['clapack.pyf.src'], extra_info=lapack_opt) # _flinalg: config.add_extension('_flinalg', sources=[join('src', 'det.f'), join('src', 'lu.f')], extra_info=lapack_opt) # _interpolative: routines_to_split = [ 'dfftb1', 'dfftf1', 'dffti1', 'dsint1', 'dzfft1', 'id_srand', 'idd_copyints', 'idd_id2svd0', 'idd_pairsamps', 'idd_permute', 'idd_permuter', 'idd_random_transf0', 'idd_random_transf0_inv', 'idd_random_transf_init0', 'idd_subselect', 'iddp_asvd0', 'iddp_rsvd0', 'iddr_asvd0', 'iddr_rsvd0', 'idz_estrank0', 'idz_id2svd0', 'idz_permute', 'idz_permuter', 'idz_random_transf0_inv', 'idz_random_transf_init0', 'idz_random_transf_init00', 'idz_realcomp', 'idz_realcomplex', 'idz_reco', 'idz_subselect', 'idzp_aid0', 'idzp_aid1', 'idzp_asvd0', 'idzp_rsvd0', 'idzr_asvd0', 'idzr_reco', 'idzr_rsvd0', 'zfftb1', 'zfftf1', 'zffti1', ] print('Splitting linalg.interpolative Fortran source files') fnames = split_fortran_files( join( os.path.split(os.path.abspath(__file__))[0], 'src', 'id_dist', 'src'), routines_to_split) fnames = [join('src', 'id_dist', 'src', f) for f in fnames] config.add_extension('_interpolative', fnames + ["interpolative.pyf"], extra_info=lapack_opt) config.add_data_dir('tests') config.add_data_dir('benchmarks') return config
def configuration(parent_package="", top_path=None): from distutils.sysconfig import get_python_inc from numpy.distutils.system_info import get_info, NotFoundError, numpy_info from numpy.distutils.misc_util import Configuration, get_numpy_include_dirs from scipy._build_utils import get_sgemv_fix, get_g77_abi_wrappers, split_fortran_files config = Configuration("linalg", parent_package, top_path) lapack_opt = get_info("lapack_opt") if not lapack_opt: raise NotFoundError("no lapack/blas resources found") atlas_version = ([v[3:-3] for k, v in lapack_opt.get("define_macros", []) if k == "ATLAS_INFO"] + [None])[0] if atlas_version: print(("ATLAS version: %s" % atlas_version)) # fblas: sources = ["fblas.pyf.src"] sources += get_g77_abi_wrappers(lapack_opt) sources += get_sgemv_fix(lapack_opt) config.add_extension("_fblas", sources=sources, depends=["fblas_l?.pyf.src"], extra_info=lapack_opt) # flapack: sources = ["flapack.pyf.src"] sources += get_g77_abi_wrappers(lapack_opt) config.add_extension("_flapack", sources=sources, depends=["flapack_user.pyf.src"], extra_info=lapack_opt) if atlas_version is not None: # cblas: config.add_extension( "_cblas", sources=["cblas.pyf.src"], depends=["cblas.pyf.src", "cblas_l1.pyf.src"], extra_info=lapack_opt ) # clapack: config.add_extension( "_clapack", sources=["clapack.pyf.src"], depends=["clapack.pyf.src"], extra_info=lapack_opt ) # _flinalg: config.add_extension("_flinalg", sources=[join("src", "det.f"), join("src", "lu.f")], extra_info=lapack_opt) # _interpolative: routines_to_split = [ "dfftb1", "dfftf1", "dffti1", "dsint1", "dzfft1", "id_srand", "idd_copyints", "idd_id2svd0", "idd_pairsamps", "idd_permute", "idd_permuter", "idd_random_transf0", "idd_random_transf0_inv", "idd_random_transf_init0", "idd_subselect", "iddp_asvd0", "iddp_rsvd0", "iddr_asvd0", "iddr_rsvd0", "idz_estrank0", "idz_id2svd0", "idz_permute", "idz_permuter", "idz_random_transf0_inv", "idz_random_transf_init0", "idz_random_transf_init00", "idz_realcomp", "idz_realcomplex", "idz_reco", "idz_subselect", "idzp_aid0", "idzp_aid1", "idzp_asvd0", "idzp_rsvd0", "idzr_asvd0", "idzr_reco", "idzr_rsvd0", "zfftb1", "zfftf1", "zffti1", ] print("Splitting linalg.interpolative Fortran source files") dirname = os.path.split(os.path.abspath(__file__))[0] fnames = split_fortran_files(join(dirname, "src", "id_dist", "src"), routines_to_split) fnames = [join("src", "id_dist", "src", f) for f in fnames] config.add_extension("_interpolative", fnames + ["interpolative.pyf"], extra_info=lapack_opt) # _calc_lwork: config.add_extension("_calc_lwork", [join("src", "calc_lwork.f")], extra_info=lapack_opt) # _solve_toeplitz: config.add_extension("_solve_toeplitz", sources=[("_solve_toeplitz.c")], include_dirs=[get_numpy_include_dirs()]) config.add_data_dir("tests") # Cython BLAS/LAPACK config.add_data_files("cython_blas.pxd") config.add_data_files("cython_lapack.pxd") sources = ["_blas_subroutine_wrappers.f", "_lapack_subroutine_wrappers.f"] sources += get_g77_abi_wrappers(lapack_opt) sources += get_sgemv_fix(lapack_opt) includes = numpy_info().get_include_dirs() + [get_python_inc()] config.add_library("fwrappers", sources=sources, include_dirs=includes) config.add_extension( "cython_blas", sources=["cython_blas.c"], depends=["cython_blas.pyx", "cython_blas.pxd", "fortran_defs.h", "_blas_subroutines.h"], include_dirs=["."], libraries=["fwrappers"], extra_info=lapack_opt, ) config.add_extension( "cython_lapack", sources=["cython_lapack.c"], depends=["cython_lapack.pyx", "cython_lapack.pxd", "fortran_defs.h", "_lapack_subroutines.h"], include_dirs=["."], libraries=["fwrappers"], extra_info=lapack_opt, ) config.add_extension("_decomp_update", sources=["_decomp_update.c"]) return config