diff options
| author | Sebastian Berg <sebastianb@nvidia.com> | 2023-01-05 14:11:14 +0100 |
|---|---|---|
| committer | Sebastian Berg <sebastianb@nvidia.com> | 2023-01-05 14:48:54 +0100 |
| commit | d0a613cc50967d2f723111bb3b3ec83df606ddfd (patch) | |
| tree | 7feb80aaab827891b6ef8221c8353d2ab037f3ee /numpy/core/src | |
| parent | 3b5ba53b645f486319ec181871525b76393e5b75 (diff) | |
| download | numpy-d0a613cc50967d2f723111bb3b3ec83df606ddfd.tar.gz | |
MAINT: Move export for scipy arm64 helper into main module
This is a follow up to gh-22679 which addressed gh-22673.
The main thing is that we want the functions to be available after
importing NumPy, so they need to be part of multiarray.
However, `npymath` is a static library, so the symbols are not really
exported there. The former PR did actually work in practice but this
seems like it is technically the right place?
For some reason, I had to add nextafter to be able to do:
from scipy.spatial.distance import euclidean
with the SciPy 1.9.3 wheels. SciPy test collection works with this for
the 1.9.3 wheel, so this should be all the symbols hopefully.
Diffstat (limited to 'numpy/core/src')
| -rw-r--r-- | numpy/core/src/npymath/arm64_exports.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/numpy/core/src/npymath/arm64_exports.c b/numpy/core/src/npymath/arm64_exports.c index d65bb4f6d..dfa8054d7 100644 --- a/numpy/core/src/npymath/arm64_exports.c +++ b/numpy/core/src/npymath/arm64_exports.c @@ -1,12 +1,14 @@ #if defined(__arm64__) && defined(__APPLE__) #include <math.h> -/* +/* * Export these for scipy, since the SciPy build for macos arm64 * downloads the macos x86_64 NumPy, and does not error when the * linker fails to use npymathlib.a. Importing numpy will expose * these external functions * See https://github.com/numpy/numpy/issues/22673#issuecomment-1327520055 + * + * This file is actually compiled as part of the main module. */ double npy_asinh(double x) { @@ -20,4 +22,9 @@ double npy_copysign(double y, double x) { double npy_log1p(double x) { return log1p(x); } + +double npy_nextafter(double x, double y) { + return nextafter(x, y); +} + #endif |
