summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python-numpy
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2018-03-16 20:40:35 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-03-20 09:59:31 +0000
commit887f583c45bd705cb6bcef111cc773d5948652e7 (patch)
tree15279f14c9b3e124d6c727992a4759ea8f6e8c0d /meta/recipes-devtools/python-numpy
parentd91238016ec899b74edaad47410326ba5301418c (diff)
downloadpoky-887f583c45bd705cb6bcef111cc773d5948652e7.tar.gz
python-numpy: Fix build for riscv64
(From OE-Core rev: d33b321bce110fae8e5730f507be70f33d91fe22) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/python-numpy')
-rw-r--r--meta/recipes-devtools/python-numpy/files/0001-npy_cpu-Add-riscv-support.patch28
-rw-r--r--meta/recipes-devtools/python-numpy/files/riscv64/_numpyconfig.h32
-rw-r--r--meta/recipes-devtools/python-numpy/files/riscv64/config.h139
-rw-r--r--meta/recipes-devtools/python-numpy/python-numpy.inc5
4 files changed, 204 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python-numpy/files/0001-npy_cpu-Add-riscv-support.patch b/meta/recipes-devtools/python-numpy/files/0001-npy_cpu-Add-riscv-support.patch
new file mode 100644
index 0000000000..4f5c4f5f0d
--- /dev/null
+++ b/meta/recipes-devtools/python-numpy/files/0001-npy_cpu-Add-riscv-support.patch
@@ -0,0 +1,28 @@
1From 30fb1bf9244bb0789c02ec7c98a923acc7200206 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 16 Mar 2018 19:55:21 -0700
4Subject: [PATCH] npy_cpu: Add riscv support
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8Upstream-Status: Submitted [https://github.com/numpy/numpy/pull/10761]
9
10 numpy/core/include/numpy/npy_cpu.h | 2 ++
11 1 file changed, 2 insertions(+)
12
13diff --git a/numpy/core/include/numpy/npy_cpu.h b/numpy/core/include/numpy/npy_cpu.h
14index 84653ea18..9e88db873 100644
15--- a/numpy/core/include/numpy/npy_cpu.h
16+++ b/numpy/core/include/numpy/npy_cpu.h
17@@ -78,6 +78,8 @@
18 #define NPY_CPU_AARCH64
19 #elif defined(__mc68000__)
20 #define NPY_CPU_M68K
21+#elif defined(__riscv)
22+ #define NPY_CPU_RISCV
23 #elif defined(__arc__) && defined(__LITTLE_ENDIAN__)
24 #define NPY_CPU_ARCEL
25 #elif defined(__arc__) && defined(__BIG_ENDIAN__)
26--
272.16.2
28
diff --git a/meta/recipes-devtools/python-numpy/files/riscv64/_numpyconfig.h b/meta/recipes-devtools/python-numpy/files/riscv64/_numpyconfig.h
new file mode 100644
index 0000000000..109deb0435
--- /dev/null
+++ b/meta/recipes-devtools/python-numpy/files/riscv64/_numpyconfig.h
@@ -0,0 +1,32 @@
1#define NPY_HAVE_ENDIAN_H 1
2#define NPY_SIZEOF_SHORT SIZEOF_SHORT
3#define NPY_SIZEOF_INT SIZEOF_INT
4#define NPY_SIZEOF_LONG SIZEOF_LONG
5#define NPY_SIZEOF_FLOAT 4
6#define NPY_SIZEOF_COMPLEX_FLOAT 8
7#define NPY_SIZEOF_DOUBLE 8
8#define NPY_SIZEOF_COMPLEX_DOUBLE 16
9#define NPY_SIZEOF_LONGDOUBLE 16
10#define NPY_SIZEOF_COMPLEX_LONGDOUBLE 32
11#define NPY_SIZEOF_PY_INTPTR_T 8
12#define NPY_SIZEOF_PY_LONG_LONG 8
13#define NPY_SIZEOF_LONGLONG 8
14#define NPY_SIZEOF_OFF_T 8
15#define NPY_NO_SMP 0
16#define NPY_HAVE_DECL_ISNAN
17#define NPY_HAVE_DECL_ISINF
18#define NPY_HAVE_DECL_ISFINITE
19#define NPY_HAVE_DECL_SIGNBIT
20#define NPY_USE_C99_COMPLEX 1
21#define NPY_HAVE_COMPLEX_DOUBLE 1
22#define NPY_HAVE_COMPLEX_FLOAT 1
23#define NPY_HAVE_COMPLEX_LONG_DOUBLE 1
24#define NPY_ENABLE_SEPARATE_COMPILATION 1
25#define NPY_USE_C99_FORMATS 1
26#define NPY_VISIBILITY_HIDDEN __attribute__((visibility("hidden")))
27#define NPY_ABI_VERSION 0x01000009
28#define NPY_API_VERSION 0x0000000A
29
30#ifndef __STDC_FORMAT_MACROS
31#define __STDC_FORMAT_MACROS 1
32#endif
diff --git a/meta/recipes-devtools/python-numpy/files/riscv64/config.h b/meta/recipes-devtools/python-numpy/files/riscv64/config.h
new file mode 100644
index 0000000000..c30b868f2f
--- /dev/null
+++ b/meta/recipes-devtools/python-numpy/files/riscv64/config.h
@@ -0,0 +1,139 @@
1#define HAVE_ENDIAN_H 1
2#define SIZEOF_PY_INTPTR_T 8
3#define SIZEOF_PY_LONG_LONG 8
4#define MATHLIB m
5#define HAVE_SIN 1
6#define HAVE_COS 1
7#define HAVE_TAN 1
8#define HAVE_SINH 1
9#define HAVE_COSH 1
10#define HAVE_TANH 1
11#define HAVE_FABS 1
12#define HAVE_FLOOR 1
13#define HAVE_CEIL 1
14#define HAVE_SQRT 1
15#define HAVE_LOG10 1
16#define HAVE_LOG 1
17#define HAVE_EXP 1
18#define HAVE_ASIN 1
19#define HAVE_ACOS 1
20#define HAVE_ATAN 1
21#define HAVE_FMOD 1
22#define HAVE_MODF 1
23#define HAVE_FREXP 1
24#define HAVE_LDEXP 1
25#define HAVE_RINT 1
26#define HAVE_TRUNC 1
27#define HAVE_EXP2 1
28#define HAVE_LOG2 1
29#define HAVE_ATAN2 1
30#define HAVE_POW 1
31#define HAVE_NEXTAFTER 1
32#define HAVE_SINF 1
33#define HAVE_COSF 1
34#define HAVE_TANF 1
35#define HAVE_SINHF 1
36#define HAVE_COSHF 1
37#define HAVE_TANHF 1
38#define HAVE_FABSF 1
39#define HAVE_FLOORF 1
40#define HAVE_CEILF 1
41#define HAVE_RINTF 1
42#define HAVE_TRUNCF 1
43#define HAVE_SQRTF 1
44#define HAVE_LOG10F 1
45#define HAVE_LOGF 1
46#define HAVE_LOG1PF 1
47#define HAVE_EXPF 1
48#define HAVE_EXPM1F 1
49#define HAVE_ASINF 1
50#define HAVE_ACOSF 1
51#define HAVE_ATANF 1
52#define HAVE_ASINHF 1
53#define HAVE_ACOSHF 1
54#define HAVE_ATANHF 1
55#define HAVE_HYPOTF 1
56#define HAVE_ATAN2F 1
57#define HAVE_POWF 1
58#define HAVE_FMODF 1
59#define HAVE_MODFF 1
60#define HAVE_FREXPF 1
61#define HAVE_LDEXPF 1
62#define HAVE_EXP2F 1
63#define HAVE_LOG2F 1
64#define HAVE_COPYSIGNF 1
65#define HAVE_NEXTAFTERF 1
66#define HAVE_SINL 1
67#define HAVE_COSL 1
68#define HAVE_TANL 1
69#define HAVE_SINHL 1
70#define HAVE_COSHL 1
71#define HAVE_TANHL 1
72#define HAVE_FABSL 1
73#define HAVE_FLOORL 1
74#define HAVE_CEILL 1
75#define HAVE_RINTL 1
76#define HAVE_TRUNCL 1
77#define HAVE_SQRTL 1
78#define HAVE_LOG10L 1
79#define HAVE_LOGL 1
80#define HAVE_LOG1PL 1
81#define HAVE_EXPL 1
82#define HAVE_EXPM1L 1
83#define HAVE_ASINL 1
84#define HAVE_ACOSL 1
85#define HAVE_ATANL 1
86#define HAVE_ASINHL 1
87#define HAVE_ACOSHL 1
88#define HAVE_ATANHL 1
89#define HAVE_HYPOTL 1
90#define HAVE_ATAN2L 1
91#define HAVE_POWL 1
92#define HAVE_FMODL 1
93#define HAVE_MODFL 1
94#define HAVE_FREXPL 1
95#define HAVE_LDEXPL 1
96#define HAVE_EXP2L 1
97#define HAVE_LOG2L 1
98#define HAVE_COPYSIGNL 1
99#define HAVE_NEXTAFTERL 1
100#define HAVE_DECL_SIGNBIT
101#define HAVE_COMPLEX_H 1
102#define HAVE_CREAL 1
103#define HAVE_CIMAG 1
104#define HAVE_CABS 1
105#define HAVE_CARG 1
106#define HAVE_CEXP 1
107#define HAVE_CSQRT 1
108#define HAVE_CLOG 1
109#define HAVE_CCOS 1
110#define HAVE_CSIN 1
111#define HAVE_CPOW 1
112#define HAVE_CREALF 1
113#define HAVE_CIMAGF 1
114#define HAVE_CABSF 1
115#define HAVE_CARGF 1
116#define HAVE_CEXPF 1
117#define HAVE_CSQRTF 1
118#define HAVE_CLOGF 1
119#define HAVE_CCOSF 1
120#define HAVE_CSINF 1
121#define HAVE_CPOWF 1
122#define HAVE_CREALL 1
123#define HAVE_CIMAGL 1
124#define HAVE_CABSL 1
125#define HAVE_CARGL 1
126#define HAVE_CEXPL 1
127#define HAVE_CSQRTL 1
128#define HAVE_CLOGL 1
129#define HAVE_CCOSL 1
130#define HAVE_CSINL 1
131#define HAVE_CPOWL 1
132#define HAVE_LDOUBLE_IEEE_QUAD_LE 1
133#ifndef __cplusplus
134/* #undef inline */
135#endif
136
137#ifndef _NPY_NPY_CONFIG_H_
138#error config.h should never be included directly, include npy_config.h instead
139#endif
diff --git a/meta/recipes-devtools/python-numpy/python-numpy.inc b/meta/recipes-devtools/python-numpy/python-numpy.inc
index 10af4c50e3..5c5f0c837a 100644
--- a/meta/recipes-devtools/python-numpy/python-numpy.inc
+++ b/meta/recipes-devtools/python-numpy/python-numpy.inc
@@ -8,6 +8,7 @@ SRCNAME = "numpy"
8SRC_URI = "https://github.com/${SRCNAME}/${SRCNAME}/releases/download/v${PV}/${SRCNAME}-${PV}.tar.gz \ 8SRC_URI = "https://github.com/${SRCNAME}/${SRCNAME}/releases/download/v${PV}/${SRCNAME}-${PV}.tar.gz \
9 file://0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch \ 9 file://0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch \
10 file://fix_shebang_f2py.patch \ 10 file://fix_shebang_f2py.patch \
11 file://0001-npy_cpu-Add-riscv-support.patch \
11 ${CONFIGFILESURI} " 12 ${CONFIGFILESURI} "
12SRC_URI[md5sum] = "0e09f20f62ab9f8a02cb7bd3fd023482" 13SRC_URI[md5sum] = "0e09f20f62ab9f8a02cb7bd3fd023482"
13SRC_URI[sha256sum] = "8708a775be9a9a457b80a49193c57bd9d51a8a195ed1f1c4b8e89eaf3aa646ee" 14SRC_URI[sha256sum] = "8708a775be9a9a457b80a49193c57bd9d51a8a195ed1f1c4b8e89eaf3aa646ee"
@@ -69,6 +70,10 @@ CONFIGFILESURI_mipsarchn32el = " \
69 file://config.h \ 70 file://config.h \
70 file://_numpyconfig.h \ 71 file://_numpyconfig.h \
71" 72"
73CONFIGFILESURI_riscv64 = " \
74 file://config.h \
75 file://_numpyconfig.h \
76"
72 77
73S = "${WORKDIR}/numpy-${PV}" 78S = "${WORKDIR}/numpy-${PV}"
74 79