commit f03d85c00ae993c3c87a5a7b2ea0c1215f57ee04 Author: Roman Yurchak Date: Mon Oct 8 10:53:11 2018 +0200 Partial fixes for BLAS/LAPACK diff --git a/scipy/linalg/setup.py b/scipy/linalg/setup.py index 2c9b9ba22..e8c7336d5 100755 --- a/scipy/linalg/setup.py +++ b/scipy/linalg/setup.py @@ -14,7 +14,13 @@ def configuration(parent_package='', top_path=None): config = Configuration('linalg', parent_package, top_path) - lapack_opt = get_info('lapack_opt') + lapack_opt = { # libraries will be auto-generated by pywasmcross + 'libraries': [], + 'include_dirs': [], + 'library_dirs': ['../../../CLAPACK/build/CLAPACK-3.2.1/'], + 'language': 'f77', + 'define_macros': [('NO_ATLAS_INFO', 1), + ('HAVE_CBLAS', None)]} if not lapack_opt: raise NotFoundError('no lapack/blas resources found') @@ -117,9 +123,22 @@ def configuration(parent_package='', top_path=None): 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 - ) + # TODO: The following fails with, + # scipy/linalg/src/id_dist/src/idd_sfft.c:114:22: error: conflicting types for 'idd_sffti1__' + # /* Subroutine */ int idd_sffti1__(integer *ind, integer *n, doublereal *wsave) + # ^ + # scipy/linalg/src/id_dist/src/idd_sfft.c:72:33: note: previous declaration is here + # extern /* Subroutine */ int idd_sffti1__(integer *, integer *, + # ^ + # scipy/linalg/src/id_dist/src/idd_sfft.c:371:22: error: conflicting types for 'idd_sfft1__' + # /* Subroutine */ int idd_sfft1__(integer *ind, integer *n, doublereal *v, + # ^ + # scipy/linalg/src/id_dist/src/idd_sfft.c:311:33: note: previous declaration is here + # extern /* Subroutine */ int idd_sfft1__(integer *, integer *, doublereal * + # + #config.add_extension('_interpolative', fnames + ["interpolative.pyf"], + # extra_info=lapack_opt + # ) # _calc_lwork: config.add_extension('_calc_lwork', diff --git a/scipy/sparse/linalg/eigen/arpack/setup.py b/scipy/sparse/linalg/eigen/arpack/setup.py index a8175a9d5..88a717fe6 100755 --- a/scipy/sparse/linalg/eigen/arpack/setup.py +++ b/scipy/sparse/linalg/eigen/arpack/setup.py @@ -11,7 +11,13 @@ def configuration(parent_package='',top_path=None): config = Configuration('arpack',parent_package,top_path) - lapack_opt = get_info('lapack_opt') + lapack_opt = { # libraries will be auto-generated by pywasmcross + 'libraries': [], + 'include_dirs': [], + 'library_dirs': ['../../../CLAPACK/build/CLAPACK-3.2.1/'], + 'language': 'f77', + 'define_macros': [('NO_ATLAS_INFO', 1), + ('HAVE_CBLAS', None)]} if not lapack_opt: raise NotFoundError('no lapack/blas resources found') diff --git a/scipy/sparse/linalg/isolve/setup.py b/scipy/sparse/linalg/isolve/setup.py index becb9237a..707e3f49d 100755 --- a/scipy/sparse/linalg/isolve/setup.py +++ b/scipy/sparse/linalg/isolve/setup.py @@ -11,7 +11,13 @@ def configuration(parent_package='',top_path=None): config = Configuration('isolve',parent_package,top_path) - lapack_opt = get_info('lapack_opt') + lapack_opt = { # libraries will be auto-generated by pywasmcross + 'libraries': [], + 'include_dirs': [], + 'library_dirs': ['../../../CLAPACK/build/CLAPACK-3.2.1/'], + 'language': 'f77', + 'define_macros': [('NO_ATLAS_INFO', 1), + ('HAVE_CBLAS', None)]} if not lapack_opt: raise NotFoundError('no lapack/blas resources found')