<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/2fb703215e89c1a06fdf5b1ef405c7c6cacbca16">https://github.com/macports/macports-ports/commit/2fb703215e89c1a06fdf5b1ef405c7c6cacbca16</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 2fb703215e8 llvm-devel: port patch files from clang-17
</span>2fb703215e8 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 2fb703215e89c1a06fdf5b1ef405c7c6cacbca16
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Tue Sep 26 19:17:52 2023 +0100

<span style='display:block; white-space:pre;color:#404040;'>    llvm-devel: port patch files from clang-17
</span>---
 lang/llvm-devel/Portfile                           | 10 +++++++
 ...0041-no-Werror-unguarded-availability-new.patch | 32 ++++++++++++++++++++++
 .../files/0042-mbstate_t-not-defined.patch         | 16 +++++++++++
 3 files changed, 58 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-devel/Portfile b/lang/llvm-devel/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index c10b1216703..863ff20d88b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -203,6 +203,16 @@ if {${os.platform} eq "darwin" && ${os.major} < 12} {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} <= 16} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # error: 'utimensat' is only available on macOS 10.13 or newer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append 0041-no-Werror-unguarded-availability-new.patch
</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} <= 16} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # https://github.com/llvm/llvm-project/issues/64226
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append 0042-mbstate_t-not-defined.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-patch {
     reinplace "s|@@PREFIX@@|${prefix}|" \
         ${patch.dir}/clang/lib/Driver/ToolChains/Clang.cpp \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-devel/files/0041-no-Werror-unguarded-availability-new.patch b/lang/llvm-devel/files/0041-no-Werror-unguarded-availability-new.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..be256718ed9
</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-devel/files/0041-no-Werror-unguarded-availability-new.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,32 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/HandleLLVMOptions.cmake.orig b/HandleLLVMOptions.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 76723be..1d6d880 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/llvm/cmake/modules/HandleLLVMOptions.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/llvm/cmake/modules/HandleLLVMOptions.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -600,7 +600,7 @@ endif( LLVM_COMPILER_IS_GCC_COMPATIBLE )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Specific default warnings-as-errors for compilers accepting GCC-compatible warning flags:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if ( LLVM_COMPILER_IS_GCC_COMPATIBLE OR CMAKE_CXX_COMPILER_ID MATCHES "XL" )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   add_flag_if_supported("-Werror=date-time" WERROR_DATE_TIME)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  add_flag_if_supported("-Werror=unguarded-availability-new" WERROR_UNGUARDED_AVAILABILITY_NEW)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  #add_flag_if_supported("-Werror=unguarded-availability-new" WERROR_UNGUARDED_AVAILABILITY_NEW)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif( LLVM_COMPILER_IS_GCC_COMPATIBLE OR CMAKE_CXX_COMPILER_ID MATCHES "XL" )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if ( LLVM_COMPILER_IS_GCC_COMPATIBLE )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/config-ix.cmake.orig b/config-ix.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f63c3f1..2a2dd10 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/llvm/cmake/config-ix.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/llvm/cmake/config-ix.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -271,10 +271,10 @@ set(BACKTRACE_HEADER ${Backtrace_HEADER})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Prevent check_symbol_exists from using API that is not supported for a given
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # deployment target.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-check_c_compiler_flag("-Werror=unguarded-availability-new" "C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-if(C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -Werror=unguarded-availability-new")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#check_c_compiler_flag("-Werror=unguarded-availability-new" "C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if(C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -Werror=unguarded-availability-new")
</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;'>+ # Determine whether we can register EH tables.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ check_symbol_exists(__register_frame "${CMAKE_CURRENT_LIST_DIR}/unwind.h" HAVE_REGISTER_FRAME)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-devel/files/0042-mbstate_t-not-defined.patch b/lang/llvm-devel/files/0042-mbstate_t-not-defined.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..251fd142de6
</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-devel/files/0042-mbstate_t-not-defined.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libcxx/include/__mbstate_t.h b/libcxx/include/__mbstate_t.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2b9e719b1f2e..044c10a58c04 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libcxx/include/__mbstate_t.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libcxx/include/__mbstate_t.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -42,7 +42,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif __has_include(<bits/types/mbstate_t.h>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   include <bits/types/mbstate_t.h> // works on most Unixes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif __has_include(<sys/_types/_mbstate_t.h>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#   include <sys/_types/_mbstate_t.h> // works on Darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  if __has_include(<machine/_types.h>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#    include <machine/_types.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  include <sys/_types/_mbstate_t.h> // works on Darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS) && __has_include_next(<wchar.h>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   include_next <wchar.h> // fall back to the C standard provider of mbstate_t
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif __has_include_next(<uchar.h>)
</span></pre><pre style='margin:0'>

</pre>