<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/640b7e0aa8710d26cd0af15bde29bb6290ad6b20">https://github.com/macports/macports-ports/commit/640b7e0aa8710d26cd0af15bde29bb6290ad6b20</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 640b7e0  clang-3.4 and deps: allow bootstrapping libcxx on 10.6
</span>640b7e0 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 640b7e0aa8710d26cd0af15bde29bb6290ad6b20
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Fri Aug 16 02:15:34 2019 +1000

<span style='display:block; white-space:pre;color:#404040;'>    clang-3.4 and deps: allow bootstrapping libcxx on 10.6
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This involves non-conflicting subports that use libstdc++ for ports
</span><span style='display:block; white-space:pre;color:#404040;'>    that use a C++ stdlib and their dependents, and clearing
</span><span style='display:block; white-space:pre;color:#404040;'>    configure.cxx_stdlib for the ports that don't use a C++ stdlib so that
</span><span style='display:block; white-space:pre;color:#404040;'>    a macports-clang compiler won't be used.
</span>---
 archivers/bzip2/Portfile         |  6 ++++++
 archivers/xz/Portfile            | 19 +++++++++++++++++++
 archivers/zlib/Portfile          | 13 ++++++++++++-
 databases/db48/Portfile          |  9 +++++++++
 databases/gdbm/Portfile          |  9 +++++++++
 databases/sqlite3/Portfile       |  9 +++++++++
 devel/cctools/Portfile           |  5 +++++
 devel/gettext/Portfile           | 24 +++++++++++++++++++++---
 devel/gperf/Portfile             | 16 ++++++++++++++++
 devel/icu/Portfile               | 16 ++++++++++++++++
 devel/ld64/Portfile              |  7 +++++++
 devel/libedit/Portfile           |  9 +++++++++
 devel/libffi/Portfile            |  6 ++++++
 devel/libmacho/Portfile          |  7 +++++--
 devel/libunwind/Portfile         | 15 ++++++++++++++-
 devel/ncurses/Portfile           | 16 ++++++++++++++++
 devel/openssl/Portfile           |  6 ++++++
 devel/pkgconfig/Portfile         | 27 ++++++++++++++++++++++++++-
 devel/readline/Portfile          |  9 +++++++++
 lang/libcxx/Portfile             | 16 +++++++++++++---
 lang/llvm-3.4/Portfile           | 25 +++++++++++++++++++++++--
 lang/llvm-3.7/Portfile           |  9 ++++++++-
 lang/perl5/Portfile              | 10 ++++++++++
 lang/python27/Portfile           | 35 +++++++++++++++++++++++++++++++++++
 sysutils/clang_select/Portfile   |  6 ++++++
 sysutils/llvm_select/Portfile    |  6 ++++++
 sysutils/python2_select/Portfile |  1 +
 sysutils/python_select/Portfile  |  1 +
 textproc/expat/Portfile          |  6 ++++++
 textproc/libiconv/Portfile       | 18 ++++++++++++++++++
 textproc/libxml2/Portfile        | 24 ++++++++++++++++++++++++
 31 files changed, 371 insertions(+), 14 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/archivers/bzip2/Portfile b/archivers/bzip2/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 81cf32f..3b97ea8 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/archivers/bzip2/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/archivers/bzip2/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,6 +33,12 @@ use_parallel_build      yes
</span> 
 variant universal {}
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Having the stdlib set to libc++ on 10.6 causes a dependency on a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # macports-clang compiler to be added, which would be a dep cycle.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> build.args              CC="${configure.cc} [get_canonical_archflags cc]" \
                         PREFIX=${prefix}
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/archivers/xz/Portfile b/archivers/xz/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 2678e38..c86be19 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/archivers/xz/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/archivers/xz/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -27,6 +27,25 @@ checksums       rmd160  0c5a6ffd47d657fed0c7192f413422e503b79c69 \
</span> 
 depends_lib     port:libiconv port:gettext
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-replace     port:libiconv port:libiconv-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:gettext port:gettext-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Avoid macports-clang dep (doesn't use C++ anyway)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # This port is in the dependency chain for clang 3.7 and later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> patchfiles      c89.patch
 
 configure.args  --with-libiconv-prefix=${prefix} --with-libintl-prefix=${prefix}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/archivers/zlib/Portfile b/archivers/zlib/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 311792b..86a0c13 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/archivers/zlib/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/archivers/zlib/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,7 +19,18 @@ long_description        zlib is designed to be a free, general-purpose, \
</span>                         and operating system.
 
 master_sites            ${homepage}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_xz                  yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${configure.cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx, which is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # indirectly used by the normal xz port.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_extract     port:xz-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    extract.suffix      .tar.xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    extract.cmd         ${prefix}/libexec/libcxx-bootstrap/bin/xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Doesn't actually use C++, and having the stdlib set to libc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # on 10.6 causes a macports-clang compiler to be selected.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    use_xz              yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
 checksums               rmd160  3f3ecd35efa6d41ba7b90e5f6e872e2ee8e42044 \
                         sha256  4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066 \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/databases/db48/Portfile b/databases/db48/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 15c2878..8780855 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/databases/db48/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/databases/db48/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -30,6 +30,15 @@ checksums       md5     f80022099c5742cd179343556179aa8c \
</span>                 sha1    ab36c170dda5b2ceaad3915ced96e41c6b7e493c \
                 rmd160  dd2fcd4c9b857a91e2f491fd4fadb0c51b993a9c
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is in the dependency chain for clang 3.7 and later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            compiler.blacklist-append   macports-clang-${ver}
</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> patchfiles      patch-dbinc_atomic.h
 
 # Don't link with "-flat_namespace -undefined suppress" on Yosemite and
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/databases/gdbm/Portfile b/databases/gdbm/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 242668b..d0d4c5e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/databases/gdbm/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/databases/gdbm/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,6 +31,15 @@ checksums           rmd160  041c0dd2ae49d724ba509ce70a4349d246a9767d \
</span> # later (#45709).
 patchfiles          yosemite-libtool.patch
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is in the dependency chain for clang 3.7 and later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            compiler.blacklist-append   macports-clang-${ver}
</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> configure.ccache    no
 
 configure.args      --disable-silent-rules \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/databases/sqlite3/Portfile b/databases/sqlite3/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 2021a69..17396cb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/databases/sqlite3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/databases/sqlite3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,6 +36,15 @@ depends_lib         port:libedit \
</span>                     port:ncurses \
                     port:zlib
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is in the dependency chain for clang 3.7 and later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            compiler.blacklist-append   macports-clang-${ver}
</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> configure.args      --enable-threadsafe \
                     --enable-dynamic-extensions \
                     --disable-readline \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cctools/Portfile b/devel/cctools/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 15d8f2b..650ea05 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cctools/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cctools/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -91,6 +91,11 @@ if { ![some_llvm_variant_set] && ![variant_isset xcode] } {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[variant_isset llvm34] && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib    libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> variant xcode conflicts universal description "Use Xcode supplied cctools" {
     supported_archs noarch
     patchfiles
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gettext/Portfile b/devel/gettext/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index a4dfc64..095f2e7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/gettext/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gettext/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -45,6 +45,27 @@ post-patch {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib             port:libiconv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:ncurses
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-replace     port:libiconv port:libiconv-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:ncurses port:ncurses-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib    libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> configure.env-append    PATH=${localbindir}:$env(PATH)
 
 configure.cppflags      -no-cpp-precomp
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -71,9 +92,6 @@ configure.args-append   --without-cvs \
</span>                         --without-git \
                         --without-xz
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib             port:libiconv \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:ncurses
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> test.run                yes
 test.target             check
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gperf/Portfile b/devel/gperf/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 00a92f4..e8d9530 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/gperf/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gperf/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -22,6 +22,22 @@ checksums       md5     9e251c0a618ad0824b51117d5d9db87e \
</span> 
 installs_libs   no
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib    libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> configure.args  --infodir=${prefix}/share/info
 
 test.run        yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/icu/Portfile b/devel/icu/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 308b564..e16975f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/icu/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/icu/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -32,6 +32,22 @@ distfiles                   ${distname}-src${extract.suffix}
</span> checksums                   rmd160  df06e7b18a87e383d3762564f2e9a59fd75865f9 \
                             sha256  2b0a4410153a9b20de0e20c7d8b66049a72aef244b53683d0d7521371683da0c
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib    libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> worksrcdir      ${name}/source
 set docdir      ${prefix}/share/doc/${name}
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/ld64/Portfile b/devel/ld64/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0684b90..aa249e9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/ld64/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ld64/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -181,6 +181,8 @@ if {${subport} eq ${name}} {
</span>     distfiles
     build {}
     use_configure no
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    # avoid cyclic macports-clang dep on 10.6/libc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span> 
     variant ld64_97 conflicts ld64_127 ld64_236 ld64_xcode description {Use ld64-97 as the default linker (last version that works on Tiger)} {}
     variant ld64_127 conflicts ld64_97 ld64_236 ld64_xcode description {Use ld64-127 as the default linker (last version that supports ppc and works on Leopard)} {}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -306,6 +308,11 @@ if {${subport} eq ${name}} {
</span>         }
     }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.platform} eq "darwin" && ${os.major} < 11 && ${subport} eq "ld64-127" && [variant_isset llvm34]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # This port is used by clang-3.4 to bootstrap libcxx.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib    libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     if {${os.major} < 10} {
         # Leopard and earlier didn't have libunwind.h in the SDK
         depends_build-append    path:include/libunwind.h:libunwind-headers
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libedit/Portfile b/devel/libedit/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 19ba481..24475df 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libedit/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libedit/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,6 +26,15 @@ checksums           rmd160  213fb25fe0546ff99690b3d0f1f32bfd0ee08826 \
</span> 
 depends_lib         port:ncurses
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is required by clang 3.7 and later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            compiler.blacklist-append   macports-clang-${ver}
</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> # rename man files to avoid conflict with readline
 # see https://trac.macports.org/ticket/51891
 # see https://github.com/macports/macports-ports/commit/86fdc2922ed2b932b8c1d7a676e9ca3acc8ed85a
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libffi/Portfile b/devel/libffi/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 60cc9cf..4b5853b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libffi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libffi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -32,6 +32,12 @@ patchfiles-append   PR-44170.patch
</span> # Don't use macports gcc or clang toolchains to build this due to dependency cycles
 compiler.blacklist-append macports-*
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Doesn't actually use C++, and having the stdlib set to libc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # on 10.6 causes a macports-clang compiler to be chosen.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Older versions of cctools have a history of being problematic with complex
 # asm like libffi has, so opt for the integrated assembler if it's available
 if {[string match *clang* ${configure.compiler}]} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libmacho/Portfile b/devel/libmacho/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 8bb9f44..f6fbf0e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libmacho/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libmacho/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,7 +26,7 @@ patchfiles              cctools-921-noavx512.patch
</span> 
 use_configure           no
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${subport} == "${name}-headers"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq "${name}-headers"} {
</span>     supported_archs         noarch
     universal_variant       no
     use_configure           no
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,7 +39,10 @@ if {${subport} == "${name}-headers"} {
</span>         file rename -force ${destroot}${prefix}/usr/include ${destroot}${prefix}/
         file delete -force ${destroot}${prefix}/usr
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-} elseif {${subport} == "${name}"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Having the stdlib set to libc++ on 10.6 causes a macports-clang
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # compiler to be selected (which is a problem for bootstrapping).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} elseif {${subport} eq "${name}"} {
</span>     # Technically not needed, but subports will expect depending on libunwind to pull in the headers
     depends_lib-append port:libmacho-headers
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libunwind/Portfile b/devel/libunwind/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0b82c42..5d97a88 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libunwind/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libunwind/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -46,7 +46,7 @@ post-patch {
</span> build.dir       ${worksrcpath}/src
 destroot.dir    ${build.dir}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${subport} == "${name}-headers"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq "${name}-headers"} {
</span>     revision 0
 
     supported_archs noarch
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -56,6 +56,19 @@ if {${subport} == "${name}-headers"} {
</span>     destroot.target installhdrs
     destroot.args \
         PREFIX="${prefix}"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.platform} eq "darwin" && ${os.major} < 11 && ${configure.cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # This port is used by clang-3.4 to bootstrap libcxx, which is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # indirectly used by the normal xz port.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        use_xz              no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_extract     port:xz-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        extract.suffix      .tar.xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        extract.cmd         ${prefix}/libexec/libcxx-bootstrap/bin/xz
</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;'>+    # Having the stdlib set to libc++ on 10.6 causes a macports-clang
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # compiler to be selected.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span> } else {
     revision 0
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/ncurses/Portfile b/devel/ncurses/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index e94b929..1327b18 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/ncurses/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ncurses/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -22,6 +22,22 @@ checksums       rmd160 938235f3922f9c6ef0f1081d643ecb2da1347a17 \
</span> # hex.diff from https://opensource.apple.com/source/ncurses/ncurses-44/patches.applied/
 patchfiles      hex.diff
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib    libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> configure.cppflags
 configure.ldflags
 configure.args  --enable-widec \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/openssl/Portfile b/devel/openssl/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index ef578dc..50d1ae7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/openssl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/openssl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,6 +49,12 @@ patchfiles          install-headers-HFS+.patch \
</span>                     parallel-building.patch \
                     remove-duplicate-bn_print-doc.patch
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Having the stdlib set to libc++ on 10.6 causes a dependency on a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # macports-clang compiler to be added, which would be a dep cycle.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.ccache    no
 configure.perl      /usr/bin/perl
 configure.cmd       ./Configure
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/pkgconfig/Portfile b/devel/pkgconfig/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 79ad18b..7c1092d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/pkgconfig/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/pkgconfig/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -29,14 +29,39 @@ depends_lib         port:libiconv
</span> patchfiles          patch-glib-configure.diff \
                     patch-glib-glib-gmessages.c.diff
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set stdprefix ${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-replace     port:libiconv port:libiconv-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Avoid macports-clang dep (doesn't use C++ anyway)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> set docdir          ${prefix}/share/doc/${name}
 
 configure.args      --disable-silent-rules \
                     --disable-host-tool \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-pc-path=${prefix}/lib/pkgconfig:${prefix}/share/pkgconfig \
</span>                     --with-internal-glib \
                     --docdir=${docdir}
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {$subport eq "${name}-bootstrap"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # search bootstrap prefix and then normal prefix
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append   --with-pc-path=${prefix}/lib/pkgconfig:${prefix}/share/pkgconfig:${stdprefix}/lib/pkgconfig:${stdprefix}/share/pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append   --with-pc-path=${prefix}/lib/pkgconfig:${prefix}/share/pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.env       PKG_CONFIG=false
 
 post-configure {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/readline/Portfile b/devel/readline/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 5762955..4fdc547 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/readline/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/readline/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -44,6 +44,15 @@ checksums           rmd160  25b23261140f5a37225470faecf22663f070cde4 \
</span>                     sha256  e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461 \
                     size    2975937
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is in the dependency chain for clang 3.7 and later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            compiler.blacklist-append   macports-clang-${ver}
</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> configure.args  --with-curses
 
 configure.universal_args-delete --disable-dependency-tracking
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/Portfile b/lang/libcxx/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 8c923a0..5890f6b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/libcxx/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/libcxx/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,7 +24,17 @@ homepage                https://libcxx.llvm.org/
</span> master_sites            https://releases.llvm.org/${version}/
 dist_subdir             llvm
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_xz                  yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${configure.cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Bootstrap problem, libcxx is indirectly used by the normal xz port.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_extract     port:xz-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    extract.suffix      .tar.xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    extract.cmd         ${prefix}/libexec/libcxx-bootstrap/bin/xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # And having the stdlib set to libc++ on 10.6 causes a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # macports-clang compiler to be selected.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    use_xz              yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
 set libcxxabi_distname  libcxxabi-${version}.src
 set libcxx_distname     libcxx-${version}.src
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -79,7 +89,7 @@ if {${os.major} < 11 || [variant_isset replacemnt_libcxx]} {
</span> 
         # only selected clang versions support emulated_tls, and the emulated_tls variant
         # needs to be enabled to build libcxx with emulated_tls support
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        foreach ver {5.0 6.0 7.0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {5.0 6.0 7.0 8.0} {
</span>             if {[file exists ${prefix}/bin/clang-mp-${ver}]} {
                 if {[active_variants clang-${ver} emulated_tls]} {
                   default_variants-append +emulated_tls
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -92,7 +102,7 @@ if {${os.major} < 11 || [variant_isset replacemnt_libcxx]} {
</span>     compiler.blacklist *gcc* {clang < 500}
 
     # clang 3.5 and newer are conditionally blacklisted to prevent dependency cycles
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach ver {3.5 3.6 3.7 3.8 3.9 4.0 5.0 6.0 7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach ver {3.5 3.6 3.7 3.8 3.9 4.0 5.0 6.0 7.0 8.0 devel} {
</span>         if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
             compiler.blacklist-append macports-clang-${ver}
         }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-3.4/Portfile b/lang/llvm-3.4/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 1c1eaaa..e8dd822 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-3.4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-3.4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -13,6 +13,8 @@ revision                12
</span> subport                 clang-${llvm_version} { revision 12 }
 set suffix              mp-${llvm_version}
 set sub_prefix          ${prefix}/libexec/llvm-${llvm_version}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# prefix for deps using libstdc++ on a libc++ system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set bootstrap_prefix    ${prefix}/libexec/libcxx-bootstrap
</span> dist_subdir             llvm
 categories              lang
 platforms               darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,7 +57,22 @@ if {${subport} eq "llvm-${llvm_version}"} {
</span>     # after #46040 is resolved.
     depends_lib-append  port:libffi port:ncurses port:zlib
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    default_variants    +analyzer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Avoid requiring a bootstrap version of perl5 on 10.6.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} >= 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        default_variants    +analyzer
</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 {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib    libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Have to also use bootstrap versions of deps that use libstdc++ in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # order to be able to build libc++.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-replace port:libxml2 port:libxml2-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:python27 port:python27-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:ncurses port:ncurses-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cppflags-prepend  -I${bootstrap_prefix}/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.ldflags-prepend   -L${bootstrap_prefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.env-append    PATH=${bootstrap_prefix}/bin:$::env(PATH)
</span> }
 
 #fetch.type              svn
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -173,7 +190,11 @@ if {${subport} eq "llvm-${llvm_version}"} {
</span>     select.group        clang
     select.file         ${filespath}/mp-${subport}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-append --with-python=${prefix}/bin/python2.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append --with-python=${bootstrap_prefix}/bin/python2.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append --with-python=${prefix}/bin/python2.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> }
 
 # g++-4.0 fails to build some of the newer C++ for ppc. Intel looks ok, but I prefer using gcc-4.2 for consistency
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-3.7/Portfile b/lang/llvm-3.7/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 8ae28e5..8da1466 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-3.7/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-3.7/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -88,7 +88,14 @@ if {${subport} eq "llvm-${llvm_version}"} {
</span> version                 ${llvm_version}.1
 epoch                   1
 master_sites            https://releases.llvm.org/${version}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_xz                  yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++" && ![file executable ${prefix}/bin/xz]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # xz needs a macports-clang compiler to build in this configuration
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_extract     port:xz-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    extract.suffix      .tar.xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    extract.cmd         ${prefix}/libexec/libcxx-bootstrap/bin/xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    use_xz              yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> distfiles               llvm-${version}.src${extract.suffix}
 worksrcdir              llvm-${version}.src
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/perl5/Portfile b/lang/perl5/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index bd8e3d1..fd21d5e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/perl5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/perl5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,6 +51,15 @@ foreach {perl5.v perl5.subversion perl5.revision perl5.rmd160 perl5.sha256 perl5
</span>         depends_lib-append  port:db48 \
                             port:gdbm
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # This port is in the dependency chain for clang 3.7 and later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    compiler.blacklist-append   macports-clang-${ver}
</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>         distname            perl-${perl5.major}.${perl5.subversion}
         dist_subdir         perl${perl5.major}
         if {${perl5.major} >= 5.28} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -207,6 +216,7 @@ if {$subport eq $name} {
</span>     long_description        ${description}
 
     supported_archs         noarch
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span> 
     perl5.require_variant   yes
     perl5.conflict_variants yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/python27/Portfile b/lang/python27/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index c158a33..0f58da2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/python27/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/python27/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -54,6 +54,41 @@ depends_lib         port:bzip2 \
</span> depends_run         port:python_select \
                     port:python2_select
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set stdprefix ${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set frameworks_dir  ${prefix}/Library/Frameworks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set applications_dir    ${prefix}/Applications
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cppflags-append   -I${stdprefix}/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.ldflags-append    -L${stdprefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.env-append    PATH=${prefix}/bin:$::env(PATH)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        patchfiles-delete       patch-libedit.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_build-replace   port:pkgconfig port:pkgconfig-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-replace     port:gettext port:gettext-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:ncurses port:ncurses-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-delete      port:db48 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:libedit \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:sqlite3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # no need to be 'port select'able
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_run
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        use_xz              no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_extract     port:xz-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        extract.suffix      .tar.xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        extract.cmd         ${prefix}/bin/xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> configure.args      --enable-framework=${frameworks_dir} \
                     --enable-ipv6 \
                     --with-system-expat \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/clang_select/Portfile b/sysutils/clang_select/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 95a71d2..1d616af 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/clang_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/clang_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,3 +26,9 @@ destroot {
</span> }
 
 livecheck.type none
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Having the stdlib set to libc++ on 10.6 causes a dependency on a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # macports-clang compiler to be added, which would be a dep cycle.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/llvm_select/Portfile b/sysutils/llvm_select/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 592e1af..d671af3 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/llvm_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/llvm_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,3 +26,9 @@ destroot {
</span> }
 
 livecheck.type none
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Having the stdlib set to libc++ on 10.6 causes a dependency on a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # macports-clang compiler to be added, which would be a dep cycle.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/python2_select/Portfile b/sysutils/python2_select/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 980086d..bf985f0 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/python2_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/python2_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9,6 +9,7 @@ revision            3
</span> categories          sysutils
 platforms           darwin
 supported_archs     noarch
<span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cxx_stdlib
</span> license             BSD
 maintainers         {yan12125 @yan12125} openmaintainer
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/python_select/Portfile b/sysutils/python_select/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 1f5d4d0..cffefe4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/python_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/python_select/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9,6 +9,7 @@ revision            8
</span> categories          sysutils
 platforms           darwin
 supported_archs     noarch
<span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cxx_stdlib
</span> license             BSD
 maintainers         {yan12125 @yan12125} openmaintainer
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/textproc/expat/Portfile b/textproc/expat/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d27b45b..32ab1bd 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/textproc/expat/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/textproc/expat/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,6 +28,12 @@ homepage            http://www.libexpat.org/
</span> master_sites        sourceforge:project/${name}/${name}/${version}
 use_bzip2           yes
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Having the stdlib set to libc++ on 10.6 causes a dependency on a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # macports-clang compiler to be added, which would be a dep cycle.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.args      --without-docbook
 
 use_parallel_build  yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/textproc/libiconv/Portfile b/textproc/libiconv/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 6dc7dec..a71490d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/textproc/libiconv/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/textproc/libiconv/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -32,6 +32,24 @@ patchfiles \
</span>     patch-src-Makefile.in-darwin.diff \
     patch-c99.diff
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_build-replace     port:gperf port:gperf-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Avoid macports-clang dep (doesn't use C++ anyway)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> configure.cppflags
 configure.ldflags
 configure.args \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/textproc/libxml2/Portfile b/textproc/libxml2/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 076fdff..1d52a12 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/textproc/libxml2/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/textproc/libxml2/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,6 +33,30 @@ checksums           rmd160  a7d5f9ca4a24db329108f4bfb6bd4eed0f61ab21 \
</span>                     sha256  94fb70890143e3c6549f265cee93ec064c80a84c42ad0f23e85ee1fd6540a871 \
                     size    5476717
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This port is used by clang-3.4 to bootstrap libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subport ${name}-bootstrap {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set stdprefix ${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        prefix      ${prefix}/libexec/libcxx-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cppflags-append   -I${stdprefix}/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.ldflags-append    -L${stdprefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.env-append    PATH=${prefix}/bin:$::env(PATH)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_build-replace   port:pkgconfig port:pkgconfig-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-replace     port:libiconv port:libiconv-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:icu port:icu-bootstrap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                port:xz port:xz-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Also needed by later clangs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach ver {8.0 7.0 6.0 5.0 3.7} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![file executable ${prefix}/bin/clang-mp-${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                compiler.blacklist-append   macports-clang-${ver}
</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;'>+
</span> patchfiles-append   include.patch
 
 post-patch {
</pre><pre style='margin:0'>

</pre>