rekado pushed a commit to branch python-team
in repository guix.
commit bed9695f3e0c68b28ad321a991c5b9accbc7fcaa
Author: Sharlatan Hellseher <[email protected]>
AuthorDate: Fri Jan 24 08:05:33 2025 +0000
gnu: python-numpy: Update to 1.26.2.
* gnu/packages/python-xyz.scm (python-numpy): Update to 1.26.2.
[arguments] <phases>: Add 'hide-gfortran.
[native-inputs]: Remove python-cython.
Change-Id: I1f02d45dd5c5bc7ad248dbbdc63a8e6a7a21ca9f
Reviewed-by: Ludovic Courtès <[email protected]>
---
gnu/packages/python-xyz.scm | 29 ++++++++++++++++++++++-------
1 file changed, 22 insertions(+), 7 deletions(-)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a69cbe02b9..3b2b0b74e9 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9460,11 +9460,15 @@ writing C extensions for Python as easy as Python
itself.")
(define-public python-numpy
(package
(name "python-numpy")
- ;; XXX: Any other versions up to 1.26.4 failed to build with error similar
- ;; to: 'fenv_t' has not been declared in '::' 58 | using ::fenv_t;
- ;; See
<https://github.com/numpy/numpy/issues/21075#issuecomment-1047976197>,
- ;; <https://github.com/numpy/numpy/issues/24318>.
- (version "1.24.4")
+ ;; XXX: Starting from v1.26.0 the project includes a vendored-meson which
+ ;; is needed for SIMD and BLAS/LAPACK features that are not yet available
+ ;; in upstream Meson.
+ ;;
+ ;; See:
+ ;; - URL <https://raw.githubusercontent.com/numpy/numpy>
+ ;; - commit :: 2f3549c9d7c5048621568e431c86bc7530742723
+ ;; - file <doc/source/building/understanding_meson.rst>
+ (version "1.26.2")
(source
(origin
(method url-fetch)
@@ -9473,7 +9477,7 @@ writing C extensions for Python as easy as Python
itself.")
version "/numpy-" version ".tar.gz"))
(sha256
(base32
- "0qwldmkq5bns561ppkz7psphc4jqfj5j1x4dhq0i8r4qwjjf7xc0"))))
+ "1snknqb4hmv6b720nsaz21g7h6z1ikdvnsqyy5vmgavnfr23hmzn"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -9482,6 +9486,18 @@ writing C extensions for Python as easy as Python
itself.")
(ice-9 format))
#:phases
#~(modify-phases %standard-phases
+ ;; XXX: It fails with an issue "'fenv_t' has not been declared..."
+ ;; when the gfortran header is used. Remove gfortran from
+ ;; CPLUS_INCLUDE_PATH as a workaround. Taken from
+ ;; <https://issues.guix.gnu.org/73439#45>.
+ (add-after 'set-paths 'hide-gfortran
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((gfortran (assoc-ref inputs "gfortran")))
+ (setenv "CPLUS_INCLUDE_PATH"
+ (string-join
+ (delete (string-append gfortran "/include/c++")
+ (string-split (getenv "CPLUS_INCLUDE_PATH")
#\:))
+ ":")))))
(add-before 'build 'parallelize-build
(lambda _
(setenv "NPY_NUM_BUILD_JOBS"
@@ -9564,7 +9580,6 @@ include_dirs = ~:*~a/include~%"
(list gfortran
meson-python
pkg-config
- python-cython ;; overwrite Cython from meson-python
python-hypothesis
python-mypy
python-pytest