Update science/py-PyFR to version 1.12.2
[dports.git] / science / py-PyFR / Makefile
1 PORTNAME=       PyFR
2 DISTVERSION=    1.12.2
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.0:math/py-gimmik@${PY_FLAVOR} \
15                 ${PYTHON_PKGNAMEPREFIX}h5py>=2.6:science/py-h5py@${PY_FLAVOR} \
16                 ${PYTHON_PKGNAMEPREFIX}mako>=1.0.0:textproc/py-mako@${PY_FLAVOR} \
17                 ${PYTHON_PKGNAMEPREFIX}mpi4py>=3.0:net/py-mpi4py@${PY_FLAVOR} \
18                 ${PYTHON_PKGNAMEPREFIX}pytools>=2016.2.1:devel/py-pytools@${PY_FLAVOR} \
19                 ${PYNUMPY}
20
21 USES=           python:3.7+ shebangfix
22 USE_PYTHON=     distutils concurrent autoplist
23
24 SHEBANG_FILES=  setup.py pyfr/__main__.py
25
26 NO_ARCH=        yes
27
28 OPTIONS_MULTI=          PARALLEL
29 OPTIONS_MULTI_PARALLEL= OPENCL OPENMP # CUDA isn't supported on FreeBSD
30 OPTIONS_DEFAULT=        ${OPTIONS_MULTI_PARALLEL}
31 PARALLEL_DESC=          Parallelization backends to install
32
33 OPENCL_RUN_DEPENDS=     ${PYTHON_PKGNAMEPREFIX}pyopencl>0:devel/py-pyopencl@${PY_FLAVOR} \
34                         clblas>0:math/clblas
35 OPENMP_RUN_DEPENDS=     libxsmm>0:math/libxsmm
36
37 pre-build: # patch in pre-build to make the patch less error-prone (it has %%LOCALBASE%%)
38         @${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/pyfr/backends/openmp/compiler.py
39
40 post-install: # workaround: https://groups.google.com/forum/#!topic/pyfrmailinglist/RNi_LcizGBo
41         @${RM} ${STAGEDIR}${PREFIX}/__main__.py
42         @${REINPLACE_CMD} 's|^${PREFIX}/__main__\.py||' ${_PYTHONPKGLIST}
43
44 .include <bsd.port.mk>