<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/a6519037557dc367850ff54b27ea59f7ed9cbfcf">https://github.com/macports/macports-ports/commit/a6519037557dc367850ff54b27ea59f7ed9cbfcf</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit a6519037557dc367850ff54b27ea59f7ed9cbfcf
</span>Author: Marcus Calhoun-Lopez <mcalhoun@macports.org>
AuthorDate: Mon Aug 27 16:39:48 2018 -0700
<span style='display:block; white-space:pre;color:#404040;'> mumps: respect MacPorts build flags & add scotch dep
</span>---
math/mumps/Portfile | 63 +++++++++++-------
math/mumps/files/patch-Makefile.inc.diff | 107 +++++++++++++++++++++++++++++++
2 files changed, 146 insertions(+), 24 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/mumps/Portfile b/math/mumps/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 88be23c..efe8155 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/math/mumps/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/mumps/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,19 +3,19 @@
</span> PortSystem 1.0
PortGroup mpi 1.0
PortGroup linear_algebra 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup muniversal 1.0
</span>
name mumps
version 5.1.2
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 1
</span> categories math
license CeCILL-C
platforms darwin
maintainers {sean @seanfarley} openmaintainer
description MUltifrontal Massively Parallel sparse direct Solver
long_description MUMPS: a parallel sparse direct solver
<span style='display:block; white-space:pre;background:#ffe0e0;'>-supported_archs noarch
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib port:scalapack port:parmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:scotch port:scalapack port:metis port:parmetis
</span>
homepage http://mumps.enseeiht.fr/
master_sites ${homepage}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,36 +33,51 @@ mpi.enforce_variant scalapack
</span> linalg.setup blas_only
patch.pre_args -p1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append patch-shared.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-shared.diff patch-Makefile.inc.diff
</span>
use_parallel_build no
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_configure no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cmd printenv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.pre_args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.universal_args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.post_args {>> Makefile.inc}
</span>
build.target alllib
build.args SHAREDFLAGS="-dynamiclib" PREFIX="${prefix}" SHAREDLIBEXT=".dylib"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.cflags -fPIC -O3 -mtune=native
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.fflags -fPIC -O3 -mtune=native
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.f90flags -fPIC -O3 -mtune=native
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.optflags -O3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.mtune native
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cflags-append -fPIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.fflags-append -fPIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.env-append MACPORTS_PREFIX=${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.env-append MACPORTS_BLAS="${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;'>+if {![variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${build_arch} eq "x86_64" || ${build_arch} eq "ppc64"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set arch_flag -m64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set arch_flag -m32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.fflags-append ${arch_flag}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # find correct scotch Fortran header
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[file exists ${prefix}/include/${build_arch}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.cppflags-prepend -I${prefix}/include/${build_arch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # find correct scotch Fortran header
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach arch ${configure.universal_archs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[file exists ${prefix}/include/${arch}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend merger_configure_cppflags(${arch}) -I${prefix}/include/${arch}
</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>
post-extract {
file copy ${worksrcpath}/Make.inc/Makefile.inc.generic ${worksrcpath}/Makefile.inc
<span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^\#LMETISDIR.*$|LMETISDIR = ${prefix}/lib|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^\#IMETIS.*$|IMETIS = -I${prefix}/include|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^\#LMETIS.*$|LMETIS = ${prefix}/lib/libparmetis.dylib ${prefix}/lib/libmetis.dylib|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^ORDERINGSF.*$|ORDERINGSF = -Dpord -Dparmetis|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^CC .*$|CC = ${configure.cc}|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^FC .*$|FC = ${configure.f90}|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^FL .*$|FL = ${configure.f90}|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^OPTC .*$|OPTC = ${configure.cflags}|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^OPTL .*$|OPTL = ${configure.cflags}|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^OPTF .*$|OPTF = ${configure.f90flags}|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^AR.*$|AR = ar cr |" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^RANLIB.*$|RANLIB = ranlib -c|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^SCALAP.*$|SCALAP = ${prefix}/lib/libscalapack.dylib|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^INCPAR.*$|INCPAR = -I\$(topdir)/include|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^LIBPAR.*$|LIBPAR = \$(SCALAP)|" ${worksrcpath}/Makefile.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|^LIBBLAS.*$|LIBBLAS = ${linalglib}|" ${worksrcpath}/Makefile.inc
</span> }
destroot {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/mumps/files/patch-Makefile.inc.diff b/math/mumps/files/patch-Makefile.inc.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..20b75b1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/mumps/files/patch-Makefile.inc.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,107 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Makefile.inc 2017-10-02 00:37:01.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Makefile.inc 2018-06-29 10:13:01.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -40,8 +40,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Metis/ParMetis and SCOTCH/PT-SCOTCH (ver 6.0 and later) orderings are recommended.
</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;'>+-#SCOTCHDIR = ${HOME}/scotch_6.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ISCOTCH = -I$(SCOTCHDIR)/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++SCOTCHDIR = $(MACPORTS_PREFIX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ISCOTCH = -I$(SCOTCHDIR)/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # You have to choose one among the following two lines depending on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # the type of analysis you want to perform. If you want to perform only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -50,15 +50,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # line (remember to add -Dptscotch in the ORDERINGSF variable below)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #LSCOTCH = -L$(SCOTCHDIR)/lib -lesmumps -lscotch -lscotcherr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr
</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;'>+ LPORDDIR = $(topdir)/PORD/lib/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ IPORD = -I$(topdir)/PORD/include/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LPORD = -L$(LPORDDIR) -lpord
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#LMETISDIR = /opt/metis-5.1.0/build/Linux-x86_64/libmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#IMETIS = /opt/metis-5.1.0/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LMETISDIR = $(MACPORTS_PREFIX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++IMETIS = -I$(MACPORTS_PREFIX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # You have to choose one among the following two lines depending on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # the type of analysis you want to perform. If you want to perform only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -67,14 +67,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # line (remember to add -Dparmetis in the ORDERINGSF variable below)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #LMETIS = -L$(LMETISDIR) -lmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#LMETIS = -L$(LMETISDIR) -lparmetis -lmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LMETIS = -L$(LMETISDIR) -lparmetis -lmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # The following variables will be used in the compilation process.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Please note that -Dptscotch and -Dparmetis imply -Dscotch and -Dmetis respectively.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # If you want to use Metis 4.X or an older version, you should use -Dmetis4 instead of -Dmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # or in addition with -Dparmetis (if you are using parmetis 3.X or older).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ORDERINGSF = -Dscotch -Dmetis -Dpord -Dptscotch -Dparmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-ORDERINGSF = -Dpord
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ORDERINGSF = -Dscotch -Dmetis -Dpord -Dptscotch -Dparmetis
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ORDERINGSF = -Dpord
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ORDERINGSC = $(ORDERINGSF)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LORDERINGS = $(LMETIS) $(LPORD) $(LSCOTCH)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -101,27 +101,27 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # FC : Fortran 90 compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FC = f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # FL : Fortran linker
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-FL = f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++FL = $(FC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # AR : Archive object in a library
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # keep a space at the end if options have to be separated from lib name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-AR = ar vr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AR = ar cr
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # RANLIB : generate index of an archive file
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # (optionnal use "RANLIB = echo" in case of problem)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-RANLIB = ranlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++RANLIB = ranlib -c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #RANLIB = echo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # DEFINE HERE YOUR LAPACK LIBRARY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-LAPACK = -llapack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LAPACK =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # SCALAP should define the SCALAPACK and BLACS libraries.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-SCALAP = -lscalapack -lblacs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++SCALAP = -L$(MACPORTS_PREFIX) -lscalapack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # INCLUDE DIRECTORY FOR MPI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-INCPAR = -I/usr/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++INCPAR =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # LIBRARIES USED BY THE PARALLEL VERSION OF MUMPS: $(SCALAP) and MPI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-LIBPAR = $(SCALAP) $(LAPACK) -L/usr/lib -lmpi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBPAR = $(SCALAP) $(LAPACK)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # The parallel version is not concerned by the next two lines.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # They are related to the sequential library provided by MUMPS,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -131,7 +131,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # DEFINE HERE YOUR BLAS LIBRARY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-LIBBLAS = -lblas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBBLAS = $(MACPORTS_BLAS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # DEFINE HERE YOUR PTHREAD LIBRARY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBOTHERS = -lpthread
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -150,9 +150,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CDEFS = -DAdd_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #COMPILER OPTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-OPTF = -O
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-OPTC = -O -I.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-OPTL = -O
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++OPTF = $(CPPFLAGS) $(FFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++OPTC = -I. $(CPPFLAGS) $(CFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++OPTL = $(LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # CHOOSE BETWEEN USING THE SEQUENTIAL OR THE PARALLEL VERSION.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>
</pre>