svn commit: r480309 - in head/science/py-PyFR: . files

Yuri Victorovich yuri at FreeBSD.org
Fri Sep 21 20:33:17 UTC 2018


Author: yuri
Date: Fri Sep 21 20:33:16 2018
New Revision: 480309
URL: https://svnweb.freebsd.org/changeset/ports/480309

Log:
  science/py-PyFR: Fix the OpenMP computation mode by adding -I and -L flags to the compiler command.
  
  Also fix license.

Added:
  head/science/py-PyFR/files/
  head/science/py-PyFR/files/patch-pyfr_backends_openmp_compiler.py   (contents, props changed)
Modified:
  head/science/py-PyFR/Makefile

Modified: head/science/py-PyFR/Makefile
==============================================================================
--- head/science/py-PyFR/Makefile	Fri Sep 21 20:26:29 2018	(r480308)
+++ head/science/py-PyFR/Makefile	Fri Sep 21 20:33:16 2018	(r480309)
@@ -2,6 +2,7 @@
 
 PORTNAME=	PyFR
 DISTVERSION=	1.7.6
+PORTREVISION=	1
 CATEGORIES=	science python
 MASTER_SITES=	http://www.pyfr.org/download/
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
@@ -10,7 +11,7 @@ MAINTAINER=	yuri at FreeBSD.org
 COMMENT=	Framework for solving advection-diffusion type problems
 
 LICENSE=	BSD3CLAUSE
-xLICENSE_FILE=	${WRKSRC}/LICENSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
 
 RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}appdirs>=1.4.0:devel/py-appdirs@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}gimmik>=2.0:math/py-gimmik@${PY_FLAVOR} \
@@ -26,13 +27,16 @@ SHEBANG_FILES=	setup.py pyfr/__main__.py
 USE_PYTHON=	distutils concurrent autoplist
 NO_ARCH=	yes
 
-OPTIONS_MULTI=		MP
-OPTIONS_MULTI_MP=	OPENCL OPENMP # CUDA isn't supported on FreeBSD
-OPTIONS_DEFAULT=	${OPTIONS_MULTI_MP}
-MP_DESC=		Parallelization backend to install
+OPTIONS_MULTI=		PARALLEL
+OPTIONS_MULTI_PARALLEL=	OPENCL OPENMP # CUDA isn't supported on FreeBSD
+OPTIONS_DEFAULT=	${OPTIONS_MULTI_PARALLEL}
+PARALLEL_DESC=		Parallelization backend to install
 
 OPENCL_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pyopencl>0:devel/py-pyopencl@${PY_FLAVOR}
 OPENMP_RUN_DEPENDS=	openmp>0:devel/openmp
+
+pre-build: # patch in pre-build to make the patch less error-prone (it has %%LOCALBASE%%)
+	@${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/pyfr/backends/openmp/compiler.py
 
 post-install: # workaround: https://groups.google.com/forum/#!topic/pyfrmailinglist/RNi_LcizGBo
 	@${RM} ${STAGEDIR}${PREFIX}/__main__.py

Added: head/science/py-PyFR/files/patch-pyfr_backends_openmp_compiler.py
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/science/py-PyFR/files/patch-pyfr_backends_openmp_compiler.py	Fri Sep 21 20:33:16 2018	(r480309)
@@ -0,0 +1,11 @@
+--- pyfr/backends/openmp/compiler.py.orig	2018-03-19 21:34:24 UTC
++++ pyfr/backends/openmp/compiler.py
+@@ -76,6 +76,8 @@ class SourceModule(object):
+             '-Ofast',               # Optimise, incl. -ffast-math
+             '-march=native',        # Use CPU-specific instructions
+             '-fopenmp',             # Enable OpenMP support
++            '-I%%LOCALBASE%%/include',  # Add the include directory
++            '-L%%LOCALBASE%%/lib',  # Add the library directory
+             '-fPIC',                # Generate position-independent code
+             '-o', libname, srcname, # Library and source file names
+             '-lm'                   # Link against libm


More information about the svn-ports-head mailing list