git: 95c25a6662ad - main - math/dune-fem: update 2.8.0.5 → 2.10.0

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Tue, 31 Mar 2026 17:23:25 UTC
The branch main has been updated by yuri:

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

commit 95c25a6662ad952220b4ad243260696134a22e09
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-03-31 17:20:50 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-03-31 17:23:03 +0000

    math/dune-fem: update 2.8.0.5 → 2.10.0
---
 math/dune-fem/Makefile                             | 17 +++++-----
 math/dune-fem/distinfo                             |  6 ++--
 .../patch-dune_fem_space_common_auxiliarydofs.hh   | 38 ++++++++++++++++++++++
 ...une_fem_space_lagrange_genericlagrangepoints.hh | 11 +++++++
 math/dune-fem/pkg-plist                            | 13 ++++++--
 5 files changed, 72 insertions(+), 13 deletions(-)

diff --git a/math/dune-fem/Makefile b/math/dune-fem/Makefile
index 01a9bc37ea1b..f1a184437390 100644
--- a/math/dune-fem/Makefile
+++ b/math/dune-fem/Makefile
@@ -1,6 +1,5 @@
 PORTNAME=	dune-fem
-DISTVERSION=	2.8.0.5
-PORTREVISION=	30
+DISTVERSION=	2.10.0
 CATEGORIES=	math
 
 MAINTAINER=	yuri@FreeBSD.org
@@ -15,9 +14,9 @@ BUILD_DEPENDS=	arpack++>0:math/arpack++ \
 		dune-localfunctions>=2.6:math/dune-localfunctions \
 		dune-spgrid>0:math/dune-spgrid \
 		vc>0:devel/vc \
-		openmpi4>0:net/openmpi4
+		openmpi>0:net/openmpi
 LIB_DEPENDS=	libpsurface.so:math/psurface \
-		libarpack.so:math/arpack-ng@mpich \
+		libarpack.so:math/arpack-ng@openmpi \
 		libdunealugrid.so:math/dune-alugrid \
 		libdunecommon.so:math/dune-common \
 		libdunegeometry.so:math/dune-geometry \
@@ -41,7 +40,7 @@ LIB_DEPENDS=	libpsurface.so:math/psurface \
 RUN_DEPENDS=	dune-istl>=2.6:math/dune-istl \
 		dune-localfunctions>=2.6:math/dune-localfunctions \
 		dune-spgrid>0:math/dune-spgrid \
-		openmpi4>0:net/openmpi4
+		openmpi>0:net/openmpi
 
 USES=		cmake compiler:c++17-lang eigen:3 fortran pkgconfig
 USE_GITLAB=	yes
@@ -49,15 +48,15 @@ USE_LDCONFIG=	yes
 
 GL_SITE=	https://gitlab.dune-project.org
 GL_ACCOUNT=	dune-fem
-GL_TAGNAME=	30e278aa744c908fbf4bbd8b237eb26c0475d16e
+GL_TAGNAME=	4cef5c6f2f8de83d690b351b5a6752fac268cda6
 
 CMAKE_ON=	BUILD_SHARED_LIBS
+CMAKE_OFF=	DUNE_ENABLE_PYTHONBINDINGS DUNE_REQUIRE_PYTHONBINDINGS
 
 OPTIONS_DEFINE=		DOCS
 
 DOCS_CMAKE_BOOL=	FREEBSD_INSTALL_DOCS
-DOCS_BUILD_DEPENDS=	doxygen:devel/doxygen \
-			sphinx-build:textproc/py-sphinx
+DOCS_BUILD_DEPENDS=	sphinx-build:textproc/py-sphinx
 
 PORTDOCS=	*
 
@@ -65,4 +64,6 @@ post-install: # https://gitlab.dune-project.org/dune-fem/dune-fem/-/issues/111
 	${RM} ${STAGEDIR}${PREFIX}/share/dune/cmake/modules/FindPThreads.cmake
 	${RM} ${STAGEDIR}${PREFIX}/share/dune/cmake/modules/FindSIONlib.cmake
 
+PLIST_SUB+=	DUNE_FEM_CMAKE_HASH=86351963f06ada977b94a7a3e8733e31
+
 .include <bsd.port.mk>
diff --git a/math/dune-fem/distinfo b/math/dune-fem/distinfo
index bb4337ed7c13..61702e551afe 100644
--- a/math/dune-fem/distinfo
+++ b/math/dune-fem/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1653237277
-SHA256 (dune-fem-dune-fem-30e278aa744c908fbf4bbd8b237eb26c0475d16e_GL0.tar.gz) = 2519e54e4468f64ae52fad81df22138e2d927d6d30edcb63c92780e5dba4374b
-SIZE (dune-fem-dune-fem-30e278aa744c908fbf4bbd8b237eb26c0475d16e_GL0.tar.gz) = 2147391
+TIMESTAMP = 1774915254
+SHA256 (dune-fem-dune-fem-4cef5c6f2f8de83d690b351b5a6752fac268cda6_GL0.tar.gz) = bb6505526b635e1debfc481d1bf4e0c7fc0a6577b086fdd46cde3177a0c6b235
+SIZE (dune-fem-dune-fem-4cef5c6f2f8de83d690b351b5a6752fac268cda6_GL0.tar.gz) = 2226613
diff --git a/math/dune-fem/files/patch-dune_fem_space_common_auxiliarydofs.hh b/math/dune-fem/files/patch-dune_fem_space_common_auxiliarydofs.hh
new file mode 100644
index 000000000000..2a2b1347c7dc
--- /dev/null
+++ b/math/dune-fem/files/patch-dune_fem_space_common_auxiliarydofs.hh
@@ -0,0 +1,38 @@
+--- dune/fem/space/common/auxiliarydofs.hh	2026-03-31 03:29:46.764720000 -0700
++++ dune/fem/space/common/auxiliarydofs.hh	2026-03-31 03:31:34.215124000 -0700
+@@ -89,23 +89,23 @@
+         ConstIterator &operator++ () { ++index_; return *this; }
+         ConstIterator operator++ ( int ) { ConstIterator copy( *this ); ++(*this); return copy; }
+ 
+-        ThisType &operator-- () noexcept { --index_; return *this; }
+-        ThisType operator-- ( int ) noexcept { ThisType copy( *this ); --(*this); return copy; }
++        ConstIterator &operator-- () noexcept { --index_; return *this; }
++        ConstIterator operator-- ( int ) noexcept { ConstIterator copy( *this ); --(*this); return copy; }
+ 
+-        ThisType &operator+= ( IndexType n ) noexcept { index_ += n; return *this; }
+-        ThisType &operator-= ( IndexType n ) noexcept { index_ -= n; return *this; }
++        ConstIterator &operator+= ( IndexType n ) noexcept { index_ += n; return *this; }
++        ConstIterator &operator-= ( IndexType n ) noexcept { index_ -= n; return *this; }
+ 
+-        ThisType operator+ ( IndexType n ) const noexcept { return ThisType( index_ + n ); }
+-        ThisType operator- ( IndexType n ) const noexcept { return ThisType( index_ - n ); }
++        ConstIterator operator+ ( IndexType n ) const noexcept { return ConstIterator( index_ + n ); }
++        ConstIterator operator- ( IndexType n ) const noexcept { return ConstIterator( index_ - n ); }
+ 
+-        friend ThisType operator+ ( IndexType n, const ThisType &i ) noexcept { return i + n; }
++        friend ConstIterator operator+ ( IndexType n, const ConstIterator &i ) noexcept { return i + n; }
+ 
+-        IndexType operator- ( const ThisType &other ) const noexcept { return (index_ - other.index_); }
++        IndexType operator- ( const ConstIterator &other ) const noexcept { return (index_ - other.index_); }
+ 
+-        bool operator< ( const ThisType &other ) const noexcept { return (index_ < other.index_); }
+-        bool operator<= ( const ThisType &other ) const noexcept { return (index_ <= other.index_); }
+-        bool operator>= ( const ThisType &other ) const noexcept { return (index_ >= other.index_); }
+-        bool operator> ( const ThisType &other ) const noexcept { return (index_ > other.index_); }
++        bool operator< ( const ConstIterator &other ) const noexcept { return (index_ < other.index_); }
++        bool operator<= ( const ConstIterator &other ) const noexcept { return (index_ <= other.index_); }
++        bool operator>= ( const ConstIterator &other ) const noexcept { return (index_ >= other.index_); }
++        bool operator> ( const ConstIterator &other ) const noexcept { return (index_ > other.index_); }
+ 
+       private:
+         const IndexMapType *auxiliarys_ = nullptr;
diff --git a/math/dune-fem/files/patch-dune_fem_space_lagrange_genericlagrangepoints.hh b/math/dune-fem/files/patch-dune_fem_space_lagrange_genericlagrangepoints.hh
new file mode 100644
index 000000000000..c844e6017577
--- /dev/null
+++ b/math/dune-fem/files/patch-dune_fem_space_lagrange_genericlagrangepoints.hh
@@ -0,0 +1,11 @@
+--- dune/fem/space/lagrange/genericlagrangepoints.hh	2026-03-31 03:33:40.502407000 -0700
++++ dune/fem/space/lagrange/genericlagrangepoints.hh	2026-03-31 03:36:29.065524000 -0700
+@@ -428,7 +428,7 @@
+         if( !useDimReduction( coordinate ) )
+         {
+           --(*coordinate);
+-          OrderReductionType::template dofSubEntity( coordinate, codim, subEntity, dofNumber );
++          OrderReductionType::dofSubEntity( coordinate, codim, subEntity, dofNumber );
+           ++(*coordinate);
+ 
+           if( bottom )
diff --git a/math/dune-fem/pkg-plist b/math/dune-fem/pkg-plist
index b02d2951913b..6dc180f45aaa 100644
--- a/math/dune-fem/pkg-plist
+++ b/math/dune-fem/pkg-plist
@@ -1,3 +1,4 @@
+include/dune-fem-config.hh
 include/dune/fem/common/bindguard.hh
 include/dune/fem/common/coordinate.hh
 include/dune/fem/common/explicitfieldvector.hh
@@ -10,6 +11,7 @@ include/dune/fem/common/localcontribution.hh
 include/dune/fem/common/memory.hh
 include/dune/fem/common/referencevector.hh
 include/dune/fem/common/stackallocator.hh
+include/dune/fem/common/staticlistofint.hh
 include/dune/fem/common/tupletypetraits.hh
 include/dune/fem/common/tupleutility.hh
 include/dune/fem/common/typeindexedtuple.hh
@@ -70,6 +72,7 @@ include/dune/fem/gridpart/common/compositegeometry.hh
 include/dune/fem/gridpart/common/deaditerator.hh
 include/dune/fem/gridpart/common/defaultgridpartentity.hh
 include/dune/fem/gridpart/common/entitysearch.hh
+include/dune/fem/gridpart/common/extendedentity.hh
 include/dune/fem/gridpart/common/gridpart.hh
 include/dune/fem/gridpart/common/gridpart2gridview.hh
 include/dune/fem/gridpart/common/gridpartadapter.hh
@@ -77,7 +80,6 @@ include/dune/fem/gridpart/common/gridview2gridpart.hh
 include/dune/fem/gridpart/common/indexset.hh
 include/dune/fem/gridpart/common/localfunctiongeometry.hh
 include/dune/fem/gridpart/common/metatwistutility.hh
-include/dune/fem/gridpart/common/nonadaptiveindexset.hh
 include/dune/fem/gridpart/common/persistentindexset.hh
 include/dune/fem/gridpart/common/policies.hh
 include/dune/fem/gridpart/common/sharedgeometry.hh
@@ -280,6 +282,7 @@ include/dune/fem/quadrature/integrator.hh
 include/dune/fem/quadrature/interpolationquadrature.hh
 include/dune/fem/quadrature/intersectionquadrature.hh
 include/dune/fem/quadrature/lumpingquadrature.hh
+include/dune/fem/quadrature/modifiednewtoncotes_implementation.hh
 include/dune/fem/quadrature/pardgsimplexquadrature.hh
 include/dune/fem/quadrature/pyramidpoints.hh
 include/dune/fem/quadrature/quadprovider.hh
@@ -297,6 +300,7 @@ include/dune/fem/schemes/femscheme.hh
 include/dune/fem/schemes/galerkin.hh
 include/dune/fem/schemes/integrands.hh
 include/dune/fem/schemes/linearized.hh
+include/dune/fem/schemes/masslumping.hh
 include/dune/fem/schemes/molgalerkin.hh
 include/dune/fem/solver/cginverseoperator.hh
 include/dune/fem/solver/communication/fem.hh
@@ -304,6 +308,7 @@ include/dune/fem/solver/communication/hierarchical.hh
 include/dune/fem/solver/communication/owneroverlapcopy.hh
 include/dune/fem/solver/diagonalpreconditioner.hh
 include/dune/fem/solver/eigen.hh
+include/dune/fem/solver/fempreconditioning.hh
 include/dune/fem/solver/inverseoperatorinterface.hh
 include/dune/fem/solver/istl.hh
 include/dune/fem/solver/istlinverseoperators.hh
@@ -318,9 +323,12 @@ include/dune/fem/solver/odesolver.hh
 include/dune/fem/solver/odesolverinterface.hh
 include/dune/fem/solver/oemsolver.hh
 include/dune/fem/solver/parameter.hh
+include/dune/fem/solver/parameterdoc.hh
 include/dune/fem/solver/pardginverseoperators.hh
+include/dune/fem/solver/petscavailable.hh
 include/dune/fem/solver/petscinverseoperators.hh
 include/dune/fem/solver/preconditionedinverseoperator.hh
+include/dune/fem/solver/preconditionfunctionwrapper.hh
 include/dune/fem/solver/rungekutta/basicimplicit.hh
 include/dune/fem/solver/rungekutta/basicrow.hh
 include/dune/fem/solver/rungekutta/butchertable.hh
@@ -513,7 +521,8 @@ include/dune/fem/storage/subvector.hh
 include/dune/fem/version.hh
 lib/cmake/dune-fem/dune-fem-config-version.cmake
 lib/cmake/dune-fem/dune-fem-config.cmake
-lib/cmake/dune-fem/dune-fem-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/dune-fem/dune-fem-scoped-targets-%%DUNE_FEM_CMAKE_HASH%%-release.cmake
+lib/cmake/dune-fem/dune-fem-scoped-targets-%%DUNE_FEM_CMAKE_HASH%%.cmake
 lib/cmake/dune-fem/dune-fem-targets.cmake
 lib/dunecontrol/dune-fem/dune.module
 lib/libdunefem.so