aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2024-10-24 04:59:19 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2024-10-24 06:03:25 +0000
commit744b44a84a841cf1514c0ceb11210b7b5a7509b2 (patch)
tree97accc5496739ac111a1a9ec7a39e1a58411cc12
parent2e1a65e8d1774c35da444bdd73204470e303bba0 (diff)
math/py-libceed: New port: CEED Library: Code for Efficient Extensible Discretizations
-rw-r--r--math/Makefile1
-rw-r--r--math/py-libceed/Makefile44
-rw-r--r--math/py-libceed/distinfo3
-rw-r--r--math/py-libceed/pkg-descr3
-rw-r--r--math/py-libceed/pkg-plist86
5 files changed, 137 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index f24073883517..6b9626e549fe 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -986,6 +986,7 @@
SUBDIR += py-keras-preprocessing
SUBDIR += py-kiwisolver
SUBDIR += py-levmar
+ SUBDIR += py-libceed
SUBDIR += py-libpoly
SUBDIR += py-linearmodels
SUBDIR += py-lmfit
diff --git a/math/py-libceed/Makefile b/math/py-libceed/Makefile
new file mode 100644
index 000000000000..f51af743227b
--- /dev/null
+++ b/math/py-libceed/Makefile
@@ -0,0 +1,44 @@
+PORTNAME= libceed
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.12.0-763
+DISTVERSIONSUFFIX= -ge3ae47f6
+CATEGORIES= math # machine-learning
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= CEED Library: Code for Efficient Extensible Discretizations
+WWW= https://libceed.org/en/latest/
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+PY_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cffi>0:devel/py-cffi@${PY_FLAVOR} \
+ ${PYNUMPY}
+BUILD_DEPENDS= gmake:devel/gmake \
+ ${PY_DEPENDS}
+RUN_DEPENDS= ${PY_DEPENDS}
+
+USES= fortran python
+USE_PYTHON= distutils autoplist pytest
+
+USE_GITHUB= yes
+GH_ACCOUNT= CEED
+GH_PROJECT= libCEED
+
+CFLAGS+= -fPIC # https://github.com/CEED/libCEED/issues/1706
+
+BINARY_ALIAS= make=${GMAKE}
+# python3=${PYTHON_CMD}
+
+post-install:
+ @${STRIP_CMD} \
+ ${STAGEDIR}${PYTHON_SITELIBDIR}/_ceed_cffi.abi3.so \
+ ${STAGEDIR}${PYTHON_SITELIBDIR}/libceed/lib/libceed.so
+
+do-test:
+ cd ${WRKSRC}/python/tests && \
+ ${SETENV} PYTHON=${PYTHON_CMD} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} ${GMAKE} test
+
+# rebuilds and reinstalls the C library, see https://github.com/CEED/libCEED/issues/1707
+
+.include <bsd.port.mk>
diff --git a/math/py-libceed/distinfo b/math/py-libceed/distinfo
new file mode 100644
index 000000000000..7484df314fb6
--- /dev/null
+++ b/math/py-libceed/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1729731290
+SHA256 (CEED-libCEED-v0.12.0-763-ge3ae47f6_GH0.tar.gz) = e7137cb55d8505500a6d85c869722a2c39bd8e45abea31bc5f5d5f3e895c6291
+SIZE (CEED-libCEED-v0.12.0-763-ge3ae47f6_GH0.tar.gz) = 3385219
diff --git a/math/py-libceed/pkg-descr b/math/py-libceed/pkg-descr
new file mode 100644
index 000000000000..c530134e1532
--- /dev/null
+++ b/math/py-libceed/pkg-descr
@@ -0,0 +1,3 @@
+libCEED provides fast algebra for element-based discretizations, designed for
+performance portability, run-time flexibility, and clean embedding in higher
+level libraries and applications.
diff --git a/math/py-libceed/pkg-plist b/math/py-libceed/pkg-plist
new file mode 100644
index 000000000000..c1c018f1bf34
--- /dev/null
+++ b/math/py-libceed/pkg-plist
@@ -0,0 +1,86 @@
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/backend.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/ceed-f32.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/ceed-f64.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/ceed.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/cuda.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/fortran.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/hip.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-atomic-add-fallback.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-gen-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-jit.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-basis-nontensor-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-basis-nontensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-basis-tensor-at-points.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-basis-tensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-operator-assemble-diagonal.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-operator-assemble.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-qfunction.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-restriction-at-points.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-restriction-curl-oriented.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-restriction-offset.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-restriction-oriented.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-ref-restriction-strided.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-shared-basis-read-write-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-shared-basis-tensor-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-shared-basis-tensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/cuda/cuda-types.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-identity.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-mass1dbuild.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-mass2dbuild.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-mass3dbuild.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-massapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-poisson1dapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-poisson1dbuild.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-poisson2dapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-poisson2dbuild.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-poisson3dapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-poisson3dbuild.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-scale.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-vectormassapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-vectorpoisson1dapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-vectorpoisson2dapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/gallery/ceed-vectorpoisson3dapply.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-gen-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-jit.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-basis-nontensor-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-basis-nontensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-basis-tensor-at-points.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-basis-tensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-operator-assemble-diagonal.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-operator-assemble.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-qfunction.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-restriction-at-points.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-restriction-curl-oriented.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-restriction-offset.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-restriction-oriented.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-ref-restriction-strided.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-shared-basis-read-write-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-shared-basis-tensor-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-shared-basis-tensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/hip/hip-types.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-grad-1d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-grad-2d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-grad-3d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-interp-1d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-interp-2d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-interp-3d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-interp-deriv-nontensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-weight-1d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-weight-2d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-weight-3d.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-basis-weight-nontensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-common-defs.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-common-nontensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/magma/magma-common-tensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/sycl/sycl-gen-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/sycl/sycl-jit.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/sycl/sycl-ref-qfunction.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/sycl/sycl-shared-basis-read-write-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/sycl/sycl-shared-basis-tensor-templates.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/sycl/sycl-shared-basis-tensor.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/jit-source/sycl/sycl-types.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceed/types.h
+%%PYTHON_SITELIBDIR%%/libceed/include/ceedf.h
+%%PYTHON_SITELIBDIR%%/libceed/lib/libceed.so
+%%PYTHON_SITELIBDIR%%/libceed/lib/pkgconfig/ceed.pc