<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/c9841dd1e8a4722dc6c2ebc0bf8722e4804d2d76">https://github.com/macports/macports-ports/commit/c9841dd1e8a4722dc6c2ebc0bf8722e4804d2d76</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 c9841dd1e8a LLVM 16: Add compiler wrapper work around for older systems
</span>c9841dd1e8a is described below

<span style='display:block; white-space:pre;color:#808000;'>commit c9841dd1e8a4722dc6c2ebc0bf8722e4804d2d76
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Tue Mar 21 17:03:07 2023 +0000

<span style='display:block; white-space:pre;color:#404040;'>    LLVM 16: Add compiler wrapper work around for older systems
</span>---
 lang/llvm-16/Portfile                              | 40 ++++++++--------------
 ...ss-clang-default-to-libc-on-all-darwin-sy.patch | 12 -------
 2 files changed, 14 insertions(+), 38 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-16/Portfile b/lang/llvm-16/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 9dfe9816b2a..0c71efbdfe8 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-16/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-16/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -8,14 +8,25 @@ PortGroup cmake                       1.1
</span> PortGroup legacysupport               1.1
 
 # Do not propagate c/c++ standards as set by base
<span style='display:block; white-space:pre;background:#ffe0e0;'>-cmake.set_c_standard     no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-cmake.set_cxx_standard   no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+cmake.set_c_standard                  no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+cmake.set_cxx_standard                no
</span> 
 # link legacysupport statically for compilers
 legacysupport.use_static              yes
 # Sysconf wrapping causes issues so disable
 legacysupport.disable_function_wrap   yes
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# libc++ link step fails on OSX10.10 and older to correctly use static legacy support lib.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# So force it to find it via compiler wrapping
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} <= [option legacysupport.newest_darwin_requires_legacy] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    PortGroup compiler_wrapper        1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cc  [compwrap::wrap_compiler cc]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxx [compwrap::wrap_compiler cxx]
</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> categories              lang
 platforms               darwin
 license                 NCSA
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -296,20 +307,7 @@ if { ${subport} eq "flang-${llvm_version}" } {
</span> }
 
 # Restrict to 10.7 and newer
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#  ... Update with LLVM 16. fails on 10.9 and older with
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Undefined symbols for architecture x86_64:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#  "_clock_gettime", referenced from:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#      std::__1::__fs::filesystem::_FilesystemClock::now() in operations.cpp.o
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#  "_fchmodat", referenced from:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#      std::__1::__fs::filesystem::__permissions(std::__1::__fs::filesystem::path const&, std::__1::__fs::filesystem::perms, std::__1::__fs::filesystem::perm_options, std::__1::error_code*) in operations.cpp.o
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#  "_fdopendir$INODE64", referenced from:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#      std::__1::__fs::filesystem::(anonymous namespace)::remove_all_impl(int, std::__1::__fs::filesystem::path const&, std::__1::error_code&) in operations.cpp.o
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#  "_openat", referenced from:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#      std::__1::__fs::filesystem::(anonymous namespace)::remove_all_impl(int, std::__1::__fs::filesystem::path const&, std::__1::error_code&) in operations.cpp.o
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#  "_unlinkat", referenced from:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#      std::__1::__fs::filesystem::(anonymous namespace)::remove_all_impl(int, std::__1::__fs::filesystem::path const&, std::__1::error_code&) in operations.cpp.o
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#  Until so interested party looks into these old OS versions, restrict to 10.10 and newer.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${os.platform} eq "darwin" && ${os.major} < 14} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span>     depends_build
     depends_lib
     depends_run
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -507,16 +505,6 @@ if {${subport} eq "clang-${llvm_version}"} {
</span>         default_variants    +analyzer
     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if { ${cxx_stdlib} eq "libc++" && ${os.major} < 13 } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        variant defaultlibcxx description {default to -stdlib=libc++ if not otherwise specified}  {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            # on systems older than darwin 13, if macports.conf is configured to stdlib=libc++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            # then make that the default if not otherwise specified. This matches the behaviour of newer systems.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            patchfiles-append 0018-10.6-and-less-clang-default-to-libc-on-all-darwin-sy.patch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        default_variants-append +defaultlibcxx
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>     variant libstdcxx description {-stdlib=libstdc++_macports searches for MacPorts libstdc++} {
 
         patchfiles-append 0005-clang-support-macports-libstdcxx.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-16/files/0018-10.6-and-less-clang-default-to-libc-on-all-darwin-sy.patch b/lang/llvm-16/files/0018-10.6-and-less-clang-default-to-libc-on-all-darwin-sy.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index d9343931a26..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-16/files/0018-10.6-and-less-clang-default-to-libc-on-all-darwin-sy.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,12 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/clang/lib/Driver/ToolChains/Darwin.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/clang/lib/Driver/ToolChains/Darwin.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -896,8 +896,8 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- bool MachO::HasNativeLLVMSupport() const { return true; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ToolChain::CXXStdlibType Darwin::GetDefaultCXXStdlibType() const {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  // Use libstdc++ on old targets (OSX < 10.9 and iOS < 7)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  if ((isTargetMacOSBased() && isMacosxVersionLT(10, 9)) ||
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  // Use libstdc++ on old targets (OSX < 10.4 and iOS < 7)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if ((isTargetMacOSBased() && isMacosxVersionLT(10, 4)) ||
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       (isTargetIOSBased() && isIPhoneOSVersionLT(7, 0)))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return ToolChain::CST_Libstdcxx;
</span></pre><pre style='margin:0'>

</pre>