kivy-ios/kivy_ios/recipes/numpy/numpy-1.16.4.patch

129 lines
4.7 KiB
Diff
Raw Normal View History

diff --git a/numpy/core/setup.py b/numpy/core/setup.py
index aad0aae43..407e64fe3 100644
--- a/numpy/core/setup.py
+++ b/numpy/core/setup.py
@@ -757,7 +757,9 @@ def configuration(parent_package='',top_path=None):
2019-09-28 18:06:36 +02:00
join('src', 'common', 'numpyos.c'),
]
- blas_info = get_info('blas_opt', 0)
+ # XXX IOS, no blas available
+ # blas_info = get_info('blas_opt', 0)
+ blas_info = None
if blas_info and ('HAVE_CBLAS', None) in blas_info.get('define_macros', []):
extra_info = blas_info
# These files are also in MANIFEST.in so that they are always in
@@ -822,7 +824,10 @@ def configuration(parent_package='',top_path=None):
2019-09-28 18:06:36 +02:00
join('include', 'numpy', 'npy_1_7_deprecated_api.h'),
# add library sources as distuils does not consider libraries
# dependencies
- ] + npysort_sources + npymath_sources
+
+ # XXX This breaks for iOS, it results on duplicate symbols
+ # ] + npysort_sources + npymath_sources
+ ] #+ npysort_sources + npymath_sources
multiarray_src = [
join('src', 'multiarray', 'alloc.c'),
@@ -921,7 +926,7 @@ def configuration(parent_package='',top_path=None):
2019-09-28 18:06:36 +02:00
config.add_extension('_multiarray_umath',
sources=multiarray_src + umath_src +
- npymath_sources + common_src +
+ common_src +
[generate_config_h,
generate_numpyconfig_h,
generate_numpy_api,
diff --git a/numpy/linalg/lapack_lite/python_xerbla.c b/numpy/linalg/lapack_lite/python_xerbla.c
index dfc195556..7110d1fc3 100644
--- a/numpy/linalg/lapack_lite/python_xerbla.c
+++ b/numpy/linalg/lapack_lite/python_xerbla.c
@@ -20,7 +20,7 @@
info: Number of the invalid parameter.
*/
-int xerbla_(char *srname, integer *info)
+int custom_xerbla_(char *srname, integer *info)
{
static const char format[] = "On entry to %.*s" \
" parameter number %d had an illegal value";
diff --git a/numpy/linalg/lapack_litemodule.c b/numpy/linalg/lapack_litemodule.c
index 696a6d874..d187ad2d1 100644
--- a/numpy/linalg/lapack_litemodule.c
+++ b/numpy/linalg/lapack_litemodule.c
@@ -45,7 +45,7 @@ extern int FNAME(zungqr)(int *m, int *n, int *k, f2c_doublecomplex a[],
int *lda, f2c_doublecomplex tau[],
f2c_doublecomplex work[], int *lwork, int *info);
-extern int FNAME(xerbla)(char *srname, int *info);
+extern int FNAME(custom_xerbla)(char *srname, int *info);
static PyObject *LapackError;
@@ -291,7 +291,7 @@ lapack_lite_xerbla(PyObject *NPY_UNUSED(self), PyObject *args)
NPY_BEGIN_THREADS_DEF;
NPY_BEGIN_THREADS;
- FNAME(xerbla)("test", &info);
+ FNAME(custom_xerbla)("test", &info);
NPY_END_THREADS;
if (PyErr_Occurred()) {
diff --git a/numpy/linalg/setup.py b/numpy/linalg/setup.py
index 66c07c9e1..6f81243be 100644
--- a/numpy/linalg/setup.py
+++ b/numpy/linalg/setup.py
@@ -48,7 +48,7 @@ def configuration(parent_package='', top_path=None):
# umath_linalg module
config.add_extension(
'_umath_linalg',
- sources=['umath_linalg.c.src', get_lapack_lite_sources],
+ sources=['umath_linalg.c.src', lambda e, b: []],
depends=['lapack_lite/f2c.h'],
extra_info=lapack_info,
libraries=['npymath'],
diff --git a/numpy/linalg/umath_linalg.c.src b/numpy/linalg/umath_linalg.c.src
index 9fc68a7aa..270c9bc32 100644
--- a/numpy/linalg/umath_linalg.c.src
+++ b/numpy/linalg/umath_linalg.c.src
@@ -68,6 +68,8 @@ dbg_stack_trace()
# define FNAME(x) x##_
#endif
+# define FNAME_APPLE(x) cblas_##x
+
typedef struct { float r, i; } f2c_complex;
typedef struct { double r, i; } f2c_doublecomplex;
/* typedef long int (*L_fp)(); */
@@ -284,21 +286,25 @@ FNAME(zpotri)(char *uplo, int *n,
int *info);
extern int
-FNAME(scopy)(int *n,
+FNAME_APPLE(scopy)(int *n,
float *sx, int *incx,
float *sy, int *incy);
+#define scopy_ FNAME_APPLE(scopy)
extern int
-FNAME(dcopy)(int *n,
+FNAME_APPLE(dcopy)(int *n,
double *sx, int *incx,
double *sy, int *incy);
+#define dcopy_ FNAME_APPLE(dcopy)
extern int
-FNAME(ccopy)(int *n,
+FNAME_APPLE(ccopy)(int *n,
f2c_complex *sx, int *incx,
f2c_complex *sy, int *incy);
+#define ccopy_ FNAME_APPLE(ccopy)
extern int
-FNAME(zcopy)(int *n,
+FNAME_APPLE(zcopy)(int *n,
f2c_doublecomplex *sx, int *incx,
- f2c_doublecomplex *sy, int *incy);
+ f2c_doublecomplex *sy, int *incy);
+#define zcopy_ FNAME_APPLE(zcopy)
extern float
FNAME(sdot)(int *n,