<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>