<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/ed9c96aae95bb1e0a0551f5d315a2b2be3925773">https://github.com/macports/macports-ports/commit/ed9c96aae95bb1e0a0551f5d315a2b2be3925773</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new ed9c96aae95 openmpi: update to 4.1.1; add new variants heterogeneous and mpi1 * Enable use of published binaries for all compiler-specific subports * Add lib dependency for zlib, and corresponding configure flag * Ensure target compilers are added to depends_lib
</span>ed9c96aae95 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit ed9c96aae95bb1e0a0551f5d315a2b2be3925773
</span>Author: Christopher Nielsen <mascguy@github.com>
AuthorDate: Tue Apr 27 14:43:52 2021 -0400

<span style='display:block; white-space:pre;color:#404040;'>    openmpi: update to 4.1.1; add new variants heterogeneous and mpi1
</span><span style='display:block; white-space:pre;color:#404040;'>    * Enable use of published binaries for all compiler-specific subports
</span><span style='display:block; white-space:pre;color:#404040;'>    * Add lib dependency for zlib, and corresponding configure flag
</span><span style='display:block; white-space:pre;color:#404040;'>    * Ensure target compilers are added to depends_lib
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/62795
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/62788
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/62783
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/62214
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/62070
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/60597
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/59547
</span>---
 science/openmpi/Portfile | 65 ++++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 55 insertions(+), 10 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/openmpi/Portfile b/science/openmpi/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 3f50223b510..4ce7f89eadf 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/openmpi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/openmpi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,9 +7,23 @@ PortGroup           compilers 1.0
</span> PortGroup           muniversal 1.0
 PortGroup           legacysupport 1.0
 
<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;'>+# *** IMPORTANT NOTE ***
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# When making logic changes to this port, PLEASE review port 'mpich' to see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# if the same changes should be applied. While the subports and variants aren't
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# exactly the same between the two - and things like configure arguments
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# certainly differ, as they're different code bases - much of the core logic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# is very similar. (And often identical.)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Please help us avoid divergent MPI ports, which cause serious migraines.
</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> name                openmpi
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             4.1.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             4.1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span> set branch          [join [lrange [split ${version} .] 0 1] .]
 categories          science parallel net
 platforms           darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -29,9 +43,9 @@ homepage            https://www.open-mpi.org/
</span> set subdir          ompi/v${branch}/downloads/
 master_sites        https://www.open-mpi.org/software/${subdir}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  15e3b5429e74f0f39a46ca0cc35de92b68ea21d0 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  73866fb77090819b6a8c85cb8539638d37d6877455825b74e289d647a39fd5b5 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    10022171
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  60fff94c4c7a4bfaaa11285f35d76265516ed8b0 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    10052770
</span> 
 use_bzip2           yes
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -185,13 +199,35 @@ if {${cname} in ${clist_unsupported}} {
</span>         set cname                   mp
     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Force buildbot to skip this since openmpi depends on hwloc and that would
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # be different for a user's machine
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    archive_sites
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # As we are making wrappers, we depend on the compilers to exist.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Add them to depends_lib, not just depends_build.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[regexp {clang[3-9]\d} ${cname}] == 1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Ports for Clang versions < 10 are named: clang-<major>.<minor>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cport_name          [regsub {(\d)(\d)} ${cname} {-\1.\2}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif {[regexp {clang\d\d} ${cname}] == 1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Ports for Clang version >= 10 are named: clang-<major><minor>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cport_name          [regsub {(\d)(\d)} ${cname} {-\1\2}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif {([regexp {gcc\d} ${cname}] == 1) || ([regexp {gcc\d\d} ${cname}] == 1)} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Ports for GCC have names exactly matching our subports, so use as-is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cport_name          ${cname}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[info exists cport_name]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_debug "Adding compiler to depends_lib: ${cport_name}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-append      port:${cport_name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        unset cport_name
</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 {[lsearch -exact {mp llvm clang} ${cname}] != -1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Force local builds with Xcode-provided compilers (avoid issues with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # different Xcode versions on buildbot and user machines)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_debug "Disabling binary use for subport: ${subport}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        archive_sites
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> 
     depends_build-append        port:pkgconfig
     depends_lib-append          port:hwloc \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                                port:libevent
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:libevent \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:zlib
</span>     depends_run                 port:mpi_select port:mpi-doc
     select.group                mpi
     select.file                 ${filespath}/${name}-${cname}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -214,7 +250,8 @@ if {${cname} in ${clist_unsupported}} {
</span>         --docdir=${prefix}/share/docdelete \
         --mandir=${prefix}/share/mandelete \
         --with-hwloc=${prefix} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        --with-libevent=${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        --with-libevent=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        --with-zlib=${prefix}
</span> 
     post-destroot {
         if {[string first "-devel" $subport] > 0} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -304,6 +341,14 @@ you execute 'mpicc' etc.) please run:
</span>         configure.args-append --enable-debug --enable-memchecker --with-valgrind=${prefix}
     }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    variant heterogeneous description {enable heterogeneous support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append --enable-heterogeneous
</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 mpi1 description {enable legacy mpi1 compatibility} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append --enable-mpi1-compatibility
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     if {![info exists universal_possible]} {
         set universal_possible [expr {${os.universal_supported} && [llength ${configure.universal_archs}] >= 2}]
     }
</pre><pre style='margin:0'>

</pre>