Update science/py-PyFR to version 1.14.0
[dports.git] / science / py-PyFR / Makefile
1 PORTNAME=       PyFR
2 DISTVERSION=    1.14.0
3 CATEGORIES=     science python
4 MASTER_SITES=   CHEESESHOP
5 PKGNAMEPREFIX=  ${PYTHON_PKGNAMEPREFIX}
6 DISTNAME=       pyfr-${DISTVERSION}
7
8 MAINTAINER=     yuri@FreeBSD.org
9 COMMENT=        Framework for solving advection-diffusion type problems
10
11 LICENSE=        BSD3CLAUSE
12
13 RUN_DEPENDS=    ${PYTHON_PKGNAMEPREFIX}appdirs>=1.4.0:devel/py-appdirs@${PY_FLAVOR} \
14                 ${PYTHON_PKGNAMEPREFIX}gimmik>=2.3:math/py-gimmik@${PY_FLAVOR} \
15                 ${PYTHON_PKGNAMEPREFIX}h5py>=2.10:science/py-h5py@${PY_FLAVOR} \
16                 ${PYTHON_PKGNAMEPREFIX}mako>=1.0.0:textproc/py-mako@${PY_FLAVOR} \
17                 ${PYTHON_PKGNAMEPREFIX}mpi4py>=3.1.0:net/py-mpi4py@${PY_FLAVOR} \
18                 ${PYTHON_PKGNAMEPREFIX}platformdirs>=2.2.0:devel/py-platformdirs@${PY_FLAVOR} \
19                 ${PYTHON_PKGNAMEPREFIX}pytools>=2016.2.1:devel/py-pytools@${PY_FLAVOR} \
20                 ${PYNUMPY}
21
22 USES=           python:3.7+ shebangfix
23 USE_PYTHON=     distutils concurrent autoplist
24
25 SHEBANG_FILES=  setup.py pyfr/__main__.py
26
27 NO_ARCH=        yes
28
29 OPTIONS_MULTI=          PARALLEL
30 OPTIONS_MULTI_PARALLEL= OPENCL OPENMP # CUDA isn't supported on FreeBSD
31 OPTIONS_DEFAULT=        ${OPTIONS_MULTI_PARALLEL}
32 PARALLEL_DESC=          Parallelization backends to install
33
34 OPENCL_RUN_DEPENDS=     ${PYTHON_PKGNAMEPREFIX}pyopencl>0:devel/py-pyopencl@${PY_FLAVOR} \
35                         clblas>0:math/clblas
36 OPENMP_RUN_DEPENDS=     libxsmm>0:math/libxsmm
37
38 pre-build: # patch in pre-build to make the patch less error-prone (it has %%LOCALBASE%%)
39         @${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/pyfr/backends/openmp/compiler.py
40
41 post-install: # workaround: https://groups.google.com/forum/#!topic/pyfrmailinglist/RNi_LcizGBo
42         @${RM} ${STAGEDIR}${PREFIX}/__main__.py
43         @${REINPLACE_CMD} 's|^${PREFIX}/__main__\.py||' ${_PYTHONPKGLIST}
44
45 .include <bsd.port.mk>