<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/5ad437db3d850cd98c0c232afff3ccdb7697ec81">https://github.com/macports/macports-ports/commit/5ad437db3d850cd98c0c232afff3ccdb7697ec81</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 5ad437db3d850cd98c0c232afff3ccdb7697ec81
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Tue Mar 26 07:27:02 2024 -0700

<span style='display:block; white-space:pre;color:#404040;'>    cmake: update to v3.29.0
</span>---
 devel/cmake/Portfile                               | 238 +++++++++++++--------
 .../files/patch-CMakeFindFrameworks.cmake.diff     |   4 +-
 devel/cmake/files/patch-Modules-noArchCheck.diff   |  72 -------
 devel/cmake/files/patch-cmake-leopard-tiger.diff   |  14 +-
 devel/cmake/files/patch-cmakeroot-with-app.diff    |  13 ++
 .../cmake/files/patch-fix-system-prefix-path.diff  |   4 +-
 devel/cmake/files/patch-libuv-legacy-systems.diff  |  61 ++++++
 devel/cmake/files/patch-qt5gui.diff                |  11 +-
 .../files/patch-remove-homebrew-references.diff    |  58 +++++
 9 files changed, 296 insertions(+), 179 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/Portfile b/devel/cmake/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 14e1056067b..93738e4339f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cmake/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -10,7 +10,7 @@ if { ${os.platform} eq "darwin" && ${os.major} >= 20 && ${build_arch} eq "x86_64
</span> 
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           gitlab 1.0
</span> PortGroup           legacysupport 1.1
 
 # CMake is a dependency of clang
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,43 +18,37 @@ PortGroup           clang_dependency 1.0
</span> 
 name                cmake
 conflicts           cmake-devel
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_name         cmake
</span> 
 categories          devel
 license             BSD
 installs_libs       no
 maintainers         {michaelld @michaelld} {mascguy @mascguy}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> description         Cross-platform make
 set base_long_description \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    "An extensible, open-source system that manages the build \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    process in an operating system and compiler independent manner. \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Unlike many cross-platform systems, CMake is designed to be \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    "An extensible, open-source system that manages the build\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    process in an operating system and compiler independent manner.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Unlike many cross-platform systems, CMake is designed to be\
</span>     used in conjunction with the native build environment."
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> homepage            https://cmake.org
 platforms           darwin freebsd
<span style='display:block; white-space:pre;background:#e0ffe0;'>+gitlab.instance     https://gitlab.kitware.com
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup        Kitware CMake 3.24.4 v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  27361e6bac14691aacb46a132d7c016f39b022a9 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  32c9e499510eff7070d3f0adfbabe0afea2058608c5fa93e231beb49fbfa2296 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    10400358
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+gitlab.setup        cmake   cmake v3.29.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  675cf96f6982101661cbdcd6bb08fa01aa70a709 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  65237692283ad50f38680c1fc650d27c652780141321ee97673f7747863fc265 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    8571882
</span> revision            0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# limit livecheck to the current major.minor version
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set branch          [join [lrange [split ${version} .] 0 1] .]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-github.livecheck.regex ([quotemeta ${branch}]\\.\[0-9.\]+)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-github.tarball_from releases
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-distname            ${name}-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dist_subdir         ${my_name}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# CMake can be built with C++11, but some older Clang on OSX 10.9 and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# earlier claim C++11 support yet don't actually support certain features.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Bump to C++14 to avoid these issues.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# See also https://trac.macports.org/ticket/66340 and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://trac.macports.org/ticket/66040
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.cxx_standard 2014
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    2014
</span> 
 platform darwin {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {!((${os.major} < 9) || ${build_arch} eq "ppc" ||
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-          ${build_arch} eq "ppc64")} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {!((${os.major} < 9) || ${build_arch} eq "ppc" || ${build_arch} eq "ppc64")} {
</span>         depends_lib-append port:libcxx
         configure.cxx_stdlib libc++
     }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -71,7 +65,6 @@ long_description ${base_long_description} \
</span>     The ${subport} release port is updated roughly every few months.
 
 patchfiles-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    patch-Modules-noArchCheck.diff \
</span>     patch-CMakeFindFrameworks.cmake.diff \
     patch-Source_Modules_FindLibUV.cmake.diff \
     patch-fix_cxx14_17_checks.diff \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -79,7 +72,10 @@ patchfiles-append \
</span>     patch-cmake-leopard-tiger.diff \
     patch-fix-clock_gettime-test.diff \
     patch-qt5gui.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    patch-cmake-cmInstallRuntime-initializer-fix.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patch-cmake-cmInstallRuntime-initializer-fix.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patch-libuv-legacy-systems.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patch-cmakeroot-with-app.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patch-remove-homebrew-references.diff
</span> 
 depends_lib-append \
     port:curl \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -87,8 +83,7 @@ depends_lib-append \
</span>     port:zlib \
     port:bzip2 \
     port:libarchive \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    port:ncurses \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    port:libuv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    port:ncurses
</span> 
 # configure is just a shell script that passes directly to bootstrap
 configure.cmd ./bootstrap
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -103,19 +98,12 @@ configure.env-append \
</span>     CMAKE_INCLUDE_PATH=${prefix}/include/ncurses \
     CMAKE_LIBRARY_PATH=${prefix}/lib
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Check if the default compiler has yet to be installed. Used to
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# prevent circular deps involving variants. Has to be tested here
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# before our blacklisting and whitelisting is applied.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${os.platform} eq "darwin" && ${os.major} <= 10 &&
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ${cxx_stdlib} eq "libc++" && ![file exists ${configure.cxx}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set cmake_bootstrapping yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # clang 3.4 can't build certain parts of the
 # cmake self-testing infrastructure
 # https://trac.macports.org/ticket/59782
 if {${configure.compiler} eq "macports-clang-3.4"} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.post_args-append -DBUILD_TESTING=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.post_args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        -DBUILD_TESTING=OFF
</span> }
 
 platform darwin {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -123,24 +111,34 @@ platform darwin {
</span>         CMAKE_OSX_DEPLOYMENT_TARGET=${macosx_deployment_target}
 
     if {${configure.sdkroot} eq ""} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.env-append SDKROOT=/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            SDKROOT=/
</span>     }
 
     if {${os.arch} eq "i386" && ${os.major} <= 9} {
         # The old system headers do some bit shifting on Intel about which
         # newer compilers throw errors:
         # SecKeychain.h:102:46: error: shift expression '(1853123693 << 8)' overflows [-fpermissive]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.cflags-append -fpermissive
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.cxxflags-append -fpermissive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            -fpermissive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxxflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            -fpermissive
</span>     }
 
     if {${os.major} >= 11 && ${os.major} <= 12} {
         # some functions in xlocale.h are hidden without this define
         # https://trac.macports.org/ticket/60885
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.cxxflags-append -D_DARWIN_C_SOURCE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.cxxflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            -D_DARWIN_C_SOURCE
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/67943
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[string match *gcc* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.ldflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        -latomic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # jsoncpp 1.0+ requires CMake for building; circular dependencies
 # are not possible in MacPorts. In addition, jsoncpp uses C++, so
 # it would not be possible for CMake, which uses libc++ on
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -153,8 +151,11 @@ configure.args-append \
</span>     --parallel=${build.jobs} \
     --init=${worksrcpath}/macports.cmake \
     --system-libs \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    --no-qt-gui \
</span>     --no-system-jsoncpp \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    --no-system-librhash
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    --no-system-librhash \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    --no-system-libuv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    --no-system-cppdap
</span> 
 configure.universal_args
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -162,7 +163,8 @@ configure.universal_args
</span> array set merger_host {i386 {} x86_64 {} ppc {} ppc64 {} arm64 {}}
 
 platform darwin 8 {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.ldflags-append -Wl,-framework -Wl,ApplicationServices
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.ldflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        -Wl,-framework -Wl,ApplicationServices
</span> }
 
 # Leopard's Rosetta has some difficulties configuring the ppc slice
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -185,7 +187,8 @@ post-patch {
</span>     # patch PREFIX
     reinplace "s|__PREFIX__|${prefix}|g" \
         ${worksrcpath}/macports.cmake \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${worksrcpath}/Modules/Platform/Darwin.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/Modules/Platform/Darwin.cmake \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/Source/cmSystemTools.cxx
</span> 
     # patch FRAMEWORKS
     reinplace "s|__FRAMEWORKS_DIR__|${frameworks_dir}|g" \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -207,58 +210,86 @@ post-destroot {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# All the variants create circular dependencies on 10.6 with libc++,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# due to the default compiler needing cmake to build.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[info exists cmake_bootstrapping]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set some_variant_disabled 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach vname { qt5 docs python38 python39 python310 python311} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {[variant_isset $vname]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            unset ::variations($vname)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            set some_variant_disabled 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {$some_variant_disabled} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        notes-append "Installing $name with variants would create\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            circular dependencies, so all variants have been\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            deselected. You can install again with your desired\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            variants after the default compiler has been installed."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc remove_parent_contents {p_subport p_parent} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global destroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ui_debug "${p_subport}: removing files unrelated to parent ${p_parent}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach f [exec port contents ${p_parent}] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        delete ${destroot}${f}
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant qt5 description {Build Qt GUI using Qt5} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set subport_gui \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ${name}-gui
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set subport_docs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ${name}-docs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${subport_gui} {
</span>     PortGroup qt5 1.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-append --qt-gui --qt-qmake=${qt_qmake_cmd}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        CMake QT-based GUI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    long_description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        "${description}"
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![variant_isset qt5]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-append --no-qt-gui
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        port:${name}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Supported pythons
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set python_versions {38 39 310 311}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# declare all +python* variants, with conflicts
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach pyver ${python_versions} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Conflicting python versions
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set other_python_versions {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach other_pyver ${python_versions} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {${other_pyver} ne ${pyver}} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            if {${other_pyver} ni ${other_python_versions}} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                lappend other_python_versions python${other_pyver}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        --no-qt-gui \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        --qt-gui
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        --qt-qmake=${qt_qmake_cmd}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Deconflict with parent port contents
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        remove_parent_contents \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${subport} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # FIXME: Remove help files; disable generation instead?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach d [glob ${destroot}${prefix}/share/cmake*] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_info "${subport}: deleting dir: ${d}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            delete ${d}
</span>         }
     }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set python_branch "[string index ${pyver} 0].[string range ${pyver} 1 end]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport ${subport_docs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        CMake Documentation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    long_description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        {*}${description}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    variant python${pyver} conflicts {*}${other_python_versions} description "Build documentation using ${python_branch} sphinx" {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    platforms       any
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    supported_archs noarch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|__PYTHON_VERSION_WITH_DOT__|${PYTHON_VERSION_WITH_DOT}|g" ${worksrcpath}/macports.cmake
</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;'>+    # Supported pythons
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set python_versions {38 39 310 311 312}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # declare all +python* variants, with conflicts
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach pyver ${python_versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Conflicting python versions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set other_python_versions {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach other_pyver ${python_versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {${other_pyver} ne ${pyver}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                if {${other_pyver} ni ${other_python_versions}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    lappend other_python_versions python${other_pyver}
</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:#ffe0e0;'>-# +docs requires one +python* variant
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[variant_isset docs]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set python_branch "[string index ${pyver} 0].[string range ${pyver} 1 end]"
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # see if one or more +python* variants is set
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        variant python${pyver} conflicts {*}${other_python_versions} description "Build documentation using ${python_branch} sphinx" {}
</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;'>+    # Docs requires one +python* variant
</span>     set python_isset false
     foreach pyver ${python_versions} {
         if {!${python_isset}} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -272,27 +303,31 @@ if {[variant_isset docs]} {
</span> 
     # set default +python* variant if none were already selected
     if {!${python_isset}} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        default_variants +python311
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set python_isset true
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        default_variants +python312
</span>     }
 
     # make sure one of the +python* variants is set
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # this loop checks for "+docs" and - default Python variant
</span>     set python_isset false
     foreach pyver ${python_versions} {
         if {!${python_isset}} {
             set python_isset  [variant_isset python${pyver}]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            set PYTHON_VERSION_WITH_DOT "[string index ${pyver} 0].[string range ${pyver} 1 end]"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            set PYTHON_VERSION_NO_DOT ${pyver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set python_branch "[string index ${pyver} 0].[string range ${pyver} 1 end]"
</span>         }
     }
 
     if {!${python_isset}} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_error "\n\nYou must select exactly one of the +python38, +python39, +python310, or +python311 variants when using variant +docs.\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_error "\n\nYou must select one of the python variants when building ${subport}\n"
</span>         return -code error "Invalid variant selection"
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant docs description {Build documentation: HTML and manpages} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set PYTHON_VERSION_WITH_DOT \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${python_branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set PYTHON_VERSION_NO_DOT \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${pyver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        port:${name}
</span> 
     configure.args-append \
         --mandir=share/man \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -310,7 +345,30 @@ variant docs description {Build documentation: HTML and manpages} {
</span>         port:py${PYTHON_VERSION_NO_DOT}-sphinxcontrib-serializinghtml \
         port:py${PYTHON_VERSION_NO_DOT}-sphinxcontrib-websupport
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|__PYTHON_VERSION_WITH_DOT__|${PYTHON_VERSION_WITH_DOT}|g" ${worksrcpath}/macports.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Deconflict with parent port contents
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        remove_parent_contents \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${subport} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # FIXME: Remove help files; disable generation instead?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach d [glob ${destroot}${prefix}/share/cmake*] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_info "${subport}: deleting dir: ${d}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            delete ${d}
</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 {${subport} eq ${name}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    notes "\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        The CMake GUI and Docs are now provided as subports '${subport_gui}' and '${subport_docs}', respectively.
</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;'>+    test.run                yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    test.target             test
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Ignore RC versions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    gitlab.livecheck.regex  {([0-9.]+)}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.type          none
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-CMakeFindFrameworks.cmake.diff b/devel/cmake/files/patch-CMakeFindFrameworks.cmake.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index d0e0df01251..0ec3d089168 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cmake/files/patch-CMakeFindFrameworks.cmake.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/files/patch-CMakeFindFrameworks.cmake.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,10 +1,10 @@
</span> --- Modules/CMakeFindFrameworks.cmake.orig
 +++ Modules/CMakeFindFrameworks.cmake
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -22,7 +22,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -29,7 +29,7 @@
</span>              ${CMAKE_FRAMEWORK_PATH}
              ${_cmff_CMAKE_FRAMEWORK_PATH}
              ~/Library/Frameworks
<span style='display:block; white-space:pre;background:#ffe0e0;'>--            /usr/local/Frameworks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            ${_brew_framework_path}
</span> +            __FRAMEWORKS_DIR__
              /Library/Frameworks
              /System/Library/Frameworks
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-Modules-noArchCheck.diff b/devel/cmake/files/patch-Modules-noArchCheck.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 9f84f526092..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cmake/files/patch-Modules-noArchCheck.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,72 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- Modules/BasicConfigVersion-AnyNewerVersion.cmake.in.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ Modules/BasicConfigVersion-AnyNewerVersion.cmake.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -34,15 +34,3 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if("@CVF_ARCH_INDEPENDENT@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "@CMAKE_SIZEOF_VOID_P@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION_UNSUITABLE TRUE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- Modules/BasicConfigVersion-ExactVersion.cmake.in.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ Modules/BasicConfigVersion-ExactVersion.cmake.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -74,15 +74,3 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if("@CVF_ARCH_INDEPENDENT@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "@CMAKE_SIZEOF_VOID_P@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION_UNSUITABLE TRUE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- Modules/BasicConfigVersion-SameMajorVersion.cmake.in.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ Modules/BasicConfigVersion-SameMajorVersion.cmake.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -56,15 +56,3 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if("@CVF_ARCH_INDEPENDENT@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "@CMAKE_SIZEOF_VOID_P@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION_UNSUITABLE TRUE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- Modules/BasicConfigVersion-SameMinorVersion.cmake.in.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ Modules/BasicConfigVersion-SameMinorVersion.cmake.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -76,15 +76,3 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if("@CVF_ARCH_INDEPENDENT@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  return()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "@CMAKE_SIZEOF_VOID_P@")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  set(PACKAGE_VERSION_UNSUITABLE TRUE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--endif()
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-cmake-leopard-tiger.diff b/devel/cmake/files/patch-cmake-leopard-tiger.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index a93b888c96a..1d7ec651ceb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cmake/files/patch-cmake-leopard-tiger.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/files/patch-cmake-leopard-tiger.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,6 @@
</span> --- Utilities/cmlibuv/src/unix/core.c
 +++ Utilities/cmlibuv/src/unix/core.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -537,10 +537,24 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -559,10 +559,24 @@
</span>   * will unwind the thread when it's in the cancel state. Work around that
   * by making the system call directly. Musl libc is unaffected.
   */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,7 +26,7 @@
</span>  #if defined(__LP64__) || TARGET_OS_IPHONE
    extern int close$NOCANCEL(int);
    return close$NOCANCEL(fd);
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -548,7 +562,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -570,7 +584,9 @@
</span>    extern int close$NOCANCEL$UNIX2003(int);
    return close$NOCANCEL$UNIX2003(fd);
  #endif
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,7 +36,7 @@
</span>  #elif defined(__linux__) && defined(__SANITIZE_THREAD__) && defined(__clang__)
    long rc;
    __sanitizer_syscall_pre_close(fd);
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1365,8 +1381,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1368,8 +1384,12 @@
</span>    if (name == NULL)
      return UV_EINVAL;
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,7 +51,7 @@
</span>  }
 --- Utilities/cmlibuv/src/unix/fs.c
 +++ Utilities/cmlibuv/src/unix/fs.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1071,7 +1071,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1072,7 +1072,7 @@
</span>  
      return -1;
    }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -60,7 +60,7 @@
</span>        defined(__DragonFly__)       || \
        defined(__FreeBSD__)         || \
        defined(__FreeBSD_kernel__)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1184,7 +1184,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1198,7 +1198,7 @@
</span>    ts[0] = uv__fs_to_timespec(req->atime);
    ts[1] = uv__fs_to_timespec(req->mtime);
    return utimensat(AT_FDCWD, req->path, ts, AT_SYMLINK_NOFOLLOW);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -69,7 +69,7 @@
</span>        defined(__DragonFly__)      ||                                          \
        defined(__FreeBSD__)        ||                                          \
        defined(__FreeBSD_kernel__) ||                                          \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1438,7 +1438,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1452,7 +1452,7 @@
</span>    dst->st_blksize = src->st_blksize;
    dst->st_blocks = src->st_blocks;
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -80,7 +80,7 @@
</span>    dst->st_mtim.tv_sec = src->st_mtimespec.tv_sec;
 --- Utilities/cmlibuv/src/unix/tty.c
 +++ Utilities/cmlibuv/src/unix/tty.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -72,7 +72,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -87,7 +87,7 @@
</span>    int dummy;
  
    result = ioctl(fd, TIOCGPTN, &dummy) != 0;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-cmakeroot-with-app.diff b/devel/cmake/files/patch-cmakeroot-with-app.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3a839adbbb6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/files/patch-cmakeroot-with-app.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;'>+Addresses https://trac.macports.org/ticket/62855
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/cmSystemTools.cxx.orig  2023-03-08 20:04:09.000000000 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/cmSystemTools.cxx       2023-07-25 11:24:23.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2570,6 +2570,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     exe_dir = cmSystemTools::GetFilenamePath(exe_dir);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (cmSystemTools::FileExists(exe_dir + CMAKE_BIN_DIR "/cmake")) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       exe_dir += CMAKE_BIN_DIR;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    } else if (cmSystemTools::FileExists("__PREFIX__" CMAKE_BIN_DIR "/cmake")) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        exe_dir = cmSystemTools::GetFilenamePath("__PREFIX__" CMAKE_BIN_DIR "/cmake");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       exe_dir = cmSystemTools::GetFilenamePath(exe_dir);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       exe_dir = cmSystemTools::GetFilenamePath(exe_dir);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-fix-system-prefix-path.diff b/devel/cmake/files/patch-fix-system-prefix-path.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 7c644754c0a..0be12b3598a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cmake/files/patch-fix-system-prefix-path.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/files/patch-fix-system-prefix-path.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,6 @@
</span> --- Modules/Platform/Darwin.cmake.orig
 +++ Modules/Platform/Darwin.cmake
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -262,7 +262,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -265,7 +265,9 @@
</span>      endforeach()
    endif()
  endif()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -16,7 +16,7 @@
</span> +)
 --- Modules/Platform/UnixPaths.cmake.orig
 +++ Modules/Platform/UnixPaths.cmake
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -27,22 +27,39 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -30,22 +30,39 @@
</span>  # synchronized
  list(APPEND CMAKE_SYSTEM_PREFIX_PATH
    # Standard
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-libuv-legacy-systems.diff b/devel/cmake/files/patch-libuv-legacy-systems.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..f8debd5cc1a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/files/patch-libuv-legacy-systems.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,61 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# force libuv to use the older fork method rather than the newer spawn method
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# of process execution on older systems. Although older systems 10.5 and newer do
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# support posix_spawn, the implementation used in libuv is not working well on these
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# older systems. 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# see https://trac.macports.org/ticket/67540
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# see https://trac.macports.org/ticket/68718
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# and related issues referenced in those tickets
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# and add some minor older system tweaks needed from the libuv port
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Utilities/cmlibuv/src/unix/process.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Utilities/cmlibuv/src/unix/process.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,7 +37,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sched.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# if MAC_OS_X_VERSION_MAX_ALLOWED >= 1050
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # include <spawn.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # include <paths.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # include <sys/kauth.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # include <sys/types.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -428,7 +431,7 @@
</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;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__APPLE__) && (MAC_OS_X_VERSION_MIN_REQUIRED >= 1080)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef struct uv__posix_spawn_fncs_tag {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   struct {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int (*addchdir_np)(const posix_spawn_file_actions_t *, const char *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -880,7 +885,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int exec_errorno;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ssize_t r;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__APPLE__) && (MAC_OS_X_VERSION_MIN_REQUIRED >= 1080)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   uv_once(&posix_spawn_init_once, uv__spawn_init_posix_spawn);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Special child process spawn case for macOS Big Sur (11.0) onwards
</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;'>+--- ./Utilities/cmlibuv/src/unix/udp.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./Utilities/cmlibuv/src/unix/udp.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -944,6 +944,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__ANDROID__) &&                                        \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__DragonFly__) &&                                      \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__QNX__) &&                                            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    (!defined(__APPLE__) || (MAC_OS_X_VERSION_MAX_ALLOWED >= 1070)) && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__GNU__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int uv__udp_set_source_membership4(uv_udp_t* handle,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                           const struct sockaddr_in* multicast_addr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1137,6 +1138,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__ANDROID__) &&                                        \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__DragonFly__) &&                                      \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__QNX__) &&                                            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    (!defined(__APPLE__) || (MAC_OS_X_VERSION_MAX_ALLOWED >= 1070)) && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     !defined(__GNU__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int err;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   union uv__sockaddr mcast_addr;
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-qt5gui.diff b/devel/cmake/files/patch-qt5gui.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 60b22d3b9a2..8434ecc0c66 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/cmake/files/patch-qt5gui.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/files/patch-qt5gui.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,6 @@
</span> --- Source/QtDialog/CMakeLists.txt.orig
 +++ Source/QtDialog/CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -288,7 +288,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -308,7 +308,8 @@
</span>      OUTPUT_NAME CMake
      MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.plist.in"
      MACOSX_BUNDLE_SHORT_VERSION_STRING "${CMAKE_BUNDLE_VERSION}"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -10,7 +10,7 @@
</span>      MACOSX_BUNDLE_COPYRIGHT "${copyright_line}"
      MACOSX_BUNDLE_GUI_IDENTIFIER "org.cmake.cmake"
      )
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -327,8 +328,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -345,8 +346,12 @@
</span>  endif()
  
  if(APPLE)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -53,14 +53,14 @@
</span>   <key>CFBundleSignature</key>
 --- CMakeLists.txt.orig
 +++ CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -810,13 +810,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -440,12 +440,20 @@
</span>      if(APPLE)
        set(CMAKE_BUNDLE_VERSION
          "${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}.${CMake_VERSION_PATCH}")
 -      set(CMAKE_BUNDLE_LOCATION "${CMAKE_INSTALL_PREFIX}")
 -      # make sure CMAKE_INSTALL_PREFIX ends in /
 -      if(NOT CMAKE_INSTALL_PREFIX MATCHES "/$")
<span style='display:block; white-space:pre;background:#ffe0e0;'>--        set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        string(APPEND CMAKE_INSTALL_PREFIX "/")
</span> +      if(CMAKE_BUNDLE_LOCATION)
 +        message(STATUS "Using provided bundle location: ${CMAKE_BUNDLE_LOCATION}")
 +        message(STATUS "Using default install prefix: ${CMAKE_INSTALL_PREFIX}")
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,8 +75,7 @@
</span> +        message(STATUS "Using default Qt bundle location: ${CMAKE_BUNDLE_LOCATION}")
 +        message(STATUS "Using special install prefix: ${CMAKE_INSTALL_PREFIX}")
        endif()
<span style='display:block; white-space:pre;background:#ffe0e0;'>--      set(CMAKE_INSTALL_PREFIX
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        "${CMAKE_INSTALL_PREFIX}CMake.app/Contents")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      string(APPEND CMAKE_INSTALL_PREFIX "CMake.app/Contents")
</span>      endif()
    endif()
  
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/cmake/files/patch-remove-homebrew-references.diff b/devel/cmake/files/patch-remove-homebrew-references.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e6303bb60d3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/cmake/files/patch-remove-homebrew-references.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,58 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Modules/CMakeFindFrameworks.cmake Modules/CMakeFindFrameworks.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8b9d803b..1da2fb7e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Modules/CMakeFindFrameworks.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Modules/CMakeFindFrameworks.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17,12 +17,6 @@ if(NOT CMAKE_FIND_FRAMEWORKS_INCLUDED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   macro(CMAKE_FIND_FRAMEWORKS fwk)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     set(${fwk}_FRAMEWORKS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if(APPLE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      # 'Frameworks' directory from Brew (Apple Silicon and Intel)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        set(_brew_framework_path /opt/homebrew/Frameworks)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      else()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        set(_brew_framework_path /usr/local/Frameworks)
</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;'>+       file(TO_CMAKE_PATH "$ENV{CMAKE_FRAMEWORK_PATH}" _cmff_CMAKE_FRAMEWORK_PATH)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       set(_cmff_search_paths
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Modules/FindGTK2.cmake Modules/FindGTK2.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 46348768..00bfc29c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Modules/FindGTK2.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Modules/FindGTK2.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -313,7 +313,6 @@ function(_GTK2_FIND_INCLUDE_DIR _var _hdr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             /usr/openwin/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             /sw/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             /opt/local/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            /opt/homebrew/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             /usr/pkg/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             /usr/pkg/include/glib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             $ENV{GTKMM_BASEPATH}/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Modules/FindPython/Support.cmake Modules/FindPython/Support.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d483d7f8..7a015bc3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Modules/FindPython/Support.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Modules/FindPython/Support.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -116,7 +116,6 @@ macro (_PYTHON_FIND_FRAMEWORKS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          ${_pff_CMAKE_FRAMEWORK_PATH}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          ~/Library/Frameworks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          /usr/local/Frameworks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                         /opt/homebrew/Frameworks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          ${CMAKE_SYSTEM_FRAMEWORK_PATH})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list (REMOVE_DUPLICATES _pff_frameworks)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     foreach (_pff_implementation IN LISTS _${_PYTHON_PREFIX}_FIND_IMPLEMENTATIONS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Modules/Platform/Darwin.cmake Modules/Platform/Darwin.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7955c3ba..c9d71283 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Modules/Platform/Darwin.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Modules/Platform/Darwin.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -245,12 +245,6 @@ unset(_apps_paths)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include(Platform/UnixPaths)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  list(PREPEND CMAKE_SYSTEM_PREFIX_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    /opt/homebrew # Brew on Apple Silicon
</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;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(_CMAKE_OSX_SYSROOT_PATH)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if(EXISTS ${_CMAKE_OSX_SYSROOT_PATH}/usr/include)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     list(INSERT CMAKE_SYSTEM_PREFIX_PATH 0 ${_CMAKE_OSX_SYSROOT_PATH}/usr)
</span></pre><pre style='margin:0'>

</pre>