[pypy-commit] pypy pypy-pyarray: - cpyext/include/numpy/arrayobject.h: Many more definitions. Succeeded

shmuller noreply at buildbot.pypy.org
Mon Aug 26 22:02:50 CEST 2013


Author: Stefan H. Muller <shmueller2 at gmail.com>
Branch: pypy-pyarray
Changeset: r66339:4a0adafeea01
Date: 2013-07-31 17:55 +0200
http://bitbucket.org/pypy/pypy/changeset/4a0adafeea01/

Log:	- cpyext/include/numpy/arrayobject.h: Many more definitions.
	Succeeded to compile a patched version of matplotlib with this.

diff --git a/pypy/module/cpyext/include/numpy/arrayobject.h b/pypy/module/cpyext/include/numpy/arrayobject.h
--- a/pypy/module/cpyext/include/numpy/arrayobject.h
+++ b/pypy/module/cpyext/include/numpy/arrayobject.h
@@ -26,6 +26,12 @@
 #define import_array()
 #endif
 
+#define NPY_MAXDIMS 32
+
+typedef struct {
+    npy_intp *ptr;
+    int len;
+} PyArray_Dims;
 
 /* data types copied from numpy/ndarraytypes.h 
  * keep numbers in sync with micronumpy.interp_dtype.DTypeCache
@@ -70,10 +76,18 @@
 #define NPY_COMPLEX64 NPY_CDOUBLE
 
 
+/* selection of flags */
+#define NPY_C_CONTIGUOUS    0x0001
+#define NPY_OWNDATA         0x0004
+#define NPY_ALIGNED         0x0100
+#define NPY_IN_ARRAY (NPY_C_CONTIGUOUS | NPY_ALIGNED)
+
+
 /* functions */
 #ifndef PyArray_NDIM
 
 #define PyArray_ISCONTIGUOUS(arr) (1)
+#define PyArray_Check(arr) (1)
 
 #define PyArray_NDIM     _PyArray_NDIM
 #define PyArray_DIM      _PyArray_DIM
@@ -84,11 +98,16 @@
 #define PyArray_TYPE     _PyArray_TYPE
 #define PyArray_DATA     _PyArray_DATA
 
-#define PyArray_BYTES(obj) ((char *)PyArray_DATA(obj))
+#define PyArray_Size PyArray_SIZE
+#define PyArray_BYTES(arr) ((char *)PyArray_DATA(arr))
 
 #define PyArray_FromAny _PyArray_FromAny
 #define PyArray_FromObject _PyArray_FromObject
 #define PyArray_ContiguousFromObject PyArray_FromObject
+#define PyArray_ContiguousFromAny PyArray_FromObject
+
+#define PyArray_FROMANY(obj, typenum, min, max, requirements) (obj)
+#define PyArray_FROM_OTF(obj, typenum, requirements) (obj)
 
 #define PyArray_SimpleNew _PyArray_SimpleNew
 #define PyArray_SimpleNewFromData _PyArray_SimpleNewFromData
@@ -105,9 +124,11 @@
     PyObject *arr = PyArray_EMPTY(nd, dims, type_num, fortran);
     memset(PyArray_DATA(arr), 0, PyArray_NBYTES(arr));
     return arr;
-}
+};
 */
 
+#define PyArray_Resize(self, newshape, refcheck, fortran) (NULL)
+
 /* Don't use these in loops! */
 
 #define PyArray_GETPTR1(obj, i) ((void *)(PyArray_BYTES(obj) + \


More information about the pypy-commit mailing list