[141294] trunk/dports/devel/glib2

devans at macports.org devans at macports.org
Wed Oct 14 15:51:30 PDT 2015


Revision: 141294
          https://trac.macports.org/changeset/141294
Author:   devans at macports.org
Date:     2015-10-14 15:51:30 -0700 (Wed, 14 Oct 2015)
Log Message:
-----------
glib2: realign/restore get-launchd-dbus-session-address patch to avoid startup errors with apps that use glib2 to access the dbus session bus, increment revision.

Modified Paths:
--------------
    trunk/dports/devel/glib2/Portfile

Added Paths:
-----------
    trunk/dports/devel/glib2/files/patch-get-launchd-dbus-session-address.diff

Property Changed:
----------------
    trunk/dports/devel/glib2/


Property changes on: trunk/dports/devel/glib2
___________________________________________________________________
Added: svn:mergeinfo
   + /branches/mld-qt-481/dports/devel/glib2:92720,92813,92891,92963,93522,93556,93699,93743,93771-93773,93806,93817-93818,93856
/trunk/dports/devel/glib2-devel:51739-120463
/users/cal/ports/devel/glib2:96570-97031
/users/devans/GNOME-3/stable/dports/devel/glib2:125662-141255
/users/devans/GNOME-3/unstable/dports/devel/glib2:120511-125619,128305-141254

Modified: trunk/dports/devel/glib2/Portfile
===================================================================
--- trunk/dports/devel/glib2/Portfile	2015-10-14 22:50:58 UTC (rev 141293)
+++ trunk/dports/devel/glib2/Portfile	2015-10-14 22:51:30 UTC (rev 141294)
@@ -11,7 +11,7 @@
 conflicts                   glib2-devel
 set my_name                 glib
 version                     2.46.0
-revision                    1
+revision                    2
 set branch                  [join [lrange [split ${version} .] 0 1] .]
 categories                  devel
 maintainers                 ryandesign openmaintainer
@@ -43,6 +43,7 @@
                             patch-gi18n.h.diff \
                             patch-gio_xdgmime_xdgmime.c.diff \
                             patch-gio_gdbusprivate.c.diff \
+                            patch-get-launchd-dbus-session-address.diff \
                             patch-gmodule-gmodule-dl.c.diff
 
 if {[vercmp ${macosx_deployment_target} 10.9] < 0} {

Copied: trunk/dports/devel/glib2/files/patch-get-launchd-dbus-session-address.diff (from rev 141255, users/devans/GNOME-3/stable/dports/devel/glib2/files/patch-get-launchd-dbus-session-address.diff)
===================================================================
--- trunk/dports/devel/glib2/files/patch-get-launchd-dbus-session-address.diff	                        (rev 0)
+++ trunk/dports/devel/glib2/files/patch-get-launchd-dbus-session-address.diff	2015-10-14 22:51:30 UTC (rev 141294)
@@ -0,0 +1,119 @@
+--- gio/gdbusaddress.c.orig	2015-06-09 16:18:38.000000000 -0700
++++ gio/gdbusaddress.c	2015-06-23 10:54:28.000000000 -0700
+@@ -1475,6 +1475,103 @@
+ 
+ /* ---------------------------------------------------------------------------------------------------- */
+ 
++/*
++ * MacPorts specific D-Bus implementation
++ *
++ * When building under MacPorts on darwin
++ * plaforms (including Mac OS X), the
++ * symbols G_OS_UNIX and __APPLE__ are
++ * asserted.
++ *
++ * The D-Bus session daemon is controlled
++ * using the Apple launchd facility.
++ *
++ * For launchd command details see
++ *   http://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages
++ *
++ *   launchd(8)
++ *   launchctl(1)
++ *   launchd.plist(5)
++ */
++
++#if defined (G_OS_UNIX) && defined (__APPLE__)
++static gchar *
++get_session_address_macports_specific (GError **error)
++{
++  gchar *ret;
++  gchar *command_line;
++  gchar *launchctl_stdout;
++  gchar *launchctl_stderr;
++  gint exit_status;
++
++  ret = NULL;
++  command_line = NULL;
++  launchctl_stdout = NULL;
++  launchctl_stderr = NULL;
++
++  command_line = g_strdup ("launchctl getenv DBUS_LAUNCHD_SESSION_BUS_SOCKET");
++
++  if (G_UNLIKELY (_g_dbus_debug_address ()))
++    {
++      _g_dbus_debug_print_lock ();
++      g_print ("GDBus-debug:Address: launchctl command line: `%s'\n", command_line);
++      _g_dbus_debug_print_unlock ();
++    }
++
++  if (g_spawn_command_line_sync (command_line,
++                                 &launchctl_stdout,
++                                 &launchctl_stderr,
++                                 &exit_status,
++                                 error))
++    {
++      if (g_spawn_check_exit_status (exit_status, error))
++        {
++            if (launchctl_stdout != NULL)
++              {
++                if (G_UNLIKELY (_g_dbus_debug_address ()))
++                  {
++                    gchar *s;
++                    _g_dbus_debug_print_lock ();
++                    g_print ("GDBus-debug:Address: launchctl stdout:");
++                    s = _g_dbus_hexdump (launchctl_stdout, strlen (launchctl_stdout) + 1, 2);
++                    g_print ("\n%s", s);
++                    g_free (s);
++                    _g_dbus_debug_print_unlock ();
++                  }
++
++                if (*launchctl_stdout != '\0')
++                  {
++                    gchar *lastchar;
++
++                    lastchar = launchctl_stdout + strlen(launchctl_stdout) - 1;
++                    if (*lastchar == '\n') *lastchar = '\0';
++                    ret = g_strdup_printf ("unix:path=%s", launchctl_stdout);
++                  }
++                else
++                  {
++                    g_set_error (error,
++                                 G_IO_ERROR,
++                                 G_IO_ERROR_FAILED,
++                                 _("Session D-Bus not running. Try running `launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist'."));
++                  }
++              }
++        }
++      else
++        {
++          g_prefix_error (error, _("Error spawning command line `%s': "), command_line);
++        }
++    }
++
++  g_free (command_line);
++  g_free (launchctl_stdout);
++  g_free (launchctl_stderr);
++
++  return ret;
++}
++#endif
++
++/* ---------------------------------------------------------------------------------------------------- */
++
+ static gchar *
+ get_session_address_platform_specific (GError **error)
+ {
+@@ -1503,7 +1600,12 @@
+    * X11 autolaunching; on Windows this means a different autolaunching
+    * mechanism based on shared memory.
+    */
++
++#ifdef __APPLE__
++  return get_session_address_macports_specific (error);
++#else
+   return get_session_address_dbus_launch (error);
++#endif
+ }
+ 
+ /* ---------------------------------------------------------------------------------------------------- */
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20151014/9c54815a/attachment.html>


More information about the macports-changes mailing list