[120744] trunk/dports/math

sean at macports.org sean at macports.org
Thu Jun 5 20:54:59 PDT 2014


Revision: 120744
          https://trac.macports.org/changeset/120744
Author:   sean at macports.org
Date:     2014-06-05 20:54:59 -0700 (Thu, 05 Jun 2014)
Log Message:
-----------
ngsolve: add new port; closes #42057

Added Paths:
-----------
    trunk/dports/math/ngsolve/
    trunk/dports/math/ngsolve/Portfile
    trunk/dports/math/ngsolve/files/
    trunk/dports/math/ngsolve/files/patch-extern-netgen.diff
    trunk/dports/math/ngsolve/files/patch-l2hofe-template.diff

Added: trunk/dports/math/ngsolve/Portfile
===================================================================
--- trunk/dports/math/ngsolve/Portfile	                        (rev 0)
+++ trunk/dports/math/ngsolve/Portfile	2014-06-06 03:54:59 UTC (rev 120744)
@@ -0,0 +1,48 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem          1.0
+PortGroup           compilers 1.0
+
+compilers.setup
+
+name                ngsolve
+version             5.1
+platforms           darwin
+categories          math
+license             LGPL-2
+maintainers         nomaintainer
+description         NGSolve Finite Element Library
+long_description    NGSolve is a general purpose Finite Element Library \
+                    on top of Netgen. With the basic library one can solve \
+                    heat flow equations, Maxwell equations, and solid \
+                    mechanical problems. Several add-ons are available for \
+                    particular application classes.
+
+homepage            http://sourceforge.net/apps/mediawiki/ngsolve/
+master_sites        sourceforge:ngsolve
+
+checksums           rmd160  0e0638b91b81fa1d6dbf7baf76794b225b6b7f8c \
+                    sha256  5c3a035345cdcf526c1b6b3f1ec12b37a3c856c82c8d31e22ef87d1477f2eb82
+
+depends_lib         port:tcl port:tk port:tix port:Togl port:netgen
+
+# configure.ldflags-append -lcblas -lf77blas -latlas -llapack -lgfortran
+configure.ldflags-append -lnglib -linterface -lgeom2d -lmesh -lstl -lcsg -lcsgvis -lz
+
+configure.args      --mandir=${prefix}/share/man \
+                    --with-tcl=${prefix}/lib \
+                    --with-netgen=${prefix} \
+                    --disable-shared \
+                    --with-lapack="-framework Accelerate"
+
+patchfiles          patch-l2hofe-template.diff \
+                    patch-extern-netgen.diff
+
+test.run            yes
+test.target         test
+
+post-destroot {
+    reinplace -W ${destroot}${prefix}/bin "s,libngsolve,${prefix}/lib/libngsolve,g" ngsolve.tcl
+    delete ${destroot}${prefix}/include/clapack.h
+}

Added: trunk/dports/math/ngsolve/files/patch-extern-netgen.diff
===================================================================
--- trunk/dports/math/ngsolve/files/patch-extern-netgen.diff	                        (rev 0)
+++ trunk/dports/math/ngsolve/files/patch-extern-netgen.diff	2014-06-06 03:54:59 UTC (rev 120744)
@@ -0,0 +1,13 @@
+--- solve/ngs.cpp.orig	2014-06-01 15:17:41.000000000 -0500
++++ solve/ngs.cpp	2014-06-01 15:18:03.000000000 -0500
+@@ -2,8 +2,8 @@
+ 
+ namespace netgen
+ {
+-  int h_argc;
+-  char ** h_argv;
++  extern int h_argc;
++  extern char ** h_argv;
+ }
+ 
+ int main(int argc, char ** argv)

Added: trunk/dports/math/ngsolve/files/patch-l2hofe-template.diff
===================================================================
--- trunk/dports/math/ngsolve/files/patch-l2hofe-template.diff	                        (rev 0)
+++ trunk/dports/math/ngsolve/files/patch-l2hofe-template.diff	2014-06-06 03:54:59 UTC (rev 120744)
@@ -0,0 +1,124 @@
+--- fem/l2hofe.cpp.orig	2014-05-31 11:21:29.000000000 -0500
++++ fem/l2hofe.cpp	2014-05-31 11:25:40.000000000 -0500
+@@ -17,18 +17,18 @@
+ 
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   typename L2HighOrderFE<ET,SHAPES,BASE>::TPRECOMP L2HighOrderFE<ET,SHAPES,BASE>::precomp;
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   typename L2HighOrderFE<ET,SHAPES,BASE>::TPRECOMP_TRACE L2HighOrderFE<ET,SHAPES,BASE>::precomp_trace(320);
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   typename L2HighOrderFE<ET,SHAPES,BASE>::TPRECOMP_GRAD L2HighOrderFE<ET,SHAPES,BASE>::precomp_grad(40);
+ 
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   PrecomputeTrace ()
+   {
+@@ -56,7 +56,7 @@
+   }
+   
+   
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   PrecomputeGrad ()
+   {
+@@ -72,7 +72,7 @@
+     
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   PrecomputeShapes (const IntegrationRule & ir) 
+   {
+@@ -95,7 +95,7 @@
+   
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   Evaluate (const IntegrationRule & ir, FlatVector<double> coefs, FlatVector<double> vals) const
+   {
+@@ -108,7 +108,7 @@
+   }
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   EvaluateTrans (const IntegrationRule & ir, FlatVector<> values, FlatVector<> coefs) const
+   {
+@@ -128,7 +128,7 @@
+ 
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   EvaluateGrad (const IntegrationRule & ir, FlatVector<> coefs, FlatMatrixFixWidth<DIM> values) const
+     {
+@@ -145,7 +145,7 @@
+     }
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   EvaluateGradTrans (const IntegrationRule & ir, FlatMatrixFixWidth<DIM> values, FlatVector<> coefs) const
+     {
+@@ -163,7 +163,7 @@
+ 
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   GetGradient (FlatVector<> coefs, FlatMatrixFixWidth<DIM> grad) const
+   {
+@@ -179,7 +179,7 @@
+       DGFiniteElement<DIM>::GetGradient (coefs, grad);
+   }
+   
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   GetGradientTrans (FlatMatrixFixWidth<DIM> grad, FlatVector<> coefs) const
+   {
+@@ -203,7 +203,7 @@
+ 
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   GetTrace (int facet, FlatVector<> coefs, FlatVector<> fcoefs) const
+     {
+@@ -218,7 +218,7 @@
+ 	DGFiniteElement<DIM>::GetTrace (facet, coefs, fcoefs);
+     }
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   GetTraceTrans (int facet, FlatVector<> fcoefs, FlatVector<> coefs) const
+   {
+@@ -232,7 +232,7 @@
+     }
+ 
+ 
+-  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET> class SHAPES, class BASE>
++  template <ELEMENT_TYPE ET, template <ELEMENT_TYPE ET2> class SHAPES, class BASE>
+   void L2HighOrderFE<ET,SHAPES,BASE> :: 
+   GetDiagMassMatrix (FlatVector<> mass) const
+   {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140605/d77344b4/attachment-0001.html>


More information about the macports-changes mailing list