aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThierry Thomas <thierry@FreeBSD.org>2021-05-24 16:45:06 +0000
committerThierry Thomas <thierry@FreeBSD.org>2021-05-25 10:00:09 +0000
commitd80348e84ea68d15b15ee151d552e1c5bd2b64f5 (patch)
tree71c2275acb9cc012f032e2f093fd49ad5d6cdfa4
parentef9eb0a7f8ae139aeaa1b1f8ed663d97680402ba (diff)
downloadports-d80348e84ea68d15b15ee151d552e1c5bd2b64f5.tar.gz
ports-d80348e84ea68d15b15ee151d552e1c5bd2b64f5.zip
suitesparse-spqr: new port for the module SPQR of SuiteSparse
-rw-r--r--math/suitesparse-spqr/Makefile32
-rw-r--r--math/suitesparse-spqr/files/patch-SPQR_Demo_Makefile15
-rw-r--r--math/suitesparse-spqr/pkg-descr6
-rw-r--r--math/suitesparse-spqr/pkg-plist9
4 files changed, 62 insertions, 0 deletions
diff --git a/math/suitesparse-spqr/Makefile b/math/suitesparse-spqr/Makefile
new file mode 100644
index 000000000000..9d0995c8a0ec
--- /dev/null
+++ b/math/suitesparse-spqr/Makefile
@@ -0,0 +1,32 @@
+# Created by: Thierry Thomas (<thierry@pompo.net>)
+
+PORTNAME= SPQR
+PORTVERSION= 2.0.9
+CATEGORIES= math
+
+COMMENT= Sparse QR factorization
+
+LICENSE= GPLv2+
+
+LIB_DEPENDS= libamd.so:math/suitesparse-amd \
+ libcamd.so:math/suitesparse-camd \
+ libcolamd.so:math/suitesparse-colamd \
+ libccolamd.so:math/suitesparse-ccolamd \
+ libcholmod.so:math/suitesparse-cholmod
+
+USES= localbase:ldflags
+
+BUILD_WRKSRC= ${WRKSRC}/${PORTNAME}
+USE_LDCONFIG= yes
+BLAS_NEEDED= yes
+OMP_NEEDED= yes
+
+# See https://github.com/DrTimothyAldenDavis/SuiteSparse/issues/72 and PR 252651
+#OPTIONS_DEFINE+= TBB
+#OPTIONS_DEFAULT+= TBB
+#TBB_DESC= Intel threading building blocks
+#TBB_LIB_DEPENDS= libtbb.so:devel/tbb
+#TBB_MAKE_ENV= TBB="-ltbb" SPQR_CONFIG="-DHAVE_TBB"
+
+.include "${.CURDIR}/../../math/suitesparse/bsd.suitesparse.mk"
+.include <bsd.port.post.mk>
diff --git a/math/suitesparse-spqr/files/patch-SPQR_Demo_Makefile b/math/suitesparse-spqr/files/patch-SPQR_Demo_Makefile
new file mode 100644
index 000000000000..ce057a7eeab4
--- /dev/null
+++ b/math/suitesparse-spqr/files/patch-SPQR_Demo_Makefile
@@ -0,0 +1,15 @@
+--- SPQR/Demo/Makefile.orig 2021-05-17 01:04:52 UTC
++++ SPQR/Demo/Makefile
+@@ -126,12 +126,6 @@ gpu4: qrdemo_gpu
+
+ library: metis
+ ( cd ../Lib ; $(MAKE) )
+- ( cd ../../AMD ; $(MAKE) library )
+- ( cd ../../SuiteSparse_config ; $(MAKE) library )
+- - ( cd ../../CHOLMOD && $(MAKE) library )
+- - ( cd ../../COLAMD && $(MAKE) library )
+- - ( cd ../../CCOLAMD && $(MAKE) library )
+- - ( cd ../../CAMD && $(MAKE) library )
+ ifneq ($(GPU_CONFIG),)
+ - ( cd ../../SuiteSparse_GPURuntime && $(MAKE) library )
+ - ( cd ../../GPUQREngine && $(MAKE) library )
diff --git a/math/suitesparse-spqr/pkg-descr b/math/suitesparse-spqr/pkg-descr
new file mode 100644
index 000000000000..3365195ab9f2
--- /dev/null
+++ b/math/suitesparse-spqr/pkg-descr
@@ -0,0 +1,6 @@
+This port installs the module SPQR of SuiteSparse.
+
+SuiteSparseQR is a multithreaded, multifrontal, rank-revealing sparse QR
+factorization method.
+
+WWW: http://faculty.cse.tamu.edu/davis/suitesparse.html
diff --git a/math/suitesparse-spqr/pkg-plist b/math/suitesparse-spqr/pkg-plist
new file mode 100644
index 000000000000..3792170306a6
--- /dev/null
+++ b/math/suitesparse-spqr/pkg-plist
@@ -0,0 +1,9 @@
+include/suitesparse/SuiteSparseQR.hpp
+include/suitesparse/SuiteSparseQR_C.h
+include/suitesparse/SuiteSparseQR_definitions.h
+include/suitesparse/spqr.hpp
+lib/libspqr.so
+lib/libspqr.so.2
+lib/libspqr.so.2.0.9
+%%PORTDOCS%%%%DOCSDIR%%/SPQR_README.txt
+%%PORTDOCS%%%%DOCSDIR%%/spqr_user_guide.pdf