From 5a5108aa0f89890cd72f77e86ead7bbf0526f9c8 Mon Sep 17 00:00:00 2001 From: yangchenguang Date: Thu, 17 Aug 2023 20:35:11 +0800 Subject: [PATCH] Add loongarch64 and sw_64 support Signed-off-by: yangchenguang --- add-loongarch-architecture-support.patch | 46 ++++++++++++++++++++++++ numpy-1.21.4-sw.patch | 23 ++++++++++++ numpy.spec | 10 ++++-- 3 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 add-loongarch-architecture-support.patch create mode 100644 numpy-1.21.4-sw.patch diff --git a/add-loongarch-architecture-support.patch b/add-loongarch-architecture-support.patch new file mode 100644 index 0000000..7b55bc1 --- /dev/null +++ b/add-loongarch-architecture-support.patch @@ -0,0 +1,46 @@ +From ca19adc35b02cff09844228f2562b1d1522e2fe4 Mon Sep 17 00:00:00 2001 +From: wang--ge +Date: Mon, 25 Apr 2022 09:49:00 +0800 +Subject: [PATCH] add loongarch architecture support + +--- + numpy/core/include/numpy/npy_cpu.h | 3 +++ + numpy/core/include/numpy/npy_endian.h | 1 + + 2 files changed, 4 insertions(+) + +diff --git a/numpy/core/include/numpy/npy_cpu.h b/numpy/core/include/numpy/npy_cpu.h +index bc1fad7..e975b01 100644 +--- a/numpy/core/include/numpy/npy_cpu.h ++++ b/numpy/core/include/numpy/npy_cpu.h +@@ -18,6 +18,7 @@ + * NPY_CPU_ARCEL + * NPY_CPU_ARCEB + * NPY_CPU_RISCV64 ++ * NPY_CPU_LOONGARCH + * NPY_CPU_WASM + */ + #ifndef _NPY_CPUARCH_H_ +@@ -103,6 +104,8 @@ + #define NPY_CPU_ARCEB + #elif defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 64 + #define NPY_CPU_RISCV64 ++#elif defined(__loongarch__) ++ #define NPY_CPU_LOONGARCH + #elif defined(__EMSCRIPTEN__) + /* __EMSCRIPTEN__ is defined by emscripten: an LLVM-to-Web compiler */ + #define NPY_CPU_WASM +diff --git a/numpy/core/include/numpy/npy_endian.h b/numpy/core/include/numpy/npy_endian.h +index aa367a0..82609ed 100644 +--- a/numpy/core/include/numpy/npy_endian.h ++++ b/numpy/core/include/numpy/npy_endian.h +@@ -49,6 +49,7 @@ + || defined(NPY_CPU_PPC64LE) \ + || defined(NPY_CPU_ARCEL) \ + || defined(NPY_CPU_RISCV64) \ ++ || defined(NPY_CPU_LOONGARCH) \ + || defined(NPY_CPU_WASM) + #define NPY_BYTE_ORDER NPY_LITTLE_ENDIAN + #elif defined(NPY_CPU_PPC) \ +-- +2.27.0 + diff --git a/numpy-1.21.4-sw.patch b/numpy-1.21.4-sw.patch new file mode 100644 index 0000000..af48839 --- /dev/null +++ b/numpy-1.21.4-sw.patch @@ -0,0 +1,23 @@ +diff -Naur numpy-1.21.4.org/numpy/core/include/numpy/npy_cpu.h numpy-1.21.4.sw/numpy/core/include/numpy/npy_cpu.h +--- numpy-1.21.4.org/numpy/core/include/numpy/npy_cpu.h 2022-02-27 02:48:27.080000000 +0000 ++++ numpy-1.21.4.sw/numpy/core/include/numpy/npy_cpu.h 2022-02-28 06:42:23.070000000 +0000 +@@ -61,6 +61,8 @@ + #define NPY_CPU_IA64 + #elif defined(__hppa) + #define NPY_CPU_HPPA ++#elif defined(__sw_64__) ++ #define NPY_CPU_SW_64 + #elif defined(__alpha__) + #define NPY_CPU_ALPHA + #elif defined(__arm__) || defined(__aarch64__) || defined(_M_ARM64) +diff -Naur numpy-1.21.4.org/numpy/core/include/numpy/npy_endian.h numpy-1.21.4.sw/numpy/core/include/numpy/npy_endian.h +--- numpy-1.21.4.org/numpy/core/include/numpy/npy_endian.h 2022-02-27 02:48:27.080000000 +0000 ++++ numpy-1.21.4.sw/numpy/core/include/numpy/npy_endian.h 2022-02-28 06:44:18.830000000 +0000 +@@ -41,6 +41,7 @@ + || defined(NPY_CPU_AMD64) \ + || defined(NPY_CPU_IA64) \ + || defined(NPY_CPU_ALPHA) \ ++ || defined(NPY_CPU_SW_64) \ + || defined(NPY_CPU_ARMEL) \ + || defined(NPY_CPU_ARMEL_AARCH32) \ + || defined(NPY_CPU_ARMEL_AARCH64) \ diff --git a/numpy.spec b/numpy.spec index 373aef5..9efe71c 100644 --- a/numpy.spec +++ b/numpy.spec @@ -2,7 +2,7 @@ Name: numpy Version: 1.21.4 -Release: 4 +Release: 5 Epoch: 1 Summary: A fast multidimensional array facility for Python @@ -18,6 +18,9 @@ Patch0: backport-CVE-2021-41496.patch Patch1: backport-CVE-2021-41495.patch Patch2: backport-CVE-2021-34141.patch +Patch1000: numpy-1.21.4-sw.patch +Patch1001: add-loongarch-architecture-support.patch + %description NumPy is the fundamental package for scientific computing with Python. It contains among other things: a powerful N-dimensional array object @@ -106,6 +109,9 @@ popd &> /dev/null %changelog +* Thu Aug 17 2023 yangchenguang - 1:1.21.4-5 +- Add loongarch64 and sw_64 support + * Thu May 26 2022 renhongxun - 1.21.4-4 - fix CVE-2021-34141 @@ -118,7 +124,7 @@ popd &> /dev/null * Fri Dec 24 2021 yuanxin - 1.21.4-1 - update version to 1.21.4 -* Thu Aug 24 2021 wulei - 1.18.5-1 +* Tue Aug 24 2021 wulei - 1.18.5-1 - update to 1.18.5 * Mon Jan 18 2021 tianwei - 1.16.5-6 -- Gitee