git: 5d3cbf5c9d61 - main - science/bout++-merging-filaments: New port: Simulation of reconnection during merging of current filaments

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sun, 25 Dec 2022 01:23:14 UTC
The branch main has been updated by yuri:

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

commit 5d3cbf5c9d61b7ae4f979b9705ca86361f99ece0
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-12-25 01:19:25 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-12-25 01:22:59 +0000

    science/bout++-merging-filaments: New port: Simulation of reconnection during merging of current filaments
---
 science/Makefile                                   |  1 +
 science/bout++-merging-filaments/Makefile          | 29 ++++++++++++++++++++++
 science/bout++-merging-filaments/distinfo          |  3 +++
 .../bout++-merging-filaments/files/CMakeLists.txt  | 16 ++++++++++++
 science/bout++-merging-filaments/pkg-descr         |  7 ++++++
 5 files changed, 56 insertions(+)

diff --git a/science/Makefile b/science/Makefile
index f4e3659e3342..65c034fb16e4 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -39,6 +39,7 @@
     SUBDIR += berkeleygw
     SUBDIR += bodr
     SUBDIR += bout++
+    SUBDIR += bout++-merging-filaments
     SUBDIR += buddy
     SUBDIR += cantera
     SUBDIR += cardioid
diff --git a/science/bout++-merging-filaments/Makefile b/science/bout++-merging-filaments/Makefile
new file mode 100644
index 000000000000..a12cd45ed17f
--- /dev/null
+++ b/science/bout++-merging-filaments/Makefile
@@ -0,0 +1,29 @@
+PORTNAME=	bout++-merging-filaments
+DISTVERSION=	g20200812
+CATEGORIES=	science # physics
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Simulation of reconnection during merging of current filaments
+WWW=		https://github.com/boutproject/merging-filaments
+
+LICENSE=	GPLv3 # based on the parent project BOUT++
+
+BUILD_DEPENDS=	gmake:devel/gmake
+LIB_DEPENDS=	libbout++.so:science/bout++ # also wronglfully linked with all dependencies of BOUT++, see https://github.com/boutproject/BOUT-dev/issues/2622
+
+USES=		cmake:testing gettext
+USE_LDCONFIG=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	boutproject
+GH_PROJECT=	merging-filaments
+GH_TAGNAME=	ee5a7b9
+
+BINARY_ALIAS=	make=${GMAKE}
+
+PLIST_FILES=	bin/merging-flux
+
+post-patch:
+	@${CP} ${FILESDIR}/CMakeLists.txt ${WRKSRC}
+
+.include <bsd.port.mk>
diff --git a/science/bout++-merging-filaments/distinfo b/science/bout++-merging-filaments/distinfo
new file mode 100644
index 000000000000..00f796efd16b
--- /dev/null
+++ b/science/bout++-merging-filaments/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1671846750
+SHA256 (boutproject-merging-filaments-g20200812-ee5a7b9_GH0.tar.gz) = 8a2200a6851ccfc84c0497dd6da0cbbbba3eba00c2e2d14ebb9e642b21b2d257
+SIZE (boutproject-merging-filaments-g20200812-ee5a7b9_GH0.tar.gz) = 1980412
diff --git a/science/bout++-merging-filaments/files/CMakeLists.txt b/science/bout++-merging-filaments/files/CMakeLists.txt
new file mode 100644
index 000000000000..f3d3f2716541
--- /dev/null
+++ b/science/bout++-merging-filaments/files/CMakeLists.txt
@@ -0,0 +1,16 @@
+cmake_minimum_required(VERSION 3.13)
+
+project(merging-filaments LANGUAGES CXX)
+
+find_package(bout++ REQUIRED) 
+
+bout_add_example(merging-flux
+  SOURCES merging-flux.cxx cephes/ellpe.cxx cephes/ellpk.cxx
+)
+
+install(
+	TARGETS
+		merging-flux
+	DESTINATION
+		bin
+)
diff --git a/science/bout++-merging-filaments/pkg-descr b/science/bout++-merging-filaments/pkg-descr
new file mode 100644
index 000000000000..2a307fdd8a1d
--- /dev/null
+++ b/science/bout++-merging-filaments/pkg-descr
@@ -0,0 +1,7 @@
+BOUY++-based simulation of reconnection during merging of current filaments.
+
+BOUT++ is a framework for writing fluid and plasma simulations in curvilinear
+geometry. It is intended to be quite modular, with a variety of numerical
+methods and time-integration solvers available. BOUT++ is primarily designed
+and tested with reduced plasma fluid models in mind, but it can evolve any
+number of equations, with equations appearing in a readable form.