git: f93ce0d23da2 - main - math/coin-or-metis: New port: COIN-OR autotools harness to build Metis

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Wed, 23 Feb 2022 20:02:20 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f93ce0d23da27e2bc19196fabb4bbcd7c78959aa

commit f93ce0d23da27e2bc19196fabb4bbcd7c78959aa
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-02-23 19:28:59 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-02-23 20:02:15 +0000

    math/coin-or-metis: New port: COIN-OR autotools harness to build Metis
---
 math/Makefile                |  2 ++
 math/coin-or-metis/Makefile  | 44 ++++++++++++++++++++++++++++++++++++++++++++
 math/coin-or-metis/distinfo  |  5 +++++
 math/coin-or-metis/pkg-descr |  5 +++++
 math/coin-or-metis/pkg-plist | 10 ++++++++++
 5 files changed, 66 insertions(+)

diff --git a/math/Makefile b/math/Makefile
index c1419aee8fd7..fb4978580aec 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -216,6 +216,8 @@
     SUBDIR += coin-or-data-netlib
     SUBDIR += coin-or-data-sample
     SUBDIR += coin-or-data-stochastic
+    SUBDIR += coin-or-metis
+    SUBDIR += coin-or-mumps
     SUBDIR += coinmp
     SUBDIR += coinmumps
     SUBDIR += coinutils
diff --git a/math/coin-or-metis/Makefile b/math/coin-or-metis/Makefile
new file mode 100644
index 000000000000..cd44938c46cd
--- /dev/null
+++ b/math/coin-or-metis/Makefile
@@ -0,0 +1,44 @@
+PORTNAME=	metis
+DISTVERSIONPREFIX=	releases/
+DISTVERSION=	1.3.10
+CATEGORIES=	math
+MASTER_SITES=	http://coin-or-tools.github.io/ThirdParty-Metis/:metis
+PKGNAMEPREFIX=	coin-or-
+DISTFILES=	metis-${METIS_VERSION}.tar.gz:metis
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	COIN-OR autotools harness to build Metis
+
+LICENSE=	EPL
+
+LIB_DEPENDS=	libblas.so:math/blas
+
+USES=		fortran gmake libtool pkgconfig
+USE_LDCONFIG=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	coin-or-tools
+GH_PROJECT=	ThirdParty-Metis
+
+GNU_CONFIGURE=	yes
+
+INSTALL_TARGET=	install-strip
+
+METIS_VERSION=	4.0.3 # from the script get.Metis
+
+.include <bsd.port.pre.mk>
+
+.if ${GCC_DEFAULT} >= 10
+# workaround for Rank mismatch between actual argument at (1) and actual argument at (2) (scalar and rank-1)
+# in theory, this should set FCFLAGS, but the port does not conform
+FFLAGS+=	-fallow-argument-mismatch
+.endif
+
+post-extract: # link MUMPS into the location in the tree
+	@cd ${WRKSRC} && ${LN} -s ${WRKDIR}/metis-${METIS_VERSION} metis-4.0
+
+pre-build: # patching from get.Metis
+	@cd ${WRKDIR} && \
+		${PATCH} -p0 < ${WRKSRC}/metis.patch
+
+.include <bsd.port.post.mk>
diff --git a/math/coin-or-metis/distinfo b/math/coin-or-metis/distinfo
new file mode 100644
index 000000000000..7e604526c2cf
--- /dev/null
+++ b/math/coin-or-metis/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1645643836
+SHA256 (metis-4.0.3.tar.gz) = 5efa35de80703c1b2c4d0de080fafbcf4e0d363a21149a1ad2f96e0144841a55
+SIZE (metis-4.0.3.tar.gz) = 522624
+SHA256 (coin-or-tools-ThirdParty-Metis-releases-1.3.10_GH0.tar.gz) = 20b3f17263bec6a7966b51533d72f02af8a53c64e29b330d15026fcc309052b3
+SIZE (coin-or-tools-ThirdParty-Metis-releases-1.3.10_GH0.tar.gz) = 253651
diff --git a/math/coin-or-metis/pkg-descr b/math/coin-or-metis/pkg-descr
new file mode 100644
index 000000000000..f6e28d98c5fe
--- /dev/null
+++ b/math/coin-or-metis/pkg-descr
@@ -0,0 +1,5 @@
+This is an autotools-based build system to build and install
+MUltifrontal Massively Parallel sparse direct Solver (MUMPS).
+This installation of MUMPS is used by some other COIN-OR projects.
+
+WWW: https://github.com/coin-or-tools/ThirdParty-Mumps
diff --git a/math/coin-or-metis/pkg-plist b/math/coin-or-metis/pkg-plist
new file mode 100644
index 000000000000..090624d0c325
--- /dev/null
+++ b/math/coin-or-metis/pkg-plist
@@ -0,0 +1,10 @@
+include/coin/ThirdParty/defs.h
+include/coin/ThirdParty/macros.h
+include/coin/ThirdParty/metis.h
+include/coin/ThirdParty/proto.h
+include/coin/ThirdParty/rename.h
+include/coin/ThirdParty/struct.h
+lib/libcoinmetis.so
+lib/libcoinmetis.so.1
+lib/libcoinmetis.so.1.3.10
+libdata/pkgconfig/coinmetis.pc