| 37 | # is being used to numpy.__config__ |
| 38 | class numpy_linalg_lapack_lite(system_info): |
| 39 | def calc_info(self): |
| 40 | info = {'language': 'c'} |
| 41 | size_t_size = sysconfig.get_config_var("SIZEOF_SIZE_T") |
| 42 | if size_t_size: |
| 43 | maxsize = 2**(size_t_size - 1) - 1 |
| 44 | else: |
| 45 | # We prefer using sysconfig as it allows cross-compilation |
| 46 | # but the information may be missing (e.g. on windows). |
| 47 | maxsize = sys.maxsize |
| 48 | if maxsize > 2**32: |
| 49 | # Build lapack-lite in 64-bit integer mode. |
| 50 | # The suffix is arbitrary (lapack_lite symbols follow it), |
| 51 | # but use the "64_" convention here. |
| 52 | info['define_macros'] = [ |
| 53 | ('HAVE_BLAS_ILP64', None), |
| 54 | ('BLAS_SYMBOL_SUFFIX', '64_'), |
| 55 | ('OPENBLAS_ILP64_NAMING_SCHEME', None), |
| 56 | ] |
| 57 | self.set_info(**info) |
| 58 | |
| 59 | lapack_info = numpy_linalg_lapack_lite().get_info(2) |
| 60 | |