<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/37ef388d8c43b3f734469661cf2d405c68f415d3">https://github.com/macports/macports-ports/commit/37ef388d8c43b3f734469661cf2d405c68f415d3</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 37ef388d8c43b3f734469661cf2d405c68f415d3
</span>Author: Christopher Nielsen <mascguy@github.com>
AuthorDate: Fri Oct 15 09:46:05 2021 -0400

<span style='display:block; white-space:pre;color:#404040;'>    gtk3-devel: new port for testing
</span>---
 gnome/gtk3-devel/Portfile                          | 294 +++++++++++++++++++++
 .../files/patch-gdk_quartz-10.11_compat.diff       |  22 ++
 ...ch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff |  15 ++
 3 files changed, 331 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gtk3-devel/Portfile b/gnome/gtk3-devel/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..99dfa4c7cc8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gtk3-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,294 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           muniversal 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           xcodeversion 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           active_variants 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           legacysupport 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                gtk3-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           gtk3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set my_name         gtk3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             3.24.23
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+epoch               0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set proj_name       gtk+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set branch          [join [lrange [split ${version} .] 0 1] .]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          gnome x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             LGPL-2.1+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {devans @dbevans} {mascguy @mascguy} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms           darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         GTK+ widget toolkit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    GTK+ is a highly usable, feature-rich toolkit for creating graphical user \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    interfaces, which boasts cross-platform compatibility and an easy-to-use \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    API. GTK+ is written in C, but has bindings to many other popular \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    programming languages, such as C++, Python and C#, among others.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            http://www.gtk.org/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname            ${proj_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:#e0ffe0;'>+use_xz              yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites        gnome:sources/${proj_name}/${branch}/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  d00da1f7f1fb620c7fac28d95858bb734db78bed \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  5d864d248357a2251545b3387b35942de5f66e4c66013f0962eb5cb6f8dae2b1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    21345936
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+minimum_xcodeversions {9 3.1}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build       port:gtk-doc \
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib         port:atk \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/pkgconfig/pango.pc:pango \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gdk-pixbuf2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/pkgconfig/glib-2.0.pc:glib2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gobject-introspection \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libepoxy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# mesa required to configure both +x11, +quartz (not just +x11) due to their dependency on libepoxy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:mesa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_run         port:shared-mime-info \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:hicolor-icon-theme
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# darwin 10 and earlier requires legacy support for O_CLOEXEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+legacysupport.newest_darwin_requires_legacy 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# use autoreconf to deal with dependency tracking issues in configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_autoreconf      yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+autoreconf.args     -fvi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# OS X 10.11 and earlier does not have NSEventTypeTabletProximity and the version check macro is broken
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# see https://gitlab.gnome.org/GNOME/gtk/-/issues/3592
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles   patch-gdk_quartz-10.11_compat.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# gtk3 +quartz uses instancetype which is not available
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# before approximately Xcode 4.6 (#49391)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# if building +x11 blacklist comilers that do not support C11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# (redefinition of typedef ‘GdkX11Monitor’ at gdkscreen-x11.h:33)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[variant_isset quartz]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    compiler.blacklist  *gcc-3.* *gcc-4.* {clang < 425}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    compiler.blacklist  *gcc-3.* *gcc-4.* {clang < 300}
</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 {![info exists universal_possible]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set universal_possible [expr {${os.universal_supported} && [llength ${configure.universal_archs}] >= 2}]
</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;'>+# gobject-introspection uses g-ir-scanner, which uses $CC from env
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${universal_possible} && [variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach arch ${configure.universal_archs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        lappend merger_build_args(${arch})  CC='${configure.cc} -arch ${arch}'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        lappend merger_build_args(${arch})  CC_FOR_BUILD='${configure.cc} -arch ${arch}'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        lappend merger_destroot_args(${arch})  CC='${configure.cc} -arch ${arch}'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        lappend merger_destroot_args(${arch})  CC_FOR_BUILD='${configure.cc} -arch ${arch}'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    build.args-append       CC="${configure.cc} ${configure.cc_archflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            CC_FOR_BUILD="${configure.cc} ${configure.cc_archflags}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    destroot.args-append    CC="${configure.cc} ${configure.cc_archflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            CC_FOR_BUILD="${configure.cc} ${configure.cc_archflags}"
</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;'>+pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {![variant_isset quartz] && ![variant_isset x11]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        error "Either +x11 or +quartz is required"
</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:#e0ffe0;'>+configure.ccache    no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cppflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DX_LOCALE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -fstrict-aliasing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# cloudprint backend requires rest, json-glib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# but this causes a circular dependency on libsoup
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# explicitly disable cloudprint for now
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args      --enable-static \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-glibtest \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --enable-introspection \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-cloudprint \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-wayland-backend \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-schemas-compile \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    gio_can_sniff=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args-append   V=1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    CPP_FOR_BUILD="${configure.cpp}"
</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         check
</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;'>+    set docdir ${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -d ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 644 -W ${worksrcpath} AUTHORS COPYING HACKING NEWS README \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # avoid conflict with the gtk-update-icon-cache installed by gtk2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    move ${destroot}${prefix}/bin/gtk-update-icon-cache \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ${destroot}${prefix}/bin/gtk-update-icon-cache-3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ui_debug "Creating gtk.immodules..."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "DYLD_LIBRARY_PATH=${destroot}${prefix}/lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/bin/gtk-query-immodules-3.0 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/lib/gtk-3.0/3.0.0/immodules/*.so \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        >${destroot}${prefix}/etc/gtk-3.0/gtk.immodules"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|${destroot}||" ${destroot}${prefix}/etc/gtk-3.0/gtk.immodules
</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;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} <= 8} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # The rules enabled by gobject-introspection require GNU make 3.81+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_build-append    port:gmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        build.cmd               ${prefix}/bin/gmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[variant_isset quartz] || ![variant_isset x11]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            configure.ldflags-append  -framework Cocoa -framework Carbon
</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;'>+        # https://trac.macports.org/ticket/63151
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append --disable-dependency-tracking
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} <= 10} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # OS X 10.6 and earlier do not supply all cursors specified by gtk3 +quartz (#49391)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[variant_isset quartz]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            patchfiles-append   patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} <= 12} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # requires cups 1.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append --disable-cups
</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:#e0ffe0;'>+if {${universal_possible} && [variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set cups /usr/bin/cups-config
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[info exists universal_sysroot]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cups ${universal_sysroot}${cups}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.env-append CUPS_CONFIG=${cups}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Find architectures which will not run on build platform.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set cpu64bit_capable [sysctl hw.cpu64bit_capable]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.arch} eq "i386"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cross_archs ppc64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {${os.major} >= 10} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            lappend cross_archs ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set host_archs "ppc ppc64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set run_archs i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {${cpu64bit_capable}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set run_archs "x86_64 ${run_archs}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cross_archs "i386 x86_64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set host_archs "i386 x86_64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set run_archs ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {${cpu64bit_capable}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set run_archs "ppc64 ${run_archs}"
</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:#e0ffe0;'>+    pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set run_arch ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach arch ${run_archs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {[lsearch ${universal_archs_to_use} ${arch}] != -1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                set run_arch ${arch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                break
</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:#e0ffe0;'>+        if {${run_arch} eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error "${name} requires at least one architecture runnable on this"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error "machine to be able to build universally. Please add at least"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error "one of the following architectures to `universal_archs` in"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error "\"${prefix}/etc/macports/macports.conf\":"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error "\t${run_archs}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_error ""
</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;'>+        foreach arch ${host_archs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            lappend merger_configure_env(${arch}) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                NM='/usr/bin/nm -p'
</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;'>+        foreach arch ${cross_archs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            lappend merger_configure_env(${arch}) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                GTK_UPDATE_ICON_CACHE=${worksrcpath}-${run_arch}/gtk/gtk-update-icon-cache \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                GDK_PIXBUF_CSOURCE=${worksrcpath}-${run_arch}/gdk-pixbuf/gdk-pixbuf-csource
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            lappend merger_build_env(${arch}) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                GDK_PIXBUF_MODULE_FILE=${worksrcpath}-${run_arch}/gdk-pixbuf/gdk-pixbuf.loaders
</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;'>+        # Let gtk_host in .pc files be the same on all architectures
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set host powerpc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {${os.arch} eq "i386"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set host i686
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace s/@host@/${host}-apple-darwin${os.version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            {*}[glob -directory ${worksrcpath} *.pc.in]
</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;'>+    merger_arch_compiler yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cc "${configure.cc} ${configure.cc_archflags}"
</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;'>+variant quartz conflicts x11 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    require_active_variants path:lib/pkgconfig/cairo.pc:cairo quartz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    require_active_variants path:lib/pkgconfig/pango.pc:pango quartz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append   --enable-quartz-backend
</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;'>+variant x11 conflicts quartz {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    require_active_variants path:lib/pkgconfig/cairo.pc:cairo x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    require_active_variants path:lib/pkgconfig/pango.pc:pango x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    require_active_variants port:gdk-pixbuf2 x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append      port:xorg-libXi \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:xorg-libXrandr \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:xorg-libXcursor \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:xorg-libXinerama \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:xorg-libXdamage \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:xorg-libXcomposite \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:xorg-libXfixes \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:at-spi2-atk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append   --enable-xinerama \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            --x-include=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            --x-lib=${prefix}/lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            --enable-x11-backend
</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 {![variant_isset quartz]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    default_variants +x11
</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;'>+post-activate {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ui_debug "Updating gdk-pixbuf.loaders..."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "${prefix}/bin/gdk-pixbuf-query-loaders >${prefix}/etc/gtk-3.0/gdk-pixbuf.loaders"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ui_debug "Updating GLib schemas..."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "${prefix}/bin/glib-compile-schemas ${prefix}/share/glib-2.0/schemas"
</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;'>+livecheck.type      gnome
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.name      gtk+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# versions 3.89.1+ are snapshots of unstable development leading to GTK+ 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# and are not compatible with gtk3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex     "LATEST-IS-(\\d+\\.\[0-7\]\[02468\](?:\\.\\d+)*)"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gtk3-devel/files/patch-gdk_quartz-10.11_compat.diff b/gnome/gtk3-devel/files/patch-gdk_quartz-10.11_compat.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e36ff1283ff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gtk3-devel/files/patch-gdk_quartz-10.11_compat.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,22 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdk/quartz/gdkinternal-quartz.h.orig   2021-04-05 15:46:38.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdk/quartz/gdkinternal-quartz.h        2021-04-05 15:46:49.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -75,7 +75,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   GDK_QUARTZ_EVENT_SUBTYPE_EVENTLOOP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } GdkQuartzEventSubType;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if MAC_OS_X_VERSION_MIN_REQUIRED >= 10130
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define GDK_QUARTZ_EVENT_TABLET_PROXIMITY NSEventTypeTabletProximity
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define GDK_QUARTZ_EVENT_SUBTYPE_TABLET_PROXIMITY NSEventSubtypeTabletProximity
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define GDK_QUARTZ_EVENT_SUBTYPE_TABLET_POINT NSEventSubtypeTabletPoint
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./modules/input/imquartz.c.orig        2021-04-05 16:09:16.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./modules/input/imquartz.c     2021-04-05 16:09:25.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,7 +37,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define GTK_IM_CONTEXT_QUARTZ(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_IM_CONTEXT_TYPE_QUARTZ, GtkIMContextQuartz))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define GTK_IM_CONTEXT_QUARTZ_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GTK_IM_CONTEXT_TYPE_QUARTZ, GtkIMContextQuartzClass))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if MAC_OS_X_VERSION_MIN_REQUIRED < 10120
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED < 101200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define NS_EVENT_KEY_DOWN NSKeyDown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define NS_EVENT_KEY_DOWN NSEventTypeKeyDown
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gtk3-devel/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff b/gnome/gtk3-devel/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..9dff28945bd
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gtk3-devel/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gdk/quartz/gdkcursor-quartz.c.orig     2020-06-10 19:45:39.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gdk/quartz/gdkcursor-quartz.c  2020-09-06 13:55:39.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -404,6 +404,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         selector = NSSelectorFromString(test->selector);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         break;
</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 (! [[gdkCoreCursor class] respondsToSelector:selector])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            selector = @selector(arrowCursor);
</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;'>+   nscursor = [[gdkCoreCursor class] performSelector:selector];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   [nscursor retain];
</span></pre><pre style='margin:0'>

</pre>