<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/c086ea01f8bf53da9bc62b41bde717833a50b156">https://github.com/macports/macports-ports/commit/c086ea01f8bf53da9bc62b41bde717833a50b156</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 c086ea01f8b clang-17: fix build on macOS 10.5
</span>c086ea01f8b is described below
<span style='display:block; white-space:pre;color:#808000;'>commit c086ea01f8bf53da9bc62b41bde717833a50b156
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Thu Sep 28 09:40:11 2023 +0200
<span style='display:block; white-space:pre;color:#404040;'> clang-17: fix build on macOS 10.5
</span>---
lang/llvm-17/Portfile | 6 +++--
...use-malloc-free-only-on-macOS-before-10.6.patch | 26 ++++++++++++++++++++++
lang/llvm-17/files/add-missed-i386-host.diff | 16 +++++++++++++
3 files changed, 46 insertions(+), 2 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-17/Portfile b/lang/llvm-17/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d93e0099275..5e226a2bab3 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-17/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-17/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -141,7 +141,8 @@ patchfiles-append \
</span> 0019-10.6-and-less-use-emulated-TLS-before-10.7.patch \
0025-lldb-add-defines-needed-for-older-SDKs.patch \
0026-llvm-set-memrchr-unavailable.patch \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 0999-i386-fix.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0999-i386-fix.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add-missed-i386-host.diff
</span>
if {${os.platform} eq "darwin" && ${os.major} < 14} {
patchfiles-append \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -160,7 +161,8 @@ if {${os.platform} eq "darwin" && ${os.major} < 10} {
</span> patchfiles-append \
0022-10.5-and-less-default-to-fno-blocks.patch \
0024-10.5-and-less-compiler-rt-work-around-no-libdispatch.patch \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 0027-libcxx-link-gcc_s.1-on-macOS-before-10.6.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0027-libcxx-link-gcc_s.1-on-macOS-before-10.6.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0028-libcxx-use-malloc-free-only-on-macOS-before-10.6.patch
</span>
# inverse limit of building for macOS 10.7+
# See: https://github.com/llvm/llvm-project/commit/49d2071572d484a2b5dc356f59050bb173c8c77c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-17/files/0028-libcxx-use-malloc-free-only-on-macOS-before-10.6.patch b/lang/llvm-17/files/0028-libcxx-use-malloc-free-only-on-macOS-before-10.6.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..6aa2c72237e
</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-17/files/0028-libcxx-use-malloc-free-only-on-macOS-before-10.6.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,26 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From b040bc83342fd066fc2de96b18e9ee60f474ffa9 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: "Kirill A. Korinsky" <kirill@korins.ky>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Thu, 28 Sep 2023 09:32:08 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] [libcxx] use malloc/free only on macOS before 10.6
</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;'>+ libcxx/include/__memory/aligned_alloc.h | 3 +++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 3 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libcxx/include/__memory/aligned_alloc.h b/libcxx/include/__memory/aligned_alloc.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 786963c72dfc..9094dc87deef 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libcxx/include/__memory/aligned_alloc.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libcxx/include/__memory/aligned_alloc.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -31,6 +31,9 @@ inline _LIBCPP_HIDE_FROM_ABI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void* __libcpp_aligned_alloc(std::size_t __alignment, std::size_t __size) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # if defined(_LIBCPP_MSVCRT_LIKE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return ::_aligned_malloc(__size, __alignment);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# elif defined(__APPLE__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ // macOS before 10.6 hasn't got alligned malloc, fallback to just malloc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return ::malloc(__size);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # elif _LIBCPP_STD_VER >= 17 && !defined(_LIBCPP_HAS_NO_C11_ALIGNED_ALLOC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // aligned_alloc() requires that __size is a multiple of __alignment,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // but for C++ [new.delete.general], only states "if the value of an
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.42.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-17/files/add-missed-i386-host.diff b/lang/llvm-17/files/add-missed-i386-host.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e856ba26369
</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-17/files/add-missed-i386-host.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/llvm/llvm-project/commit/a5e10e248efc72e7909e4067060e89c35a456a18
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/llvm/lib/TargetParser/Host.cpp b/llvm/lib/TargetParser/Host.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 81309280a44b..8e9d3e97f5a3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/llvm/lib/TargetParser/Host.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/llvm/lib/TargetParser/Host.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1912,6 +1912,9 @@ static Triple withHostArch(Triple T) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__x86_64__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ T.setArch(Triple::x86_64);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ T.setArchName("x86_64");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(__i386__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ T.setArch(Triple::x86);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ T.setArchName("i386");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__powerpc__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ T.setArch(Triple::ppc);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ T.setArchName("powerpc");
</span></pre><pre style='margin:0'>
</pre>