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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/aa3666f48195116f4cedba68ab509283aacccba7">https://github.com/macports/macports-ports/commit/aa3666f48195116f4cedba68ab509283aacccba7</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 aa3666f4819 harfbuzz: update to 10.1.0
</span>aa3666f4819 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit aa3666f48195116f4cedba68ab509283aacccba7
</span>Author: Christopher Nielsen <mascguy@github.com>
AuthorDate: Mon Dec 9 10:38:29 2024 -0500

<span style='display:block; white-space:pre;color:#404040;'>    harfbuzz: update to 10.1.0
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Fixes: https://trac.macports.org/ticket/65599
</span>---
 graphics/harfbuzz/Portfile | 117 ++++++++++++++++++++++++++++-----------------
 1 file changed, 73 insertions(+), 44 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/harfbuzz/Portfile b/graphics/harfbuzz/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d620a5a5954..6398d80cd69 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/harfbuzz/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/harfbuzz/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,14 +3,14 @@
</span> PortSystem          1.0
 PortGroup           compiler_blacklist_versions 1.0
 PortGroup           github 1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           gobject_introspection 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           meson 1.0
</span> 
 # Please keep the harfbuzz and harfbuzz-devel ports as similar as possible.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup        harfbuzz harfbuzz 8.5.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  f9078722b07904b370675ea9705846575dfe42a7 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  77e4f7f98f3d86bf8788b53e6832fb96279956e1c3961988ea3d4b7ca41ddc27 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    19468172
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        harfbuzz harfbuzz 10.1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  c882972105fd4bad7d5a12a8f4e161dd68b537d3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  6ce3520f2d089a33cef0fc48321334b8e0b72141f6a763719aaaecd2779ecb82 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    17922136
</span> 
 name                harfbuzz
 conflicts           harfbuzz-devel
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,17 +18,44 @@ set my_name         harfbuzz
</span> categories          graphics
 maintainers         {ryandesign @ryandesign} {mascguy @mascguy} openmaintainer
 license             MIT
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> description         OpenType text shaping engine
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> long_description    HarfBuzz is an {*}${description}.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> homepage            https://harfbuzz.github.io
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> github.tarball_from releases
 dist_subdir         ${my_name}
 use_xz              yes
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build       path:bin/pkg-config:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Disable unexpected download of subprojects
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+meson.wrap_mode     nodownload
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver          3.12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver_nodot    [string map {. {}} ${py_ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:bin/pkg-config:pkgconfig \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:python${py_ver_nodot}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.python    ${prefix}/bin/python${py_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Disable legacy non-underscore macros, defined by AssertMacros.h, on older macOS releases; fixes:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#   ../harfbuzz-10.1.0/src/hb-buffer.hh:214:9: error: too many arguments provided to function-like macro invocation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#     214 |                hb_font_t          *font,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#         |                ^
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#   /usr/include/AssertMacros.h:1339:11: note: macro 'verify' defined here
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#     1339 |                 #define verify(assertion) __Verify(assertion)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#          |                         ^
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-meson-assert-macros.diff
</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;'>+    fs-traverse f ${worksrcpath} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[string match *.py ${f}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_info "patching python: ${f}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            reinplace -q "s|/usr/bin/env python3$|${configure.python}|" ${f}
</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> 
 # https://github.com/harfbuzz/harfbuzz/issues/1642
 compiler.cxx_standard \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,14 +63,13 @@ compiler.cxx_standard \
</span> 
 # error: invalid operands to binary expression
 # https://github.com/harfbuzz/harfbuzz/issues/4371
<span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.blacklist-append {clang < 700}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    {clang < 700}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Upstream recommends switching to meson but I'm not ready to tackle
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# that yet.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args      --disable-silent-rules \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --without-chafa \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ac_cv_prog_AWK=/usr/bin/awk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Options common across main and subport
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dchafa=disabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Ddocs=disabled
</span> 
 # Do not use -Werror. New compilers may have new warnings; we don't want users
 # to encounter build failures because of that.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -57,20 +83,19 @@ if {${name} eq ${subport}} {
</span>                     path:lib/pkgconfig/cairo.pc:cairo \
                     port:freetype \
                     path:lib/pkgconfig/glib-2.0.pc:glib2 \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/pkgconfig/gobject-introspection-1.0.pc:gobject-introspection \
</span>                     port:graphite2
 
     configure.args-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-cairo \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-freetype \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-glib \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-graphite2 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-gobject \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --without-icu
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    gobject_introspection   yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dcairo=enabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dfreetype=enabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dglib=enabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dgraphite2=enabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dgobject=enabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dicu=disabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dintrospection=enabled
</span> 
     test.run        yes
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    test.target     check
</span> 
     post-destroot {
         set docdir ${prefix}/share/doc/${name}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -84,12 +109,15 @@ if {${name} eq ${subport}} {
</span>                     ${destroot}${docdir}
     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${os.platform} eq "darwin" && ${os.major} >= 9} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # While CoreText is available for 10.5+, two key constants aren't available until 10.8:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    #   - kCTFontOrientationHorizontal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    #   - kCTFontOrientationVertical
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.platform} eq "darwin" && ${os.major} >= 12} {
</span>         configure.args-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-coretext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dcoretext=enabled
</span>     } else {
         configure.args-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --without-coretext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dcoretext=disabled
</span>     }
 
     if {${os.platform} eq "darwin" && ${os.major} < 10} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -112,23 +140,24 @@ subport harfbuzz-icu {
</span>     long_description This library adds support for ICU (the International Components for Unicode) to HarfBuzz.
 
     depends_lib-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    path:lib/pkgconfig/harfbuzz.pc:harfbuzz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:harfbuzz \
</span>                     path:lib/pkgconfig/icu-uc.pc:icu
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    compiler.cxx_standard \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    2017
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>     configure.args-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --without-cairo \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --without-freetype \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --without-glib \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --without-graphite2 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-icu
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    destroot.dir    ${worksrcpath}/src
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    destroot.args   cmake_DATA= \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    lib_LTLIBRARIES=libharfbuzz-icu.la \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    nodist_pkginclude_HEADERS= \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    pkgconfig_DATA=harfbuzz-icu.pc \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    pkginclude_HEADERS=hb-icu.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dcairo=disabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dfreetype=disabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dglib=disabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dgraphite2=disabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dicu=enabled \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Dintrospection=disabled
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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;'>+    post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_info "${subport}: removing files from parent"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach f [exec port -q contents ${name}] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_info "${subport}: deleting file: ${f}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            delete ${destroot}${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> }
</pre><pre style='margin:0'>

</pre>