ah that makes sense. On Thu, Nov 21, 2024 at 8:18 AM Trevor Gamblin <[email protected]> wrote: > > > On 2024-11-21 11:13, Khem Raj wrote: > > On Thu, Nov 21, 2024 at 7:39 AM Trevor Gamblin via > > lists.openembedded.org <[email protected]> > > wrote: > >> - This release contains numerous API changes and bug fixes. > >> Changelog: https://github.com/numpy/numpy/releases > >> > >> - Notably, the build backend has switched to mesonpy since 1.26.4. > >> > >> - Patch 0001-numpy-core-Define-RISCV-32-support.patch had to be updated > >> to change the paths for the target files. It has now been merged > >> upstream, but isn't included in any release yet. PR for reference: > >> > >> https://github.com/numpy/numpy/pull/17780 > >> > >> - Builds OK and seems to be compatible with current piglit and pandas > >> (meta-python), which was not the case for the previous upgrade attempt > >> to numpy 2.0.1. > >> > >> - For numpy, add 'pkgconfig' to inherit to avoid errors like this at > >> do_compile: > >> > >> | Found Pkg-config: NO > >> | Run-time dependency python found: YES 3.12 > >> | Has header "Python.h" with dependency python: NO > >> | > >> | ../numpy-2.0.0/meson.build:44:2: ERROR: Problem encountered: Cannot > >> compile `Python.h`. Perhaps you need to install python-dev|python-devel > >> | > >> | A full log can be found at > >> /home/tgamblin/workspace/yocto/poky/build/tmp/work/core2-64-poky-linux/python3-numpy/2.0.0/build/meson-logs/meson-log.txt > >> > >> - Mmodify the FILES:${PN}-staticdev line to fix a QA issue. > >> > >> - This is now reproducible as of oe-core commit: 917df5ed022f > >> > >> License-Update: Change copyright year to 2024 > >> > >> buildall-qemu log: > >> > >> BUILDALL-QEMU LOG FOR python3-numpy > >> START TIME: 2024-11-20_14:02:08 > >> HOSTNAME: megalith > >> HOST OS: Debian GNU/Linux 12 (bookworm) > >> HOST KERNEL: 6.1.0-27-amd64 > >> =============== > >> BUILD RESULTS: > >> [glibc] > >> FAIL: qemuloongarch64 > >> PASS: qemuriscv32 > >> PASS: qemuarmv5 > >> PASS: qemuppc > >> PASS: qemumips64 > >> PASS: qemuriscv64 > >> PASS: qemuarm64 > >> PASS: qemuarm > >> PASS: qemux86-64 > >> PASS: qemuppc64 > >> PASS: qemux86 > >> PASS: qemumips > >> [musl] > >> FAIL: qemuloongarch64 > >> FAIL: qemuriscv32 > >> PASS: qemuarmv5 > >> PASS: qemuppc > >> PASS: qemumips64 > >> PASS: qemuriscv64 > >> PASS: qemuarm64 > >> PASS: qemuarm > >> PASS: qemux86-64 > >> PASS: qemuppc64 > >> PASS: qemux86 > >> PASS: qemumips > >> =============== > >> PASSED: 21 > >> FAILED: 3 > > Testing on such a comprehensive matrix is amazing, thanks for doing > > it. Can you share more details on qemuriscv32/musl failures ? > > This was the error I saw when I went and checked the build with > TCLIBC=musl, MACHINE=qemuriscv32: > > ERROR: Nothing PROVIDES 'virtual/libc' (but > /home/tgamblin/workspace/yocto/poky/meta/recipes-devtools/python/python3-numpy_2.1.3.bb, > /home/tgamblin/workspace/yocto/poky/meta/recipes-devtools/gcc/gcc-runtime_14.2.bb, > /home/tgamblin/workspace/yocto/poky/m) > picolibc PROVIDES virtual/libc but was skipped: incompatible with host > riscv32-poky-linux-musl (not in COMPATIBLE_HOST) > nativesdk-glibc-y2038-tests PROVIDES virtual/libc but was skipped: > glibc-testsuite requires that virtual/libc is glibc > glibc-y2038-tests PROVIDES virtual/libc but was skipped: incompatible > with host riscv32-poky-linux-musl (not in COMPATIBLE_HOST) > newlib PROVIDES virtual/libc but was skipped: incompatible with host > riscv32-poky-linux-musl (not in COMPATIBLE_HOST) > glibc PROVIDES virtual/libc but was skipped: incompatible with host > riscv32-poky-linux-musl (not in COMPATIBLE_HOST) > musl PROVIDES virtual/libc but was skipped: incompatible with host > riscv32-poky-linux-musl (not in COMPATIBLE_HOST) > ERROR: Required build target 'python3-numpy' has no buildable providers. > Missing or unbuildable dependency chain was: ['python3-numpy', > 'virtual/libc'] > > > > >> Signed-off-by: Trevor Gamblin <[email protected]> > >> --- > >> ...1-numpy-core-Define-RISCV-32-support.patch | 52 +++++++++++-------- > >> ...numpy_1.26.4.bb => python3-numpy_2.1.3.bb} | 26 ++++++---- > >> 2 files changed, 46 insertions(+), 32 deletions(-) > >> rename meta/recipes-devtools/python/{python3-numpy_1.26.4.bb => > >> python3-numpy_2.1.3.bb} (68%) > >> > >> diff --git > >> a/meta/recipes-devtools/python/python3-numpy/0001-numpy-core-Define-RISCV-32-support.patch > >> > >> b/meta/recipes-devtools/python/python3-numpy/0001-numpy-core-Define-RISCV-32-support.patch > >> index 676bdbb3afd..6da9047ec57 100644 > >> --- > >> a/meta/recipes-devtools/python/python3-numpy/0001-numpy-core-Define-RISCV-32-support.patch > >> +++ > >> b/meta/recipes-devtools/python/python3-numpy/0001-numpy-core-Define-RISCV-32-support.patch > >> @@ -1,42 +1,50 @@ > >> -From eb6d6579150bf4684603ce377c51e90ad3bb8109 Mon Sep 17 00:00:00 2001 > >> +From 0e2b652a0eff85798584116c905a2d6ad8f25d5f Mon Sep 17 00:00:00 2001 > >> From: Khem Raj <[email protected]> > >> Date: Sun, 15 Nov 2020 15:32:39 -0800 > >> Subject: [PATCH] numpy/core: Define RISCV-32 support > >> > >> Helps compile on riscv32 > >> > >> -Upstream-Status: Submitted [https://github.com/numpy/numpy/pull/17780] > >> +Upstream-Status: Backport > >> +(https://github.com/numpy/numpy/pull/17780/commits/0e2b652a0eff85798584116c905a2d6ad8f25d5f) > >> + > >> Signed-off-by: Khem Raj <[email protected]> > >> --- > >> - numpy/core/include/numpy/npy_cpu.h | 3 +++ > >> - numpy/core/include/numpy/npy_endian.h | 1 + > >> - 2 files changed, 4 insertions(+) > >> + numpy/_core/include/numpy/npy_cpu.h | 9 +++++++-- > >> + numpy/_core/include/numpy/npy_endian.h | 1 + > >> + 2 files changed, 8 insertions(+), 2 deletions(-) > >> > >> -diff --git a/numpy/core/include/numpy/npy_cpu.h > >> b/numpy/core/include/numpy/npy_cpu.h > >> -index 78d229e..04be511 100644 > >> ---- a/numpy/core/include/numpy/npy_cpu.h > >> -+++ b/numpy/core/include/numpy/npy_cpu.h > >> -@@ -19,6 +19,7 @@ > >> +diff --git a/numpy/_core/include/numpy/npy_cpu.h > >> b/numpy/_core/include/numpy/npy_cpu.h > >> +index a19f8e6bbd..15f9f12931 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_RISCV32 > >> + * NPY_CPU_LOONGARCH > >> * NPY_CPU_WASM > >> */ > >> - #ifndef NUMPY_CORE_INCLUDE_NUMPY_NPY_CPU_H_ > >> -@@ -104,6 +105,8 @@ > >> +@@ -102,8 +103,12 @@ > >> + #define NPY_CPU_ARCEL > >> + #elif defined(__arc__) && defined(__BIG_ENDIAN__) > >> #define NPY_CPU_ARCEB > >> - #elif defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 64 > >> - #define NPY_CPU_RISCV64 > >> -+#elif defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 32 > >> -+ #define NPY_CPU_RISCV32 > >> +-#elif defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 64 > >> +- #define NPY_CPU_RISCV64 > >> ++#elif defined(__riscv) > >> ++ #if __riscv_xlen == 64 > >> ++ #define NPY_CPU_RISCV64 > >> ++ #elif __riscv_xlen == 32 > >> ++ #define NPY_CPU_RISCV32 > >> ++ #endif > >> #elif defined(__loongarch__) > >> #define NPY_CPU_LOONGARCH > >> #elif defined(__EMSCRIPTEN__) > >> -diff --git a/numpy/core/include/numpy/npy_endian.h > >> b/numpy/core/include/numpy/npy_endian.h > >> -index 5e58a7f..0926212 100644 > >> ---- a/numpy/core/include/numpy/npy_endian.h > >> -+++ b/numpy/core/include/numpy/npy_endian.h > >> +diff --git a/numpy/_core/include/numpy/npy_endian.h > >> b/numpy/_core/include/numpy/npy_endian.h > >> +index 5e58a7f52c..09262120bf 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) \ > >> @@ -46,5 +54,5 @@ index 5e58a7f..0926212 100644 > >> || defined(NPY_CPU_WASM) > >> #define NPY_BYTE_ORDER NPY_LITTLE_ENDIAN > >> -- > >> -2.20.1 > >> +2.39.5 > >> > >> diff --git a/meta/recipes-devtools/python/python3-numpy_1.26.4.bb > >> b/meta/recipes-devtools/python/python3-numpy_2.1.3.bb > >> similarity index 68% > >> rename from meta/recipes-devtools/python/python3-numpy_1.26.4.bb > >> rename to meta/recipes-devtools/python/python3-numpy_2.1.3.bb > >> index fa78b07f48b..da75dff1e04 100644 > >> --- a/meta/recipes-devtools/python/python3-numpy_1.26.4.bb > >> +++ b/meta/recipes-devtools/python/python3-numpy_2.1.3.bb > >> @@ -3,7 +3,7 @@ HOMEPAGE = "https://numpy.org/" > >> DESCRIPTION = "NumPy is the fundamental package needed for scientific > >> computing with Python." > >> SECTION = "devel/python" > >> LICENSE = "BSD-3-Clause & BSD-2-Clause & PSF-2.0 & Apache-2.0 & MIT" > >> -LIC_FILES_CHKSUM = > >> "file://LICENSE.txt;md5=a752eb20459cf74a9d84ee4825e8317c" > >> +LIC_FILES_CHKSUM = > >> "file://LICENSE.txt;md5=1de863c37a83e71b1e97b64d036ea78b" > >> > >> SRCNAME = "numpy" > >> > >> @@ -13,22 +13,31 @@ SRC_URI = > >> "${GITHUB_BASE_URI}/download/v${PV}/${SRCNAME}-${PV}.tar.gz \ > >> file://fix_reproducibility.patch \ > >> file://run-ptest \ > >> " > >> -SRC_URI[sha256sum] = > >> "2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010" > >> +SRC_URI[sha256sum] = > >> "aa08e04e08aaf974d4458def539dece0d28146d866a39da5639596f4921fd761" > >> > >> GITHUB_BASE_URI = "https://github.com/numpy/numpy/releases" > >> UPSTREAM_CHECK_REGEX = "releases/tag/v?(?P<pver>\d+(\.\d+)+)$" > >> > >> -inherit ptest setuptools3 github-releases cython > >> +inherit ptest python_mesonpy github-releases cython > >> > >> S = "${WORKDIR}/numpy-${PV}" > >> > >> -CLEANBROKEN = "1" > >> +# Remove references to buildpaths from numpy's __config__.py > >> +do_install:append() { > >> + sed -i \ > >> + -e 's|${S}=||g' \ > >> + -e 's|${B}=||g' \ > >> + -e 's|${RECIPE_SYSROOT_NATIVE}=||g' \ > >> + -e 's|${RECIPE_SYSROOT_NATIVE}||g' \ > >> + -e 's|${RECIPE_SYSROOT}=||g' \ > >> + -e 's|${RECIPE_SYSROOT}||g' > >> ${D}${PYTHON_SITEPACKAGES_DIR}/numpy/__config__.py > >> > >> -do_compile:prepend() { > >> - export NPY_DISABLE_SVML=1 > >> + nativepython3 -mcompileall -s ${D} > >> ${D}${PYTHON_SITEPACKAGES_DIR}/numpy/__config__.py > >> } > >> > >> -FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/core/lib/*.a > >> ${PYTHON_SITEPACKAGES_DIR}/numpy/random/lib/*.a" > >> +FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/_core/lib/*.a \ > >> + ${PYTHON_SITEPACKAGES_DIR}/numpy/random/lib/*.a > >> \ > >> +" > >> > >> # install what is needed for numpy.test() > >> RDEPENDS:${PN} = "python3-unittest \ > >> @@ -59,7 +68,4 @@ RDEPENDS:${PN}-ptest += "python3-pytest \ > >> ldd \ > >> " > >> > >> -# Upstream has a pyproject.toml but as of 1.26.4 it's marked as > >> experimental > >> -INSANE_SKIP = "pep517-backend" > >> - > >> BBCLASSEXTEND = "native nativesdk" > >> -- > >> 2.39.5 > >> > >> > >> > >>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#207547): https://lists.openembedded.org/g/openembedded-core/message/207547 Mute This Topic: https://lists.openembedded.org/mt/109705562/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
