Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 Jun 2026 02:57:52 +0000
From:      Charlie Li <vishwin@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 3c11b048c3de - main - math/py-numpy: add SIMD options
Message-ID:  <6a278130.1f3eb.649f8c3f@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by vishwin:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3c11b048c3de3af38dabc809a80dd0fbac51c7ff

commit 3c11b048c3de3af38dabc809a80dd0fbac51c7ff
Author:     Charlie Li <vishwin@FreeBSD.org>
AuthorDate: 2026-06-09 02:46:29 +0000
Commit:     Charlie Li <vishwin@FreeBSD.org>
CommitDate: 2026-06-09 02:46:29 +0000

    math/py-numpy: add SIMD options
    
    Per the 2.4 release notes, the default/minimum baseline for compiled
    optimisations on amd64 and i386 is increased to the v2 microarchitecture.
    Thus, those using CPUs without the full feature set from v2 will
    encounter SIGILL when running numpy with the default/minimum baseline.
    
    Add option to disable compiled optimisations, relying entirely on
    dispatched code paths when available and applicable. Not recommended
    except for very old CPUs. Also add native option.
    
    PR: 295633, 295664
---
 math/py-numpy/Makefile | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/math/py-numpy/Makefile b/math/py-numpy/Makefile
index e40e3339dc6d..865fcf7c2bb3 100644
--- a/math/py-numpy/Makefile
+++ b/math/py-numpy/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	numpy
 DISTVERSION=	2.4.6
+PORTREVISION=	1
 PORTEPOCH=	1
 CATEGORIES=	math python
 MASTER_SITES=	PYPI \
@@ -23,7 +24,8 @@ TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}hypothesis>=5.3.0:devel/py-hypothesis@${PY_
 USES=		compiler:c++17-lang cpe fortran pkgconfig python:3.11+ shebangfix
 USE_PYTHON=	autoplist concurrent cython pep517 pytest
 
-PEP517_BUILD_CONFIG_SETTING=	-Csetup-args=-Dallow-noblas=false
+PEP517_BUILD_CONFIG_SETTING=	-Csetup-args=-Dallow-noblas=false \
+				-Csetup-args=-Dcpu-baseline-detect=disabled
 
 WITHOUT_FBSD10_FIX=	yes
 SHEBANG_GLOB=	*.py
@@ -36,18 +38,26 @@ TEST_WRKSRC=	${WRKDIR}
 TEST_ARGS=	--pyargs numpy
 
 OPTIONS_DEFINE=		DOCS
-OPTIONS_SINGLE=		BLASLIB
+OPTIONS_SINGLE=		BLASLIB SIMD
 OPTIONS_SINGLE_BLASLIB=	BLIS FLEXIBLAS NETLIB OPENBLAS
-OPTIONS_DEFAULT=	OPENBLAS
+OPTIONS_SINGLE_SIMD=	MIN NATIVE NONE
+OPTIONS_DEFAULT=	MIN OPENBLAS
 
 BLIS_DESC=		BLIS BLAS-like implementation
 FLEXIBLAS_DESC=		FlexiBLAS BLAS implementation
+MIN_DESC=		Minimum recommended CPU features ${MIN_DESC_${ARCH}}
+MIN_DESC_amd64=		(x86-64-v2 microarchitecture)
+MIN_DESC_i386=		(x86-64-v2 microarchitecture)
+NONE_DESC=		Dispatched optimizations only (not recommended except old CPUs)
 
 BLIS_USES=		blaslapack:blis
 BLIS_VARS=		PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dblas=blis -Csetup-args=-Dlapack=flame"
 BLIS_BROKEN=		math/libflame does not provide a pkg-config file
 FLEXIBLAS_USES=		blaslapack:flexiblas
 FLEXIBLAS_VARS=		PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dblas=flexiblas -Csetup-args=-Dlapack=flexiblas"
+MIN_VARS=		PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dcpu-baseline=min"
+NATIVE_VARS=		PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dcpu-baseline=native"
+NONE_VARS=		PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dcpu-baseline=none"
 NETLIB_LIB_DEPENDS=	libcblas.so:math/cblas
 NETLIB_USES=		blaslapack:netlib
 NETLIB_VARS=		PEP517_BUILD_CONFIG_SETTING+="-Csetup-args=-Dblas=blas -Csetup-args=-Dlapack=lapack"


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a278130.1f3eb.649f8c3f>