<pre style='margin:0'>
Marcus Calhoun-Lopez (MarcusCalhoun-Lopez) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/6f40bf9d9377f9619f25e757f4f325093a5728b1">https://github.com/macports/macports-ports/commit/6f40bf9d9377f9619f25e757f4f325093a5728b1</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 6f40bf9d9377f9619f25e757f4f325093a5728b1
</span>Author: Marcus Calhoun-Lopez <mcalhoun@macports.org>
AuthorDate: Sat Nov 10 17:58:04 2018 -0700

<span style='display:block; white-space:pre;color:#404040;'>    getdp: new port
</span>---
 science/getdp/Portfile                        | 112 ++++++++++++++++++++++++++
 science/getdp/files/patch-fortran_lib.diff    |  11 +++
 science/getdp/files/patch-python_version.diff |  11 +++
 3 files changed, 134 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/getdp/Portfile b/science/getdp/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..40e8584
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/getdp/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,112 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- 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
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem            1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup             cmake          1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup             cxx11          1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup             mpi            1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup             linear_algebra 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup             muniversal     1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                  getdp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version               3.0.3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories            science math
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license               GPL-2+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers           {mcalhoun @MarcusCalhoun-Lopez} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms             darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description           a general environment for the treatment of discrete problems
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description      \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    GetDP is a free finite element solver using mixed elements to discretize de Rham-type complexes in one, two and three dimensions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage              http://getdp.info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites          http://getdp.info/src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.suffix        .tgz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname              ${name}-${version}-source
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums             rmd160  beb60412b5a973ac51ad4e322323d052f4dda290 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      sha256  3f2080b7125ce6faae92fd4fce295c061ece2ff93aed7aca71665db6f236e9d9 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      size    1991983
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+mpi.setup             require_fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append     patch-fortran_lib.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      patch-python_version.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append    port:arpack \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      port:gsl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      port:hpddm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append -DCMAKE_INCLUDE_PATH=${prefix}/include/hpddm \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      -DENABLE_PETSC=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      -DENABLE_BUILD_LIB=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      -DENABLE_BUILD_SHARED=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      -DENABLE_BUILD_DYNAMIC=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      -DENABLE_GMSH=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+mpi.enforce_variant   arpack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[mpi_variant_isset]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append -DENABLE_MPI=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # hpddm is *always* built using MPI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpi.enforce_variant   hpddm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cppflags-append -DHPDDM_MPI=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        -DBLAS_LAPACK_LIBRARIES="-L${prefix}/lib ${linalglib}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant petsc description {Use PETSc linear solver} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-replace -DENABLE_PETSC=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           -DENABLE_PETSC=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append  -DPETSC_DIR=${prefix}/lib/petsc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           -DSLEPC_DIR=${prefix}/lib/slepc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append     port:petsc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           port:slepc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpi.enforce_variant    petsc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpi.enforce_variant    slepc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {![mpi_variant_isset]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_error "PETSc variant requires an MPI variant"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        return -code error "+petsc requires an MPI variant."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append port:python27
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|__MACPORTS_PYTHON_VERSION__|2.7|g" ${worksrcpath}/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append port:python36
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|__MACPORTS_PYTHON_VERSION__|3.6|g" ${worksrcpath}/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append port:python37
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|__MACPORTS_PYTHON_VERSION__|3.7|g" ${worksrcpath}/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        -DENABLE_PYTHON=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![variant_isset python36] && ![variant_isset python37]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    default_variants +python27
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant gmsh description {Enable Gmsh functions (for field interpolation)} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append port:gmsh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-replace -DENABLE_GMSH=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           -DENABLE_GMSH=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default_variants +gmsh
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/getdp/files/patch-fortran_lib.diff b/science/getdp/files/patch-fortran_lib.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..fc42655
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/getdp/files/patch-fortran_lib.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- CMakeLists.txt.orig    2018-10-11 00:06:15.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ CMakeLists.txt 2018-11-10 08:51:02.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -592,7 +592,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if(CMAKE_Fortran_COMPILER MATCHES "gfortran")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if(NOT EXTERNAL_LIBRARIES MATCHES "gfortran")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        list(APPEND LAPACK_LIBRARIES -lgfortran)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        #list(APPEND LAPACK_LIBRARIES -lgfortran)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       endif(NOT EXTERNAL_LIBRARIES MATCHES "gfortran")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     elseif(CMAKE_Fortran_COMPILER MATCHES "f95")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       list(APPEND LAPACK_LIBRARIES -lgfortran)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/getdp/files/patch-python_version.diff b/science/getdp/files/patch-python_version.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..37c1c14
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/getdp/files/patch-python_version.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- CMakeLists.txt.orig    2018-11-10 10:05:23.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ CMakeLists.txt 2018-11-10 10:06:39.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -657,7 +657,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif(ENABLE_OCTAVE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(ENABLE_PYTHON)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  find_package(PythonLibs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  find_package(PythonLibs __MACPORTS_PYTHON_VERSION__ REQUIRED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if(PYTHONLIBS_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list(APPEND EXTERNAL_LIBRARIES ${PYTHON_LIBRARIES})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list(APPEND EXTERNAL_INCLUDES ${PYTHON_INCLUDE_DIRS})
</span></pre><pre style='margin:0'>

</pre>