Wed May 25 19:22:20 2022 UTC ()
py-numpy: just assume the __builtin_prefetch configure test works

Also bump PKGREVISION since this is an installed header.


(tnn)
diff -r1.95 -r1.96 pkgsrc/math/py-numpy/Makefile
diff -r1.74 -r1.75 pkgsrc/math/py-numpy/distinfo
diff -r1.1 -r1.2 pkgsrc/math/py-numpy/patches/patch-numpy_core_include_numpy_npy__common.h

cvs diff -r1.95 -r1.96 pkgsrc/math/py-numpy/Makefile (switch to unified diff)

--- pkgsrc/math/py-numpy/Makefile 2022/05/25 19:09:25 1.95
+++ pkgsrc/math/py-numpy/Makefile 2022/05/25 19:22:20 1.96
@@ -1,72 +1,72 @@ @@ -1,72 +1,72 @@
1# $NetBSD: Makefile,v 1.95 2022/05/25 19:09:25 tnn Exp $ 1# $NetBSD: Makefile,v 1.96 2022/05/25 19:22:20 tnn Exp $
2 2
3DISTNAME= numpy-1.22.4 3DISTNAME= numpy-1.22.4
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5PKGREVISION= 1 5PKGREVISION= 2
6CATEGORIES= math python 6CATEGORIES= math python
7MASTER_SITES= ${MASTER_SITE_PYPI:=n/numpy/} 7MASTER_SITES= ${MASTER_SITE_PYPI:=n/numpy/}
8EXTRACT_SUFX= .zip 8EXTRACT_SUFX= .zip
9 9
10MAINTAINER= pkgsrc-users@NetBSD.org 10MAINTAINER= pkgsrc-users@NetBSD.org
11HOMEPAGE= https://www.numpy.org/ 11HOMEPAGE= https://www.numpy.org/
12COMMENT= Array processing for numbers, strings, records, and objects 12COMMENT= Array processing for numbers, strings, records, and objects
13LICENSE= modified-bsd 13LICENSE= modified-bsd
14 14
15TEST_DEPENDS+= ${PYPKGPREFIX}-hypothesis-[0-9]*:../../devel/py-hypothesis 15TEST_DEPENDS+= ${PYPKGPREFIX}-hypothesis-[0-9]*:../../devel/py-hypothesis
16TEST_DEPENDS+= ${PYPKGPREFIX}-nose-[0-9]*:../../devel/py-nose 16TEST_DEPENDS+= ${PYPKGPREFIX}-nose-[0-9]*:../../devel/py-nose
17TEST_DEPENDS+= ${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test 17TEST_DEPENDS+= ${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
18 18
19# error: 'for' loop initial declarations are only allowed in C99 mode 19# error: 'for' loop initial declarations are only allowed in C99 mode
20USE_LANGUAGES= c99 c++11 fortran 20USE_LANGUAGES= c99 c++11 fortran
21 21
22.include "../../math/py-numpy/Makefile.make_env" 22.include "../../math/py-numpy/Makefile.make_env"
23 23
24REPLACE_PYTHON+= *.py */*.py */*/*.py */*/*/*.py */*/*/*/*.py 24REPLACE_PYTHON+= *.py */*.py */*/*.py */*/*/*.py */*/*/*/*.py
25 25
26PYTHON_VERSIONS_INCOMPATIBLE= 27 37 26PYTHON_VERSIONS_INCOMPATIBLE= 27 37
27 27
28USE_PKG_RESOURCES= yes 28USE_PKG_RESOURCES= yes
29 29
30# XXX Avoid picking up other compilers when installed 30# XXX Avoid picking up other compilers when installed
31.include "../../mk/compiler.mk" 31.include "../../mk/compiler.mk"
32 32
33.if defined(PKGSRC_FORTRAN) && ${PKGSRC_FORTRAN} == "g95" 33.if defined(PKGSRC_FORTRAN) && ${PKGSRC_FORTRAN} == "g95"
34PYSETUPBUILDARGS+= --fcompiler=g95 34PYSETUPBUILDARGS+= --fcompiler=g95
35.elif defined(PKGSRC_FORTRAN) && ${PKGSRC_FORTRAN} == "gfortran" 35.elif defined(PKGSRC_FORTRAN) && ${PKGSRC_FORTRAN} == "gfortran"
36PYSETUPBUILDARGS+= --fcompiler=gnu95 36PYSETUPBUILDARGS+= --fcompiler=gnu95
37.elif !empty(PKGSRC_COMPILER:Mgcc) 37.elif !empty(PKGSRC_COMPILER:Mgcc)
38PYSETUPBUILDARGS+= --fcompiler=gnu 38PYSETUPBUILDARGS+= --fcompiler=gnu
39.endif 39.endif
40 40
41# This package bypasses the wrappers and calls the compilers directly when 41# This package bypasses the wrappers and calls the compilers directly when
42# linking, so ensure that we pass through requisite options. 42# linking, so ensure that we pass through requisite options.
43LDFLAGS+= ${_COMPILER_ABI_FLAG.${ABI}} 43LDFLAGS+= ${_COMPILER_ABI_FLAG.${ABI}}
44 44
45BLAS_ACCEPTED= ${_BLAS_TYPES} accelerate.framework 45BLAS_ACCEPTED= ${_BLAS_TYPES} accelerate.framework
46BLAS_C_INTERFACE= yes 46BLAS_C_INTERFACE= yes
47CPPFLAGS+= ${BLAS_INCLUDES} 47CPPFLAGS+= ${BLAS_INCLUDES}
48 48
49.include "../../mk/bsd.prefs.mk" 49.include "../../mk/bsd.prefs.mk"
50 50
51# numpy fails using the gold linker with: 51# numpy fails using the gold linker with:
52# fatal error: --sysroot=: must take a non-empty argument 52# fatal error: --sysroot=: must take a non-empty argument
53# Work around it on DragonFly by specifying the classic gnu linker 53# Work around it on DragonFly by specifying the classic gnu linker
54MAKE_ENV.DragonFly+= LDVER=ld.bfd 54MAKE_ENV.DragonFly+= LDVER=ld.bfd
55 55
56pre-install: 56pre-install:
57 ${RM} -f ${WRKSRC}/numpy/core/include/numpy/npy_common.h.orig 57 ${RM} -f ${WRKSRC}/numpy/core/include/numpy/npy_common.h.orig
58 58
59post-install: 59post-install:
60 cd ${DESTDIR}${PREFIX}/bin && ${RM} f2py || ${TRUE} 60 cd ${DESTDIR}${PREFIX}/bin && ${RM} f2py || ${TRUE}
61 cd ${DESTDIR}${PREFIX}/bin && ${RM} f2py3 || ${TRUE} 61 cd ${DESTDIR}${PREFIX}/bin && ${RM} f2py3 || ${TRUE}
62 62
63do-test: 63do-test:
64 cd ${WRKDIR} && \ 64 cd ${WRKDIR} && \
65 ${RUN} PYTHONPATH=${DESTDIR}${PREFIX}/${PYSITELIB} ${PYTHONBIN} -c "import numpy; numpy.test()" 65 ${RUN} PYTHONPATH=${DESTDIR}${PREFIX}/${PYSITELIB} ${PYTHONBIN} -c "import numpy; numpy.test()"
66 66
67BUILDLINK_API_DEPENDS.py-cython+= ${PYPKGPREFIX}-cython>=0.29.21 67BUILDLINK_API_DEPENDS.py-cython+= ${PYPKGPREFIX}-cython>=0.29.21
68.include "../../devel/py-cython/buildlink3.mk" 68.include "../../devel/py-cython/buildlink3.mk"
69.include "../../lang/python/application.mk" 69.include "../../lang/python/application.mk"
70.include "../../lang/python/egg.mk" 70.include "../../lang/python/egg.mk"
71.include "../../mk/blas.buildlink3.mk" 71.include "../../mk/blas.buildlink3.mk"
72.include "../../mk/bsd.pkg.mk" 72.include "../../mk/bsd.pkg.mk"

cvs diff -r1.74 -r1.75 pkgsrc/math/py-numpy/distinfo (switch to unified diff)

--- pkgsrc/math/py-numpy/distinfo 2022/05/25 19:09:25 1.74
+++ pkgsrc/math/py-numpy/distinfo 2022/05/25 19:22:20 1.75
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1$NetBSD: distinfo,v 1.74 2022/05/25 19:09:25 tnn Exp $ 1$NetBSD: distinfo,v 1.75 2022/05/25 19:22:20 tnn Exp $
2 2
3BLAKE2s (numpy-1.22.4.zip) = 020700e15b661d064377106b6c3ecd5959c524e32cc2f3d1b97739894bbbcff8 3BLAKE2s (numpy-1.22.4.zip) = 020700e15b661d064377106b6c3ecd5959c524e32cc2f3d1b97739894bbbcff8
4SHA512 (numpy-1.22.4.zip) = bb2993459157c43f8c419de98be1c832f108b4eb6b96e1d20f406eccd782681ad8d0f8653637962ac592abe7d75719c17678ec97f035f6c87d4c7f939a1a8a48 4SHA512 (numpy-1.22.4.zip) = bb2993459157c43f8c419de98be1c832f108b4eb6b96e1d20f406eccd782681ad8d0f8653637962ac592abe7d75719c17678ec97f035f6c87d4c7f939a1a8a48
5Size (numpy-1.22.4.zip) = 11458830 bytes 5Size (numpy-1.22.4.zip) = 11458830 bytes
6SHA1 (patch-numpy_core_include_numpy_npy__common.h) = 2560358bbef62b72281f95b8d62b90b6c032f9c5 6SHA1 (patch-numpy_core_include_numpy_npy__common.h) = 354e336b98f634b6298d0b1d0e85ef1a9d240bff
7SHA1 (patch-numpy_core_setup.py) = 01f90b7eb700cfa51edded31498c2de4c3850848 7SHA1 (patch-numpy_core_setup.py) = 01f90b7eb700cfa51edded31498c2de4c3850848
8SHA1 (patch-numpy_core_src_npymath_npy__math__private.h) = e3b8e751fd0b6b6c6794d714aa5f60dfe9d7f421 8SHA1 (patch-numpy_core_src_npymath_npy__math__private.h) = e3b8e751fd0b6b6c6794d714aa5f60dfe9d7f421
9SHA1 (patch-numpy_distutils_command_config.py) = eb37d28482689703e0c1a264f9768409cf8bb4b6 9SHA1 (patch-numpy_distutils_command_config.py) = eb37d28482689703e0c1a264f9768409cf8bb4b6
10SHA1 (patch-numpy_distutils_fcompiler_____init____.py) = 49d070da5b48bd9818b37ac3254341fa68503c53 10SHA1 (patch-numpy_distutils_fcompiler_____init____.py) = 49d070da5b48bd9818b37ac3254341fa68503c53
11SHA1 (patch-numpy_distutils_fcompiler_g95.py) = be73b64a3e551df998b6a904d6db762bf28a98ed 11SHA1 (patch-numpy_distutils_fcompiler_g95.py) = be73b64a3e551df998b6a904d6db762bf28a98ed
12SHA1 (patch-numpy_distutils_fcompiler_gnu.py) = 1ab3fd7b3f42328f4094f1b21a65c05ae4d975b7 12SHA1 (patch-numpy_distutils_fcompiler_gnu.py) = 1ab3fd7b3f42328f4094f1b21a65c05ae4d975b7
13SHA1 (patch-numpy_linalg_lapack__litemodule.c) = e97ec871c2f33c3121b3c8471a9e5a74c3c798c8 13SHA1 (patch-numpy_linalg_lapack__litemodule.c) = e97ec871c2f33c3121b3c8471a9e5a74c3c798c8
14SHA1 (patch-numpy_linalg_setup.py) = 867a2aba13ebb60b67ac2824a4cb1aff2e1231ee 14SHA1 (patch-numpy_linalg_setup.py) = 867a2aba13ebb60b67ac2824a4cb1aff2e1231ee

cvs diff -r1.1 -r1.2 pkgsrc/math/py-numpy/patches/patch-numpy_core_include_numpy_npy__common.h (switch to unified diff)

--- pkgsrc/math/py-numpy/patches/patch-numpy_core_include_numpy_npy__common.h 2022/05/25 19:09:25 1.1
+++ pkgsrc/math/py-numpy/patches/patch-numpy_core_include_numpy_npy__common.h 2022/05/25 19:22:20 1.2
@@ -1,17 +1,17 @@ @@ -1,17 +1,17 @@
1$NetBSD: patch-numpy_core_include_numpy_npy__common.h,v 1.1 2022/05/25 19:09:25 tnn Exp $ 1$NetBSD: patch-numpy_core_include_numpy_npy__common.h,v 1.2 2022/05/25 19:22:20 tnn Exp $
2 2
3Fix build on non-x86: 3Fix build on non-x86:
4The configure test for __builtin_prefetch is broken with clang. 4The configure test for __builtin_prefetch is broken with clang.
5_configtest.c:6:3: error: builtin functions must be directly called 5_configtest.c:6:3: error: builtin functions must be directly called
6 6
7--- numpy/core/include/numpy/npy_common.h.orig 2022-05-20 05:46:10.000000000 +0000 7--- numpy/core/include/numpy/npy_common.h.orig 2022-05-20 05:46:10.000000000 +0000
8+++ numpy/core/include/numpy/npy_common.h 8+++ numpy/core/include/numpy/npy_common.h
9@@ -116,7 +116,7 @@ 9@@ -116,7 +116,7 @@
10 #define NPY_UNLIKELY(x) (x) 10 #define NPY_UNLIKELY(x) (x)
11 #endif 11 #endif
12  12
13-#ifdef HAVE___BUILTIN_PREFETCH 13-#ifdef HAVE___BUILTIN_PREFETCH
14+#if !defined(__i386__) && !defined(__x86_64__) 14+#if 1
15 /* unlike _mm_prefetch also works on non-x86 */ 15 /* unlike _mm_prefetch also works on non-x86 */
16 #define NPY_PREFETCH(x, rw, loc) __builtin_prefetch((x), (rw), (loc)) 16 #define NPY_PREFETCH(x, rw, loc) __builtin_prefetch((x), (rw), (loc))
17 #else 17 #else