pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/math/py-scipy



Module Name:    pkgsrc
Committed By:   thor
Date:           Wed Dec 27 22:42:02 UTC 2023

Modified Files:
        pkgsrc/math/py-scipy: Makefile

Log Message:
math/py-scipy: correct linking with netlib BLAS

This fixes _superlu.so ending up without liblas linkage, which rendered parts
of scipy defunct. This features subtle interaction with the meson build logic.
Hopefully a new version handles distinct BLAS and CBLAS explictly.

Netlib and openblas variants are the only supported choices right now. It is
open how we'd interface with the custom logic regarding framework.accelerate
or mkl. This is work in progress upstream, and I am trying to influence it
so that a blaswrap package approach based on pkg-config files would work.


To generate a diff of this commit:
cvs rdiff -u -r1.74 -r1.75 pkgsrc/math/py-scipy/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/math/py-scipy/Makefile
diff -u pkgsrc/math/py-scipy/Makefile:1.74 pkgsrc/math/py-scipy/Makefile:1.75
--- pkgsrc/math/py-scipy/Makefile:1.74  Thu Dec  7 20:47:13 2023
+++ pkgsrc/math/py-scipy/Makefile       Wed Dec 27 22:42:02 2023
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.74 2023/12/07 20:47:13 thor Exp $
+# $NetBSD: Makefile,v 1.75 2023/12/27 22:42:02 thor Exp $
 
 DISTNAME=      scipy-1.11.4
-PKGREVISION=   1
+PKGREVISION=   2
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=    math python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=s/scipy/}
@@ -54,9 +54,15 @@ FFLAGS+=     -fPIC
 LDFLAGS.Darwin+=       -headerpad_max_install_names
 
 # Same as for py-numpy.
+# Except that py-scipy needs explicit linkage to libblas.so for
+# netlib (otherwise there will be missing symbols in _superlu.so (vendored).
+# Meson will locate libcblas itself with -Dblas=blas by guesswork,
+# satisfying the meson setup. Proper fix is a future meson build where
+# one can specify blas and cblas separately. The distinction
+# does not matter for openblas.
 BLAS_ACCEPTED=         ${_BLAS_TYPES}
 BLAS_C_INTERFACE=      yes
-WHEEL_ARGS+=           -Csetup-args=-Dblas=${CBLAS_PC}
+WHEEL_ARGS+=           -Csetup-args=-Dblas=${BLAS_PC}
 WHEEL_ARGS+=           -Csetup-args=-Dlapack=${LAPACK_PC}
 
 PYTHON_VERSIONS_INCOMPATIBLE=  27 38



Home | Main Index | Thread Index | Old Index