svn commit: r481867 - in head/math: . py-primme py-primme/files
Yuri Victorovich
yuri at FreeBSD.org
Fri Oct 12 01:55:32 UTC 2018
Author: yuri
Date: Fri Oct 12 01:55:30 2018
New Revision: 481867
URL: https://svnweb.freebsd.org/changeset/ports/481867
Log:
New port: math/py-primme: PRIMME wrapper for Python
Added:
head/math/py-primme/
head/math/py-primme/Makefile (contents, props changed)
head/math/py-primme/distinfo (contents, props changed)
head/math/py-primme/files/
head/math/py-primme/files/patch-setup.py (contents, props changed)
head/math/py-primme/pkg-descr (contents, props changed)
Modified:
head/math/Makefile
Modified: head/math/Makefile
==============================================================================
--- head/math/Makefile Fri Oct 12 01:16:48 2018 (r481866)
+++ head/math/Makefile Fri Oct 12 01:55:30 2018 (r481867)
@@ -720,6 +720,7 @@
SUBDIR += py-petsc4py
SUBDIR += py-piranha
SUBDIR += py-plastex
+ SUBDIR += py-primme
SUBDIR += py-probstat
SUBDIR += py-pyFFTW
SUBDIR += py-pyasp
Added: head/math/py-primme/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/py-primme/Makefile Fri Oct 12 01:55:30 2018 (r481867)
@@ -0,0 +1,32 @@
+# $FreeBSD$
+
+PORTNAME= primme
+DISTVERSION= 2.1.5.20181011 # need the latest changes, but github repo is mistagged, no regular github tag available
+CATEGORIES= math python
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri at FreeBSD.org
+COMMENT= PRIMME wrapper for Python
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/../COPYING.txt
+
+BUILD_DEPENDS= ${PYNUMPY}
+LIB_DEPENDS= libprimme.so:math/primme
+RUN_DEPENDS= ${PYNUMPY}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}nose>=0:devel/py-nose@${PY_FLAVOR}
+
+USES= fortran gmake localbase:ldflags python shebangfix
+SHEBANG_FILES= examples.py tests.py
+USE_GITHUB= yes
+GH_TAGNAME= 6a0fa27
+USE_PYTHON= distutils autoplist
+TEST_TARGET= test
+
+WRKSRC_SUBDIR= Python
+BINARY_ALIAS= python2=${PYTHON_CMD}
+
+post-test: # not sure why does the 'test' target tun examples and not tests
+ @cd ${WRKSRC} && ${PYTHON_CMD} ${WRKSRC}/tests.py
+
+.include <bsd.port.mk>
Added: head/math/py-primme/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/py-primme/distinfo Fri Oct 12 01:55:30 2018 (r481867)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1539307207
+SHA256 (primme-primme-2.1.5.20181011-6a0fa27_GH0.tar.gz) = 8f662a7c41d5bfb7910ccb9bbcb7f06f1191fc7c7a9d41fb695e9b13438bcb79
+SIZE (primme-primme-2.1.5.20181011-6a0fa27_GH0.tar.gz) = 5511173
Added: head/math/py-primme/files/patch-setup.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/py-primme/files/patch-setup.py Fri Oct 12 01:55:30 2018 (r481867)
@@ -0,0 +1,60 @@
+--- setup.py.orig 2018-10-11 23:38:33 UTC
++++ setup.py
+@@ -15,31 +16,33 @@ def get_numpy_options():
+ numpy_include = numpy.get_include()
+
+ # Obtain BLAS/LAPACK linking options
+- lapack_info = get_info('lapack_opt')
+- blas_info = get_info('blas_opt')
+- using_atlas = False
+- using_f77blas = False
+- using_lapack = False
+- for l in lapack_info.get('libraries', []) + blas_info.get('libraries', []):
+- if "atlas" in l: using_atlas = True
+- if "f77blas" in l: using_f77blas = True
+- if "lapack" in l: using_lapack = True
+- if using_atlas and (not using_f77blas or not using_lapack):
+- lapack_info = get_info('atlas')
+- # ATLAS notices an incomplete LAPACK by not setting language to f77
+- complete_lapack = lapack_info.get('language', "") == "f77"
+- if complete_lapack:
+- blas_info = {}
+- else:
+- # If ATLAS has an incomplete LAPACK, use a regular one
+- blas_info = get_info('atlas_blas')
+- lapack_info = get_info('lapack')
++ #lapack_info = get_info('lapack_opt')
++ #blas_info = get_info('blas_opt')
++ #using_atlas = False
++ #using_f77blas = False
++ #using_lapack = False
++ #for l in lapack_info.get('libraries', []) + blas_info.get('libraries', []):
++ # if "atlas" in l: using_atlas = True
++ # if "f77blas" in l: using_f77blas = True
++ # if "lapack" in l: using_lapack = True
++ #if using_atlas and (not using_f77blas or not using_lapack):
++ # lapack_info = get_info('atlas')
++ # # ATLAS notices an incomplete LAPACK by not setting language to f77
++ # complete_lapack = lapack_info.get('language', "") == "f77"
++ # if complete_lapack:
++ # blas_info = {}
++ # else:
++ # # If ATLAS has an incomplete LAPACK, use a regular one
++ # blas_info = get_info('atlas_blas')
++ # lapack_info = get_info('lapack')
+
+- blaslapack_libraries = lapack_info.get('libraries', []) + blas_info.get('libraries', [])
+- blaslapack_library_dirs = lapack_info.get('library_dirs', []) + blas_info.get('library_dirs', [])
+- blaslapack_extra_link_args = lapack_info.get('extra_link_args', []) + blas_info.get('extra_link_args', [])
+- if not blaslapack_libraries and not blaslapack_extra_link_args:
+- blaslapack_libraries = ['lapack', 'blas']
++ #blaslapack_libraries = lapack_info.get('libraries', []) + blas_info.get('libraries', [])
++ #blaslapack_library_dirs = lapack_info.get('library_dirs', []) + blas_info.get('library_dirs', [])
++ #blaslapack_extra_link_args = lapack_info.get('extra_link_args', []) + blas_info.get('extra_link_args', [])
++ #if not blaslapack_libraries and not blaslapack_extra_link_args:
++ blaslapack_libraries = []
++ blaslapack_extra_link_args = []
++ blaslapack_library_dirs = []
+
+ return dict(
+ include_dirs = [numpy_include, "primme/include", "primme/src/include"],
Added: head/math/py-primme/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/py-primme/pkg-descr Fri Oct 12 01:55:30 2018 (r481867)
@@ -0,0 +1,5 @@
+The python binding for PRIMME, PReconditioned Iterative MultiMethod Eigensolver
+for solving symmetric/Hermitian eigenvalue problems and singular value
+problems.
+
+WWW: http://www.cs.wm.edu/~andreas/software/
More information about the svn-ports-all
mailing list