diff options
-rw-r--r-- | .SRCINFO | 15 | ||||
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | PKGBUILD | 62 |
3 files changed, 52 insertions, 26 deletions
@@ -1,18 +1,23 @@ pkgbase = python-mpi4py-intel pkgdesc = Python bindings for the Message Passing Interface compiled with intel mpi - pkgver = 3.1.4 + pkgver = 3.1.5 pkgrel = 1 url = https://github.com/mpi4py/mpi4py arch = x86_64 license = custom:BSD-2-clause + checkdepends = python-pytest + checkdepends = python-numba + makedepends = python-build + makedepends = python-installer makedepends = python-setuptools - makedepends = cython + makedepends = python-wheel + makedepends = cython0 depends = python - depends = intel-oneapi-compiler + depends = intel-oneapi-basekit provides = python-mpi4py conflicts = python-mpi4py options = !emptydirs - source = mpi4py-3.1.4.tar.gz::https://github.com/mpi4py/mpi4py/archive/3.1.4.tar.gz - sha512sums = 074ac690c7606e104b6f7a82c03eb99906f6efe2556c0ecba14a8949a3f9b263d7a75b7f714c37c83ac971fbee3e60bd0bbb3110b37ee9bd9a6fdc5041d78095 + source = mpi4py-3.1.5.tar.gz::https://github.com/mpi4py/mpi4py/archive/3.1.5.tar.gz + sha512sums = 705f1e88952e78612284c70fd1b11abacd524aeb25a5d8db22f5d94b35446eea9f60d6078619bc12b20dc85dd944ea8b8b5d4b2faeeda7219d2271c685c07df1 pkgname = python-mpi4py-intel diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..72e8ffc0db8a --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +* @@ -3,45 +3,65 @@ # Based on python-mpi4py, maintained by Bruno Pagani <archange@archlinux.org> and et.al. _base=mpi4py pkgname=python-${_base}-intel -pkgver=3.1.4 +pkgver=3.1.5 pkgrel=1 pkgdesc="Python bindings for the Message Passing Interface compiled with intel mpi" arch=(x86_64) url="https://github.com/${_base}/${_base}" license=('custom:BSD-2-clause') -depends=(python intel-oneapi-compiler) # "intel-oneapi-mpi=2023.0.0" -makedepends=(python-setuptools cython) +depends=(python intel-oneapi-basekit) # intel-oneapi-dpcpp-cpp +makedepends=(python-build python-installer python-setuptools python-wheel cython0) +checkdepends=(python-pytest python-numba) # python-cupy provides=(python-${_base}) conflicts=(python-${_base}) options=(!emptydirs) source=(${_base}-${pkgver}.tar.gz::${url}/archive/${pkgver}.tar.gz) -sha512sums=('074ac690c7606e104b6f7a82c03eb99906f6efe2556c0ecba14a8949a3f9b263d7a75b7f714c37c83ac971fbee3e60bd0bbb3110b37ee9bd9a6fdc5041d78095') +sha512sums=('705f1e88952e78612284c70fd1b11abacd524aeb25a5d8db22f5d94b35446eea9f60d6078619bc12b20dc85dd944ea8b8b5d4b2faeeda7219d2271c685c07df1') build() { cd ${_base}-${pkgver} - source /opt/intel/oneapi/setvars.sh # intel-oneapi-common - source /opt/intel/oneapi/compiler/2023.0.0/env/vars.sh # intel-oneapi-compiler - # https://aur.archlinux.org/packages/intel-oneapi-compiler#comment-856804 - CC=icx MPICC=mpiicc LDFLAGS="-shared-intel" python setup.py build + source /opt/intel/oneapi/setvars.sh + # /opt/intel/oneapi/compiler/2023.2.0/env/vars.sh + # /opt/intel/oneapi/mpi/2021.10.0/env/vars.sh + # https://community.intel.com/t5/Intel-oneAPI-HPC-Toolkit/MPI-linking-with-LLVM-based-compilers/m-p/1498230 + # CC=icx I_MPI_CC=icx MPICC="mpiicc -cc=icx" LDFLAGS="-shared-intel" + python -m build --wheel --skip-dependency-check --no-isolation } -# check() { -# if [ -z "$(ldconfig -p | grep libcuda.so.1)" ]; then -# # We don’t have CUDA by default -# export OMPI_MCA_opal_warn_on_missing_libcuda=0 -# fi +check() { + if [ -z "$(ldconfig -p | grep libcuda.so.1)" ]; then + # We don’t have CUDA by default + export OMPI_MCA_opal_warn_on_missing_libcuda=0 + fi -# # This is required starting with OpenMPI 3.0 when trying to run more -# # processes than the number of available cores -# export OMPI_MCA_rmaps_base_oversubscribe=yes + # This is required starting with OpenMPI 3.0 when trying to run more + # processes than the number of available cores + export OMPI_MCA_rmaps_base_oversubscribe=yes -# cd ${_base}-${pkgver} -# local _pyversion=$(python -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')") -# PYTHONPATH="${PWD}"/build/lib.linux-${CARCH}-cpython-${_pyversion/./} python setup.py test -# } + cd ${_base}-${pkgver} + python -m venv --system-site-packages test-env + test-env/bin/python -m installer dist/*.whl + test-env/bin/python -m pytest -vv \ + --ignore=test/test_cco_buf.py \ + --ignore=test/test_cco_nb_buf.py \ + --ignore=test/test_cco_nb_vec.py \ + --ignore=test/test_cco_ngh_buf.py \ + --ignore=test/test_cco_obj_inter.py \ + --ignore=test/test_cco_vec.py \ + --ignore=test/test_comm_inter.py \ + --ignore=test/test_comm_inter.py \ + --ignore=test/test_dynproc.py \ + --ignore=test/test_io.py \ + --ignore=test/test_msgspec.py \ + --ignore=test/test_pack.py \ + --ignore=test/test_p2p_buf.py \ + --ignore=test/test_p2p_buf_matched.py \ + --ignore=test/test_rma.py \ + --ignore=test/test_rma_nb.py +} package() { cd ${_base}-${pkgver} - PYTHONPYCACHEPREFIX="${PWD}/.cache/cpython/" python setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build + PYTHONPYCACHEPREFIX="${PWD}/.cache/cpython/" python -m installer --destdir="${pkgdir}" dist/*.whl install -Dm 644 LICENSE.rst -t "${pkgdir}/usr/share/licenses/${pkgname}" } |