<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[151703] users/devans/dports/gnome</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/151703">151703</a></dd>
<dt>Author</dt> <dd>devans@macports.org</dd>
<dt>Date</dt> <dd>2016-08-20 03:43:38 -0700 (Sat, 20 Aug 2016)</dd>
</dl>
<h3>Log Message</h3>
<pre>devans/dports: gtk3, replace with latest stable version.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#usersdevansdportsgnomegtk3Portfile">users/devans/dports/gnome/gtk3/Portfile</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li>users/devans/dports/gnome/gtk3/</li>
<li>users/devans/dports/gnome/gtk3/files/</li>
<li><a href="#usersdevansdportsgnomegtk3files0001iconhelpercheckifsurfacewasinvalidatedpatch">users/devans/dports/gnome/gtk3/files/0001-iconhelper-check-if-surface-was-invalidated.patch</a></li>
<li><a href="#usersdevansdportsgnomegtk3filesnawkpatch">users/devans/dports/gnome/gtk3/files/nawk.patch</a></li>
<li><a href="#usersdevansdportsgnomegtk3filespatchgdk_quartz_gdkcursorquartz10_6_compatdiff">users/devans/dports/gnome/gtk3/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="usersdevansdportsgnomegtk3Portfile"></a>
<div class="modfile"><h4>Modified: users/devans/dports/gnome/gtk3/Portfile (136501 => 151703)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/gnome/gtk3/Portfile        2015-05-19 16:35:28 UTC (rev 136501)
+++ users/devans/dports/gnome/gtk3/Portfile        2016-08-20 10:43:38 UTC (rev 151703)
</span><span class="lines">@@ -6,27 +6,24 @@
</span><span class="cx"> PortGroup muniversal 1.0
</span><span class="cx"> PortGroup xcodeversion 1.0
</span><span class="cx"> PortGroup active_variants 1.1
</span><ins>+PortGroup compiler_blacklist_versions 1.0
</ins><span class="cx">
</span><span class="cx"> name gtk3
</span><span class="cx"> set real_name gtk+
</span><span class="cx"> epoch 1
</span><del>-version 3.16.3
</del><ins>+version 3.20.9
</ins><span class="cx"> set branch [join [lrange [split ${version} .] 0 1] .]
</span><span class="cx"> categories gnome x11
</span><span class="cx"> license LGPL-2.1+
</span><del>-maintainers cal devans openmaintainer
</del><ins>+maintainers devans openmaintainer
</ins><span class="cx"> platforms darwin
</span><span class="cx">
</span><del>-checksums rmd160 025e83565beca62713eb2f529eb35e3f0bfd540c \
- sha256 2943fd4a6b02c2a9b2edd231c1d8f7a1d2f8d36996f14310d34f503dca9ebea4
-
</del><span class="cx"> description GTK+ widget toolkit
</span><span class="cx">
</span><del>-long_description \
- GTK+ is a highly usable, feature-rich toolkit for creating graphical user \
- interfaces, which boasts cross-platform compatibility and an easy-to-use \
- API. GTK+ is written in C, but has bindings to many other popular \
- programming languages, such as C++, Python and C#, among others.
</del><ins>+long_description GTK+ is a highly usable, feature-rich toolkit for creating graphical user \
+ interfaces, which boasts cross-platform compatibility and an easy-to-use \
+ API. GTK+ is written in C, but has bindings to many other popular \
+ programming languages, such as C++, Python and C#, among others.
</ins><span class="cx">
</span><span class="cx"> homepage http://www.gtk.org/
</span><span class="cx"> distname ${real_name}-${version}
</span><span class="lines">@@ -34,13 +31,13 @@
</span><span class="cx">
</span><span class="cx"> master_sites gnome:sources/gtk+/${branch}/
</span><span class="cx">
</span><ins>+checksums rmd160 18b94aee023518068f7837895b711b63fdf1eb13 \
+ sha256 83a609ba2f3424b5509e73967c49c67833af466d6f91081b24ee5c64fce6ac17
+
</ins><span class="cx"> minimum_xcodeversions {9 3.1}
</span><ins>+
</ins><span class="cx"> depends_build port:pkgconfig
</span><span class="cx">
</span><del>-# cloudprint backend requires rest, json-glib
-# but this causes a circular dependency on libsoup
-# explicitly disable cloudprint for now
-
</del><span class="cx"> depends_lib port:atk \
</span><span class="cx"> path:lib/pkgconfig/pango.pc:pango \
</span><span class="cx"> port:gdk-pixbuf2 \
</span><span class="lines">@@ -51,24 +48,24 @@
</span><span class="cx"> depends_run port:shared-mime-info \
</span><span class="cx"> port:hicolor-icon-theme
</span><span class="cx">
</span><del>-archcheck.files \
- lib/libatk-1.0.dylib \
- lib/libintl.dylib \
- lib/libjasper.dylib \
- lib/libpango-1.0.dylib \
- lib/libtiff.dylib
</del><ins>+archcheck.files lib/libatk-1.0.dylib \
+ lib/libintl.dylib \
+ lib/libjasper.dylib \
+ lib/libpango-1.0.dylib \
+ lib/libtiff.dylib
</ins><span class="cx">
</span><del>-configure.args --enable-static \
- --disable-glibtest \
- --disable-libcanberra \
- --enable-introspection \
- --disable-cloudprint \
- --disable-mir-backend \
- --disable-wayland-backend \
- --disable-schemas-compile \
- gio_can_sniff=yes
</del><ins>+patchfiles nawk.patch \
+ 0001-iconhelper-check-if-surface-was-invalidated.patch
</ins><span class="cx">
</span><ins>+# gtk3 +quartz uses instancetype which is not available
+# before approximately Xcode 4.6 (#49391)
+
+if {[variant_isset quartz]} {
+ compiler.blacklist *gcc* {clang < 425}
+}
+
</ins><span class="cx"> # gobject-introspection uses g-ir-scanner, which uses $CC from env
</span><ins>+
</ins><span class="cx"> if {[variant_isset universal]} {
</span><span class="cx"> foreach arch ${configure.universal_archs} {
</span><span class="cx"> lappend merger_build_args(${arch}) CC='${configure.cc} -arch ${arch}'
</span><span class="lines">@@ -83,19 +80,36 @@
</span><span class="cx"> CC_FOR_BUILD="${configure.cc} ${configure.cc_archflags}"
</span><span class="cx"> }
</span><span class="cx">
</span><del>-build.args-append V=1 \
- CPP_FOR_BUILD="${configure.cpp}"
-
-configure.ccache no
-configure.cppflags-append -DX_LOCALE
-configure.cflags-append -fstrict-aliasing
-
</del><span class="cx"> pre-configure {
</span><span class="cx"> if {![variant_isset quartz] && ![variant_isset x11]} {
</span><span class="cx"> error "Either +x11 or +quartz is required"
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+configure.ccache no
+
+configure.cppflags-append \
+ -DX_LOCALE
+
+configure.cflags-append \
+ -fstrict-aliasing
+
+# cloudprint backend requires rest, json-glib
+# but this causes a circular dependency on libsoup
+# explicitly disable cloudprint for now
+
+configure.args --enable-static \
+ --disable-glibtest \
+ --enable-introspection \
+ --disable-cloudprint \
+ --disable-mir-backend \
+ --disable-wayland-backend \
+ --disable-schemas-compile \
+ gio_can_sniff=yes
+
+build.args-append V=1 \
+ CPP_FOR_BUILD="${configure.cpp}"
+
</ins><span class="cx"> test.run yes
</span><span class="cx"> test.target check
</span><span class="cx">
</span><span class="lines">@@ -117,33 +131,27 @@
</span><span class="cx"> reinplace "s|${destroot}||" ${destroot}${prefix}/etc/gtk-3.0/gtk.immodules
</span><span class="cx"> }
</span><span class="cx">
</span><del>-post-activate {
- ui_debug "Updating gdk-pixbuf.loaders..."
- system "${prefix}/bin/gdk-pixbuf-query-loaders \
- >${prefix}/etc/gtk-3.0/gdk-pixbuf.loaders"
- ui_debug "Updating GLib schemas..."
- system "${prefix}/bin/glib-compile-schemas \
- ${prefix}/share/glib-2.0/schemas"
-}
</del><ins>+platform darwin {
+ if {${os.major} <= 8} {
+ # The rules enabled by gobject-introspection require GNU make 3.81+
+ depends_build-append port:gmake
+ build.cmd ${prefix}/bin/gmake
</ins><span class="cx">
</span><del>-platform darwin 8 {
- # The rules enabled by gobject-introspection require GNU make 3.81+
- depends_build-append port:gmake
- build.cmd ${prefix}/bin/gmake
</del><ins>+ if {[variant_isset quartz] || ![variant_isset x11]} {
+ configure.ldflags-append -framework Cocoa -framework Carbon
+ }
+
+ configure.args-append --disable-cups
+ }
</ins><span class="cx">
</span><del>- if {[variant_isset quartz] || ![variant_isset x11]} {
- configure.ldflags-append -framework Cocoa -framework Carbon
</del><ins>+ if {${os.major} <= 10} {
+ # OS X 10.6 and earlier do not supply all cursors specified by gtk3 +quartz (#49391)
+ if {[variant_isset quartz]} {
+ patchfiles-append patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff
+ }
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-if {${os.major} <= 8} {
- configure.args-append --disable-cups
-}
-
-if {![variant_isset quartz]} {
- default_variants +x11
-}
-
</del><span class="cx"> if {[variant_isset universal]} {
</span><span class="cx"> set cups /usr/bin/cups-config
</span><span class="cx"> if {[info exists universal_sysroot]} {
</span><span class="lines">@@ -222,6 +230,7 @@
</span><span class="cx"> variant quartz conflicts x11 {
</span><span class="cx"> require_active_variants path:lib/pkgconfig/cairo.pc:cairo quartz
</span><span class="cx"> require_active_variants path:lib/pkgconfig/pango.pc:pango quartz
</span><ins>+ require_active_variants port:gdk-pixbuf2 "" x11
</ins><span class="cx">
</span><span class="cx"> configure.args-append --enable-quartz-backend
</span><span class="cx"> }
</span><span class="lines">@@ -229,21 +238,34 @@
</span><span class="cx"> variant x11 conflicts quartz {
</span><span class="cx"> require_active_variants path:lib/pkgconfig/cairo.pc:cairo x11
</span><span class="cx"> require_active_variants path:lib/pkgconfig/pango.pc:pango x11
</span><ins>+ require_active_variants port:gdk-pixbuf2 x11
</ins><span class="cx">
</span><del>- depends_lib-append \
- port:xorg-libXi \
- port:xorg-libXrandr \
- port:xorg-libXcursor \
- port:xorg-libXinerama \
- port:xorg-libXdamage \
- port:xorg-libXcomposite \
- port:xorg-libXfixes \
- port:at-spi2-atk
</del><ins>+ depends_lib-append port:xorg-libXi \
+ port:xorg-libXrandr \
+ port:xorg-libXcursor \
+ port:xorg-libXinerama \
+ port:xorg-libXdamage \
+ port:xorg-libXcomposite \
+ port:xorg-libXfixes \
+ port:at-spi2-atk \
+ port:mesa
</ins><span class="cx">
</span><del>- configure.args-append --enable-xinerama \
- --x-include=${prefix}/include --x-lib=${prefix}/lib \
- --enable-x11-backend
</del><ins>+ configure.args-append --enable-xinerama \
+ --x-include=${prefix}/include \
+ --x-lib=${prefix}/lib \
+ --enable-x11-backend
</ins><span class="cx"> }
</span><span class="cx">
</span><ins>+if {![variant_isset quartz]} {
+ default_variants +x11
+}
+
+post-activate {
+ ui_debug "Updating gdk-pixbuf.loaders..."
+ system "${prefix}/bin/gdk-pixbuf-query-loaders >${prefix}/etc/gtk-3.0/gdk-pixbuf.loaders"
+ ui_debug "Updating GLib schemas..."
+ system "${prefix}/bin/glib-compile-schemas ${prefix}/share/glib-2.0/schemas"
+}
+
</ins><span class="cx"> livecheck.type gnome
</span><span class="cx"> livecheck.name gtk+
</span></span></pre></div>
<a id="usersdevansdportsgnomegtk3files0001iconhelpercheckifsurfacewasinvalidatedpatch"></a>
<div class="addfile"><h4>Added: users/devans/dports/gnome/gtk3/files/0001-iconhelper-check-if-surface-was-invalidated.patch (0 => 151703)</h4>
<pre class="diff"><span>
<span class="info">--- users/devans/dports/gnome/gtk3/files/0001-iconhelper-check-if-surface-was-invalidated.patch         (rev 0)
+++ users/devans/dports/gnome/gtk3/files/0001-iconhelper-check-if-surface-was-invalidated.patch        2016-08-20 10:43:38 UTC (rev 151703)
</span><span class="lines">@@ -0,0 +1,41 @@
</span><ins>+From a4037730e68cfc37288badc64f4ddaf6c1fa51e8 Mon Sep 17 00:00:00 2001
+From: Christian Hergert <chergert@redhat.com>
+Date: Wed, 27 Apr 2016 16:51:25 -0700
+Subject: [PATCH] iconhelper: check if surface was invalidated
+
+Fetching the style may cause the surface to be invalidated.
+
+We don't want to fetch the style unless we already have a surface,
+so just do a second surface check after fetching the style.
+---
+ gtk/gtkiconhelper.c | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/gtk/gtkiconhelper.c b/gtk/gtkiconhelper.c
+index b8737e7..a80418d 100644
+--- gtk/gtkiconhelper.c
++++ gtk/gtkiconhelper.c
+@@ -896,10 +896,16 @@ _gtk_icon_helper_draw (GtkIconHelper *self,
+
+ if (self->priv->rendered_surface != NULL)
+ {
+- gtk_css_style_render_icon_surface (gtk_css_node_get_style (gtk_css_gadget_get_node (GTK_CSS_GADGET (self))),
+- cr,
+- self->priv->rendered_surface,
+- x, y);
++ GtkCssStyle *style;
++
++ style = gtk_css_node_get_style (gtk_css_gadget_get_node (GTK_CSS_GADGET (self)));
++
++ /* Fetching the style might cause rendered_surface to be invalidated */
++ if (self->priv->rendered_surface != NULL)
++ gtk_css_style_render_icon_surface (style,
++ cr,
++ self->priv->rendered_surface,
++ x, y);
+ }
+ }
+
+--
+2.3.2 (Apple Git-55)
+
</ins></span></pre></div>
<a id="usersdevansdportsgnomegtk3filesnawkpatch"></a>
<div class="addfile"><h4>Added: users/devans/dports/gnome/gtk3/files/nawk.patch (0 => 151703)</h4>
<pre class="diff"><span>
<span class="info">--- users/devans/dports/gnome/gtk3/files/nawk.patch         (rev 0)
+++ users/devans/dports/gnome/gtk3/files/nawk.patch        2016-08-20 10:43:38 UTC (rev 151703)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+--- configure.orig        2015-11-16 12:32:00.000000000 -0600
++++ configure        2015-11-18 00:20:49.000000000 -0600
+@@ -3432,7 +3432,7 @@
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
+ $as_echo "$MKDIR_P" >&6; }
+
+-for ac_prog in gawk mawk nawk awk
++for ac_prog in gawk mawk awk
+ do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+ set dummy $ac_prog; ac_word=$2
</ins></span></pre></div>
<a id="usersdevansdportsgnomegtk3filespatchgdk_quartz_gdkcursorquartz10_6_compatdiff"></a>
<div class="addfile"><h4>Added: users/devans/dports/gnome/gtk3/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff (0 => 151703)</h4>
<pre class="diff"><span>
<span class="info">--- users/devans/dports/gnome/gtk3/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff         (rev 0)
+++ users/devans/dports/gnome/gtk3/files/patch-gdk_quartz_gdkcursor-quartz-10_6_compat.diff        2016-08-20 10:43:38 UTC (rev 151703)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+--- gdk/quartz/gdkcursor-quartz.c.old        2015-11-23 21:43:17.000000000 +0100
++++ gdk/quartz/gdkcursor-quartz.c        2015-11-23 21:43:52.000000000 +0100
+@@ -402,6 +402,12 @@
+ selector = NSSelectorFromString(test->selector);
+ break;
+ }
++
++ if (! [[gdkCoreCursor class] respondsToSelector:selector])
++ {
++          selector = @selector(arrowCursor);
++ }
++
+ nscursor = [[gdkCoreCursor class] performSelector:selector];
+
+ [nscursor retain];
</ins></span></pre>
</div>
</div>
</body>
</html>