<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/83662481aa05dd5ffa5dfbb9857b4d1d2eae0782">https://github.com/macports/macports-ports/commit/83662481aa05dd5ffa5dfbb9857b4d1d2eae0782</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 83662481aa0 openmpi/mpich: gcc builds: add clang 9 build dependency for macOS 10.8 and earlier * clang 9 provides a modern assembler, allowing openmpi/mpich to build successfully
</span>83662481aa0 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 83662481aa05dd5ffa5dfbb9857b4d1d2eae0782
</span>Author: Christopher Nielsen <mascguy@github.com>
AuthorDate: Wed May 19 12:03:58 2021 -0400

<span style='display:block; white-space:pre;color:#404040;'>    openmpi/mpich: gcc builds: add clang 9 build dependency for macOS 10.8 and earlier
</span><span style='display:block; white-space:pre;color:#404040;'>    * clang 9 provides a modern assembler, allowing openmpi/mpich to build successfully
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/62878
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/62887
</span>---
 _resources/port1.0/group/mpiutil-1.0.tcl | 17 ++++++++++++++++-
 science/mpich/Portfile                   | 30 +++++++++++++++++++++++-------
 science/openmpi/Portfile                 | 32 +++++++++++++++++++-------------
 3 files changed, 58 insertions(+), 21 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/mpiutil-1.0.tcl b/_resources/port1.0/group/mpiutil-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 9b689994e0d..a5d5550f8ed 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/mpiutil-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/mpiutil-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -90,7 +90,22 @@ proc mpiutil_validate_subport {name subport cname clist clist_unsupported clist_
</span>     return ${subport_enabled}
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-proc mpiutil_add_compiler_depends_lib {cname} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc mpiutil_add_depends_build {subport cname} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global os.major
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} <= 12} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # For gcc builds on MacOS 10.8 and earlier, add clang-90 as a build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # dependency. This provides a modern version of 'as', allowing the port
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # to build successfully.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[string match "gcc*" ${cname}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_debug "mpiutil_add_depends_build: adding clang90 build dependency for gcc build"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                port:clang-9.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;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc mpiutil_add_compiler_depends_lib {subport cname} {
</span>     set cport_name ""
 
     # As we are making wrappers, we depend on the compilers to exist.
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/mpich/Portfile b/science/mpich/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index abc10569a30..2ee868de15c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/mpich/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/mpich/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -60,6 +60,10 @@ livecheck.type      regex
</span> livecheck.regex     {href=.([0-9.p]+)/}
 livecheck.url       ${homepage}/static/downloads/
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Target Compiler Logic - START
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # As MPICH creates compiler wrappers, there are lots of
 # variants for what compiler the user would like to wrap.
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -119,17 +123,21 @@ set cname \
</span> set subport_enabled \
     [mpiutil_validate_subport \
         ${name} ${subport} ${cname} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${clist} ${clist_unsupported} ${clist_obsolete}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${clist} ${clist_unsupported} ${clist_obsolete} \
</span>     ]
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Target Compiler Logic - END
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> if {${subport_enabled}} {
     if {${cname} eq "default"} {
         set cname "mp"
     }
 
     if {${cname} eq "mp"} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        # make every attempt to avoid MacPorts compilers
</span>         if {${os.major} == 10} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+            # Make every attempt to avoid MacPorts compilers on 10.6
</span>             configure.cxx_stdlib libstdc++
         }
     }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -157,7 +165,8 @@ if {${subport_enabled}} {
</span> 
         if {${os.major} < 12} {
             # MPICH requires OpenCL version 1.2, which was not introduced until OS X Mountain Lion
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            configure.args-append --enable-opencl=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                --enable-opencl=no
</span>         }
 
         if {${name} ne ${subport}} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -172,12 +181,18 @@ if {${subport_enabled}} {
</span>     configure.cppflags-delete   -I${prefix}/include
     configure.ldflags-delete    -L${prefix}/lib
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Add any additional build dependencies, if necessary, for platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpiutil_add_depends_build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${subport} ${cname}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     # As we are making wrappers, we depend on the compilers to exist.
     # Add them to depends_lib, not just depends_build.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    mpiutil_add_compiler_depends_lib ${cname}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpiutil_add_compiler_depends_lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${subport} ${cname}
</span> 
     # Determine whether buildbot binaries should be used, and disable if necessary
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    mpiutil_set_binary_eligibility ${subport} ${cname}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpiutil_set_binary_eligibility \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${subport} ${cname}
</span> 
     depends_build-append        port:pkgconfig
     depends_lib-append          port:libxml2 \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -185,7 +200,7 @@ if {${subport_enabled}} {
</span>     depends_run-append          port:mpi_select
     select.group                mpi
     select.file                 ${filespath}/portselect/${name}-${cname}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_run-append      port:mpi-doc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_run-append          port:mpi-doc
</span> 
     # Prevent "ccache" and "distcc" from being baked into the wrapper scripts.
     configure.ccache            no
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -197,9 +212,10 @@ if {${subport_enabled}} {
</span>     if {[string first "-default" $subport] < 0} {
         set compiler            [dict get ${clist} ${cname}]
         configure.compiler      [lindex ${compiler} 0]
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        unset compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>         append long_description \
             "\\n\\nTHIS SUBPORT WRAPS ${cname}'s C/C++"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        unset compiler
</span>     } else {
         append long_description \
             "\\n\\nTHIS SUBPORT WRAPS MACPORTS' DEFAULT COMPILER FOR C/C++"
<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 808705c3d32..2cdac55e990 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;'>@@ -54,6 +54,10 @@ livecheck.type      regex
</span> livecheck.url       https://www.open-mpi.org/
 livecheck.regex     Open MPI v(\[0-9\.\]+) released
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Target Compiler Logic - START
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # As OpenMPI creates compiler wrappers, there are lots of
 # variants for what compiler the user would like to wrap.
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -113,9 +117,13 @@ set cname \
</span> set subport_enabled \
     [mpiutil_validate_subport \
         ${name} ${subport} ${cname} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${clist} ${clist_unsupported} ${clist_obsolete}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${clist} ${clist_unsupported} ${clist_obsolete} \
</span>     ]
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Target Compiler Logic - END
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#-------------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> if {${subport_enabled}} {
     if {${cname} == "default"} {
         set cname "mp"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -158,12 +166,18 @@ if {${subport_enabled}} {
</span>     build.dir           ${configure.dir}
     destroot.dir        ${build.dir}
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Add any additional build dependencies, if necessary, for platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpiutil_add_depends_build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${subport} ${cname}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     # As we are making wrappers, we depend on the compilers to exist.
     # Add them to depends_lib, not just depends_build.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    mpiutil_add_compiler_depends_lib ${cname}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpiutil_add_compiler_depends_lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${subport} ${cname}
</span> 
     # Determine whether buildbot binaries should be used, and disable if necessary
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    mpiutil_set_binary_eligibility ${subport} ${cname}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    mpiutil_set_binary_eligibility \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${subport} ${cname}
</span> 
     depends_build-append        port:pkgconfig
     depends_lib-append          port:hwloc \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -177,9 +191,10 @@ if {${subport_enabled}} {
</span>     if {${cname} ne "mp"} {
         set compiler            [dict get ${clist} ${cname}]
         configure.compiler      [lindex ${compiler} 0]
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        unset compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>         append long_description \
             "\\n\\nTHIS SUBPORT WRAPS ${cname}'s C/C++"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        unset compiler
</span>     } else {
         append long_description \
             "\\n\\nTHIS SUBPORT WRAPS MACPORTS' DEFAULT COMPILER FOR C/C++"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -197,15 +212,6 @@ if {${subport_enabled}} {
</span>         --with-libevent=${prefix} \
         --with-zlib=${prefix}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # For MacOS 10.8 and earlier, disable use of AVX instruction set. Necessary as
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # system-provided assembler doesn't support AVX on those releases. And it's not
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # straightforward to fix.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${os.major} <= 12} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_debug "Disabling use of AVX instructions for this MacOS release"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            --enable-mca-no-build=op-avx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>     post-destroot {
         if {[string first "-devel" $subport] > 0} {
             # Supply our own -devel manpages (might be materially different / new)
</pre><pre style='margin:0'>

</pre>