aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2021-09-07 16:04:24 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2021-09-07 16:14:16 +0000
commit5801d31602a03665430d70f4b2439d87d76f96ee (patch)
tree659a4841f2679d1ed38f36f155c2e87948db2d5b
parent54918b08b00fdbe9f5fc75fdf9881e8ff452b647 (diff)
downloadports-5801d31602a03665430d70f4b2439d87d76f96ee.tar.gz
ports-5801d31602a03665430d70f4b2439d87d76f96ee.zip
math/dune-grid-glue: New port: DUNE framework: infrastructure for coupling of unrelated Dune grids
-rw-r--r--math/Makefile1
-rw-r--r--math/dune-grid-glue/Makefile44
-rw-r--r--math/dune-grid-glue/distinfo3
-rw-r--r--math/dune-grid-glue/files/patch-CMakeLists.txt12
-rw-r--r--math/dune-grid-glue/pkg-descr11
-rw-r--r--math/dune-grid-glue/pkg-plist40
6 files changed, 111 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index 1c3a77624775..e86508142732 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -247,6 +247,7 @@
SUBDIR += dune-functions
SUBDIR += dune-geometry
SUBDIR += dune-grid
+ SUBDIR += dune-grid-glue
SUBDIR += dune-istl
SUBDIR += dune-localfunctions
SUBDIR += dune-metagrid
diff --git a/math/dune-grid-glue/Makefile b/math/dune-grid-glue/Makefile
new file mode 100644
index 000000000000..1a768d9ca88a
--- /dev/null
+++ b/math/dune-grid-glue/Makefile
@@ -0,0 +1,44 @@
+PORTNAME= dune-grid-glue
+DISTVERSIONPREFIX= v
+DISTVERSION= 2.7.0.20201113
+CATEGORIES= math
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= DUNE framework: infrastructure for coupling of unrelated Dune grids
+
+LICENSE= GPLv2
+
+BUILD_DEPENDS= alberta-fem>0:math/alberta \
+ openmpi>0:net/openmpi \
+ psurface>0:math/psurface \
+ vc>0:devel/vc
+LIB_DEPENDS= libdunecommon.so:math/dune-common \
+ libdunegeometry.so:math/dune-geometry \
+ libdunegrid.so:math/dune-grid \
+ libduneuggrid.so:math/dune-uggrid \
+ libopenblas.so:math/openblas \
+ libtbb.so:devel/onetbb
+RUN_DEPENDS= alberta-fem>0:math/alberta # binaries aren't linked with alberta, instead users' binaries are linked with it
+RUN_DEPENDS+= psurface>0:math/psurface
+
+USES= cmake compiler:c++17-lang fortran pkgconfig
+USE_GITLAB= yes
+USE_LDCONFIG= yes
+
+GL_SITE= https://gitlab.dune-project.org
+GL_ACCOUNT= extensions
+GL_COMMIT= 17bd9898df80a52e2c316fc053119d190c149a2e
+
+CMAKE_ON= BUILD_SHARED_LIBS
+CMAKE_ARGS= -DTBB_INCLUDE_DIR=${LOCALBASE}/include -DTBB_LIBRARIES=${LOCALBASE}/lib/libtbb.so
+
+OPTIONS_DEFINE= DOCS
+OPTIONS_SUB= yes
+
+DOCS_CMAKE_BOOL= FREEBSD_INSTALL_DOCS
+DOCS_BUILD_DEPENDS= doxygen:devel/doxygen \
+ sphinx-build:textproc/py-sphinx
+
+PORTDOCS= *
+
+.include <bsd.port.mk>
diff --git a/math/dune-grid-glue/distinfo b/math/dune-grid-glue/distinfo
new file mode 100644
index 000000000000..5f3e19ccfcad
--- /dev/null
+++ b/math/dune-grid-glue/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1630995135
+SHA256 (extensions-dune-grid-glue-17bd9898df80a52e2c316fc053119d190c149a2e_GL0.tar.gz) = f95c961e378fe9a23476ea52910190cfc365f8eb355b6515825a388260bafe40
+SIZE (extensions-dune-grid-glue-17bd9898df80a52e2c316fc053119d190c149a2e_GL0.tar.gz) = 82251
diff --git a/math/dune-grid-glue/files/patch-CMakeLists.txt b/math/dune-grid-glue/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..22b7b96a2401
--- /dev/null
+++ b/math/dune-grid-glue/files/patch-CMakeLists.txt
@@ -0,0 +1,12 @@
+--- CMakeLists.txt.orig 2021-09-07 15:43:33 UTC
++++ CMakeLists.txt
+@@ -22,7 +22,9 @@ dune_register_package_flags(LIBRARIES dunegridglue)
+
+ add_subdirectory("dune")
+ add_subdirectory("doc")
++if (FREEBSD_BUILD_EXAMPLES)
+ add_subdirectory("examples")
++endif()
+
+ # finalize the dune project, e.g. generating config.h etc.
+ finalize_dune_project(GENERATE_CONFIG_H_CMAKE)
diff --git a/math/dune-grid-glue/pkg-descr b/math/dune-grid-glue/pkg-descr
new file mode 100644
index 000000000000..3b4805bf77ff
--- /dev/null
+++ b/math/dune-grid-glue/pkg-descr
@@ -0,0 +1,11 @@
+The dune-grid-glue module provides infrastructure for the coupling of two
+unrelated Dune grids. The coupling may be overlapping or nonoverlapping,
+conforming or nonconforming. The two grids are not requested to be of the same
+type, and they may even be of different dimensions.
+
+Couplings are described as sets of remote intersections. Conceptually, these
+remote intersections are very close to what the regular intersections in the
+Dune grid interface are, with the difference that the inside and outside
+entities are taken from different grids.
+
+WWW: https://www.dune-project.org/
diff --git a/math/dune-grid-glue/pkg-plist b/math/dune-grid-glue/pkg-plist
new file mode 100644
index 000000000000..53014db88623
--- /dev/null
+++ b/math/dune-grid-glue/pkg-plist
@@ -0,0 +1,40 @@
+include/dune/grid-glue/adapter/gridglue.cc
+include/dune/grid-glue/adapter/gridglue.hh
+include/dune/grid-glue/adapter/gridglueamirawriter.hh
+include/dune/grid-glue/adapter/gridgluecommunicate.hh
+include/dune/grid-glue/adapter/gridgluevtkwriter.hh
+include/dune/grid-glue/adapter/intersection.hh
+include/dune/grid-glue/adapter/intersectionindexset.hh
+include/dune/grid-glue/adapter/intersectioniterator.hh
+include/dune/grid-glue/adapter/rangegenerators.hh
+include/dune/grid-glue/common/areawriter.hh
+include/dune/grid-glue/common/areawriter_impl.hh
+include/dune/grid-glue/common/crossproduct.hh
+include/dune/grid-glue/common/projection.hh
+include/dune/grid-glue/common/projection_impl.hh
+include/dune/grid-glue/common/projectionwriter.hh
+include/dune/grid-glue/common/projectionwriter_impl.hh
+include/dune/grid-glue/extractors/codim0extractor.hh
+include/dune/grid-glue/extractors/codim1extractor.hh
+include/dune/grid-glue/extractors/extractor.hh
+include/dune/grid-glue/extractors/vtksurfacewriter.hh
+include/dune/grid-glue/gridglue.hh
+include/dune/grid-glue/merging/computeintersection.cc
+include/dune/grid-glue/merging/computeintersection.hh
+include/dune/grid-glue/merging/conformingmerge.hh
+include/dune/grid-glue/merging/contactmerge.cc
+include/dune/grid-glue/merging/contactmerge.hh
+include/dune/grid-glue/merging/intersectionlist.hh
+include/dune/grid-glue/merging/merger.hh
+include/dune/grid-glue/merging/overlappingmerge.cc
+include/dune/grid-glue/merging/overlappingmerge.hh
+include/dune/grid-glue/merging/simplexintersection.cc
+include/dune/grid-glue/merging/standardmerge.hh
+lib/cmake/dune-grid-glue/dune-grid-glue-config-version.cmake
+lib/cmake/dune-grid-glue/dune-grid-glue-config.cmake
+lib/cmake/dune-grid-glue/dune-grid-glue-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/dune-grid-glue/dune-grid-glue-targets.cmake
+lib/dunecontrol/dune-grid-glue/dune.module
+lib/libdunegridglue.so
+libdata/pkgconfig/dune-grid-glue.pc
+%%DATADIR%%/config.h.cmake