| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
| |
Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
|
|
|
|
|
|
|
|
|
| |
Using `sys` to ask about the build Python is hostile to cross
building because it is very hard to replace the sys module with one
that gives info about the target system. On the other hand, the
sysconfig data can be replaced by setting _PYTHON_SYSCONFIGDATA_NAME.
So instead of using `sys.maxsize` to determine pointer size, use
`sysconfig.get_config_var("SIZEOF_VOID_P")`
|
|
|
|
|
|
|
|
|
| |
Group all C++ flags in one location.
This avoids redundancy and makes sure we test the flags we use, and use the
flags we test.
Fix #21302
|
|
|
|
| |
It no longer uses any @template construct.
|
|
|
|
|
|
| |
As it's a large file, I've first handled the C++ conversion part while keeping
Numpy templating system. The switch to C++ template is to be done in another
commit.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Remove support for Apple Accelerate, since it is buggy. A build error should
occur on most or all setups if linked against Accelerate. Test or import failures
should occur on setups where Accelerate is picked up dynamically.
Co-authored-by: Warren Weckesser <warren.weckesser@gmail.com>
|
| |
|
|\
| |
| | |
MAINT: linalg: use symbol suffix in fallback lapack_lite
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When building the fallback lapack_lite library for numpy.linalg,
add symbol suffix to the routines when using 64-bit integer indices.
Adjust the lapack_lite generator script to also output a header file
that renames the symbols. Moreover, also rename symbols from f2c.c, to
be sure (because they have short and generic names that may clash).
This avoids a name clash with BLAS/LAPACK names, which can cause
problems in corner cases on platforms where inadvertent symbol
overriding in dynamic libraries can occur.
|
|/
|
|
|
| |
As numpy is Python 3 only, these import statements are now unnecessary
and don't alter runtime behavior.
|
|
|
|
|
| |
Make numpy.__config__.show() to print information about the fallback
lapack_lite library when it is used.
|
|
|
|
|
| |
Build the lapack fallback library (used when no LAPACK installed) with
64-bit integer size when building on a 64-bit platform.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generalize the ILP64 BLAS/LAPACK symbol name handling to deal with
arbitrary prefix/suffix.
The build-time behavior is changed so that HAVE_BLAS_ILP64 and
BLAS_SYMBOL_SUFFIX/PREFIX defines are added to compile options
as appropriate.
Mainly to make autodetection of BLAS/LAPACK easier for downstream
numpy.distutils users, add get_info aliases 'blas_ilp64_opt',
'blas_ilp64_plain_opt', and 'blas64__opt' for any/no/""&"64_"
prefix&suffix, and the same for lapack. (Due to the way system_info
works, each also gets a separate class.)
In addition to openblas64_ which has a fixed suffix, add the (by default
suffixless) openblas_ilp64, which correspond to the most likely cases to
be present.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the dlamch function was a manually-edited file, precluding
autogeneration. We fix this by putting the manual edits in a patch file, and
then generating f2c_config.c from install/*.f, which includes dlamch.
While these functions exist in more than once place in lapack 3.0.0, they only
exist in lapack/install in newer versions. A side effect of this is that some
functions have been pulled out of `f2c_blas.c` and `f2c_s_lapack.c` into this
new file.
The edits in the patch were introduced in cadbb5f2ec84cb774023bbe8cbe6f39a93e837d7,
for a reason that is lost to time.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also uses this splitting as an excuse to ditch the _lite suffix, in
favor of a f2c_ prefix for all generated files.
Before:
* `zlapack_lite.c` - Functions for the `complex128` type.
* `dlapack_lite.c` - Every other lapack function
After:
* `f2c_z_lapack.c` - Functions for the `complex128` type.
* `f2c_c_lapack.c` - Functions for the `complex64` type.
* `f2c_d_lapack.c` - Functions for the `float64` type.
* `f2c_s_lapack.c` - Functions for the `float32` type.
* `f2c_lapack.c` - Every other lapack function
|
| |
|
|
|
|
|
|
| |
Compute the sources required to build extensions lapack_lite and
_umath_linalg in a more direct way that doesn't rely on abusing the
'depends' argument to config.add_extension().
|
|
|
|
|
|
|
| |
Run the 2to3 ws_comma fixer on *.py files. Some lines are now too long
and will need to be broken at some point. OTOH, some lines were already
too long and need to be broken at some point. Now seems as good a time
as any to do this with open PRs at a minimum.
|
|
|
|
| |
Now is as good a time as any with open PR's at a low.
|
|
|
|
| |
Also, link umath_linalg against the system BLAS/LAPACK if available.
|
|
|
|
|
|
|
| |
Add `print_function` to all `from __future__ import ...` statements
and use the python3 print function syntax everywhere.
Closes #3078.
|
|
|
|
|
|
|
|
| |
This should be harmless, as we already are division clean. However,
placement of this import takes some care. In the future a script
can be used to append new features without worry, at least until
such time as it exceeds a single line. Having that ability will
make it easier to deal with absolute imports and printing updates.
|
| |
|
| |
|
| |
|
|
|
|
| |
defined symbols) when using optimized lapack.
|
| |
|
|
|
|
| |
unoptimized lapack shipped with numpy [tested] or if optimized lapack library does not have xerbla_ defined [not tested]
|
| |
|
| |
|
| |
|
|
|
|
| |
extraneous whitespace
|
| |
|
|
|