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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/3defb5c3c4fd8c8217d277b621a8944b1d109f18">https://github.com/macports/macports-ports/commit/3defb5c3c4fd8c8217d277b621a8944b1d109f18</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 3defb5c  llvm-10: enable build on 10.6.8
</span>3defb5c is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 3defb5c3c4fd8c8217d277b621a8944b1d109f18
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Tue Apr 28 16:36:40 2020 -0700

<span style='display:block; white-space:pre;color:#404040;'>    llvm-10: enable build on 10.6.8
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    also - disable Apple Availability tests for libc++
</span><span style='display:block; white-space:pre;color:#404040;'>    which don't apple to 10.6.8 and earlier, that have
</span><span style='display:block; white-space:pre;color:#404040;'>    libcxx supplied by MacPorts
</span>---
 lang/llvm-10/Portfile                              |  6 ++-
 lang/llvm-10/files/5003-patch-llvm10-strnlen.diff  | 51 ++++++++++++++++++++++
 ...libcxx-includes-disable-availability-tests.diff | 13 ++++++
 3 files changed, 69 insertions(+), 1 deletion(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-10/Portfile b/lang/llvm-10/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4863f87..6046fea 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-10/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-10/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -129,7 +129,8 @@ patchfiles-append \
</span>     5000-patch-llvm8-tools-dsymutil-symbolmap-use-older-cfname-and-fix-uuid-on-leopard.diff \
     5000-patch-lib-support-unix-path-copyfileclone-on-older-systems.diff \
     5001-patch-machoreader-strnlen.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    5002-patch-objdumper-strnlen.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    5002-patch-objdumper-strnlen.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    5003-patch-llvm10-strnlen.diff
</span> 
 if {${subport} eq "clang-${llvm_version}"} {
     patchfiles-append \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -326,6 +327,9 @@ platform darwin {
</span>             # the directorywatcher code in clang-9.0+ is 10.7+
             # I believe this patch could be applied always, without a system test
             patchfiles-append 5003-patch-no-directory-watcher-on-snowleopard.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # the libcxx installed by MacPorts on darwin 10 and less does not correspond to Apple's builtin libcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            patchfiles-append 5005-MacPorts-only-patch-libcxx-includes-disable-availability-tests.diff
</span>         }
 
         if {${os.major} <= 9} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-10/files/5003-patch-llvm10-strnlen.diff b/lang/llvm-10/files/5003-patch-llvm10-strnlen.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..db634ea
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-10/files/5003-patch-llvm10-strnlen.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,51 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp b/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 380f2e98..dbfe8ce6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11,6 +11,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "llvm/Support/Errc.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "llvm/Support/ErrorHandling.h"
</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;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <Availability.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __MAC_OS_X_VERSION_MIN_REQUIRED < 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static size_t strnlen(const char *s, size_t maxlen) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  size_t l = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  while (l < maxlen && *s) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    l++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    s++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return l;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace llvm {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace objcopy {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace macho {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/tools/llvm-objcopy/MachO/Object.cpp b/tools/llvm-objcopy/MachO/Object.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d3b4fdc2..3f88377b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/llvm-objcopy/MachO/Object.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/llvm-objcopy/MachO/Object.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "Object.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "../llvm-objcopy.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <Availability.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __MAC_OS_X_VERSION_MIN_REQUIRED < 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static size_t strnlen(const char *s, size_t maxlen) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  size_t l = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  while (l < maxlen && *s) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    l++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    s++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return l;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace llvm {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace objcopy {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace macho {
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-10/files/5005-MacPorts-only-patch-libcxx-includes-disable-availability-tests.diff b/lang/llvm-10/files/5005-MacPorts-only-patch-libcxx-includes-disable-availability-tests.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..6ada840
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-10/files/5005-MacPorts-only-patch-libcxx-includes-disable-availability-tests.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm-10.0.0.src/projects/libcxx/include/__config.orig  2020-04-28 09:59:15.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ llvm-10.0.0.src/projects/libcxx/include/__config       2020-04-28 10:00:33.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10,6 +10,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef _LIBCPP_CONFIG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define _LIBCPP_CONFIG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// for MacPorts, our installed libcxx does not require Apple system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// Availability tests
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _LIBCPP_DISABLE_AVAILABILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(_MSC_VER) && !defined(__clang__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #    define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
</span></pre><pre style='margin:0'>

</pre>