[45206] trunk/dports/devel/dbus
illogic-al at macports.org
illogic-al at macports.org
Sat Jan 10 13:25:35 PST 2009
Revision: 45206
http://trac.macports.org/changeset/45206
Author: illogic-al at macports.org
Date: 2009-01-10 13:25:34 -0800 (Sat, 10 Jan 2009)
Log Message:
-----------
Update dbus to version 1.2.12 and include patch which integrates launchd support from https://bugs.freedesktop.org/show_bug.cgi?id=14259
This should solve problems related to dbus autolaunching like those in tickets #16833, #16755, #16870 or #17688.
Fixes ticket #17950 (this port enhancement). Adds no_x11 support back and makes it the default.
Modified Paths:
--------------
trunk/dports/devel/dbus/Portfile
Added Paths:
-----------
trunk/dports/devel/dbus/files/patch-launchd-integration-dist.diff
Modified: trunk/dports/devel/dbus/Portfile
===================================================================
--- trunk/dports/devel/dbus/Portfile 2009-01-10 20:53:34 UTC (rev 45205)
+++ trunk/dports/devel/dbus/Portfile 2009-01-10 21:25:34 UTC (rev 45206)
@@ -4,7 +4,7 @@
PortSystem 1.0
name dbus
-version 1.2.10
+version 1.2.12
maintainers nomaintainer
categories devel
platforms darwin
@@ -16,13 +16,13 @@
homepage http://www.freedesktop.org/Software/dbus
master_sites http://dbus.freedesktop.org/releases/dbus
-checksums md5 ae740e0792313c8bb6e2a92ee0b70616 \
- sha1 63088b3443b5fea2df2550fd5827dd514dc31262 \
- rmd160 c770266d4f7ee11011467c05f775935fe57c0549
+checksums md5 39bd582c3b06a261cac44d4cab6fd60b \
+ sha1 13de8dc28c9edae7b9d2928ff691549bb2bef21a \
+ rmd160 779d76320f1343dae7447c82a683e372e6c11729
+
-patchfiles patch-dbus-launch-x11.c.diff \
- patch-dbus-sysdeps-unix.c.diff \
- patch-dbus-sysdeps-util-unix.c.diff
+patchfiles patch-dbus-sysdeps-unix.c.diff \
+ patch-launchd-integration-dist.diff
depends_build port:pkgconfig
@@ -31,12 +31,15 @@
configure.args --disable-doxygen-docs \
--disable-xml-docs \
- --with-x
+ --with-x \
+ --enable-launchd
configure.cflags-append -no-cpp-precomp
use_parallel_build yes
+default_variants +no_x11
+
test.run yes
test.target check
@@ -63,9 +66,7 @@
startupitem.create yes
startupitem.name dbus
startupitem.init XDG_DATA_DIRS=${prefix}/share
-startupitem.start "${prefix}/bin/dbus-daemon --system"
-startupitem.stop "kill `cat ${prefix}/var/run/dbus/pid`"
-startupitem.restart "kill `cat ${prefix}/var/run/dbus/pid` ; ${prefix}/bin/dbus-daemon --system"
+startupitem.executable ${prefix}/bin/dbus-daemon --system --nofork
pre-activate {
addgroup messagebus
@@ -76,13 +77,22 @@
file attributes ${prefix}/var/run/dbus -group messagebus -owner messagebus
file attributes ${prefix}/libexec/dbus-daemon-launch-helper -group messagebus
system "dbus-uuidgen --ensure"
+
+ ui_msg "##############################################################################"
+ ui_msg "# It is absolutely necessary for dbus enabled programs to work to execute"
+ ui_msg "#"
+ ui_msg "# launchctl load /Library/LaunchAgents/org.freedesktop.dbus-session.plist"
+ ui_msg "#"
+ ui_msg "# once for every user. Don't use 'sudo', else it will work only for root!"
+ ui_msg "# You also have to unload it before deactivating/uninstalling this software!"
+ ui_msg "##############################################################################"
}
variant test description {enable tests} {
configure.args-append --enable-tests
}
-variant no_x11 description {disable X11 support} {
+variant no_x11 {
configure.args-delete --with-x
configure.args-append --without-x
depends_lib-delete lib:libX11:xorg-libX11
Added: trunk/dports/devel/dbus/files/patch-launchd-integration-dist.diff
===================================================================
--- trunk/dports/devel/dbus/files/patch-launchd-integration-dist.diff (rev 0)
+++ trunk/dports/devel/dbus/files/patch-launchd-integration-dist.diff 2009-01-10 21:25:34 UTC (rev 45206)
@@ -0,0 +1,2493 @@
+This patch is provides launchd support for dbus. This version has beed
+ported from HEAD to the 1.2.12 distribution and therefore also include
+patches for configure and Makefile.in's
+Hopefully this gets soon integrated upstream, see this bug for details:
+https://bugs.freedesktop.org/show_bug.cgi?id=14259
+
+diff -Nurp Makefile.in Makefile.in
+--- Makefile.in 2009-01-07 01:30:43.000000000 +0100
++++ Makefile.in 2009-01-10 16:39:19.000000000 +0100
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.1 from Makefile.am.
++# Makefile.in generated by automake 1.10.2 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -152,6 +152,7 @@ DBUS_MAJOR_VERSION = @DBUS_MAJOR_VERSION
+ DBUS_MICRO_VERSION = @DBUS_MICRO_VERSION@
+ DBUS_MINOR_VERSION = @DBUS_MINOR_VERSION@
+ DBUS_PATH_OR_ABSTRACT = @DBUS_PATH_OR_ABSTRACT@
++DBUS_SESSION_BUS_DEFAULT_ADDRESS = @DBUS_SESSION_BUS_DEFAULT_ADDRESS@
+ DBUS_SESSION_SOCKET_DIR = @DBUS_SESSION_SOCKET_DIR@
+ DBUS_SYSTEM_BUS_DEFAULT_ADDRESS = @DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@
+ DBUS_SYSTEM_PID_FILE = @DBUS_SYSTEM_PID_FILE@
+@@ -167,7 +168,7 @@ DEFS = @DEFS@
+ DEPDIR = @DEPDIR@
+ DOXYGEN = @DOXYGEN@
+ DSYMUTIL = @DSYMUTIL@
+-ECHO = @ECHO@
++DUMPBIN = @DUMPBIN@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+@@ -179,8 +180,7 @@ EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+ EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+ EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+ EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+-F77 = @F77@
+-FFLAGS = @FFLAGS@
++FGREP = @FGREP@
+ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+ GREP = @GREP@
+ INSTALL = @INSTALL@
+@@ -188,12 +188,16 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LAUNCHCTL = @LAUNCHCTL@
++LAUNCHD_AGENT_DIR = @LAUNCHD_AGENT_DIR@
++LD = @LD@
+ LDFLAGS = @LDFLAGS@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
+ LIBXML_CFLAGS = @LIBXML_CFLAGS@
+ LIBXML_LIBS = @LIBXML_LIBS@
++LIPO = @LIPO@
+ LN_S = @LN_S@
+ LTLIBOBJS = @LTLIBOBJS@
+ LT_AGE = @LT_AGE@
+@@ -202,8 +206,12 @@ LT_REVISION = @LT_REVISION@
+ MAINT = @MAINT@
+ MAKEINFO = @MAKEINFO@
+ MKDIR_P = @MKDIR_P@
++NM = @NM@
+ NMEDIT = @NMEDIT@
++OBJDUMP = @OBJDUMP@
+ OBJEXT = @OBJEXT@
++OTOOL = @OTOOL@
++OTOOL64 = @OTOOL64@
+ PACKAGE = @PACKAGE@
+ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+ PACKAGE_NAME = @PACKAGE_NAME@
+@@ -250,7 +258,7 @@ abs_top_builddir = @abs_top_builddir@
+ abs_top_srcdir = @abs_top_srcdir@
+ ac_ct_CC = @ac_ct_CC@
+ ac_ct_CXX = @ac_ct_CXX@
+-ac_ct_F77 = @ac_ct_F77@
++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ am__include = @am__include@
+ am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+@@ -281,6 +289,7 @@ libdir = @libdir@
+ libexecdir = @libexecdir@
+ localedir = @localedir@
+ localstatedir = @localstatedir@
++lt_ECHO = @lt_ECHO@
+ mandir = @mandir@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+@@ -411,7 +420,7 @@ clean-libtool:
+ -rm -rf .libs _libs
+
+ distclean-libtool:
+- -rm -f libtool
++ -rm -f libtool config.lt
+ install-pkgconfigDATA: $(pkgconfig_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
+@@ -505,7 +514,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+ tags: TAGS
+diff -Nurp bus/Makefile.am bus/Makefile.am
+--- bus/Makefile.am 2008-08-07 20:44:35.000000000 +0200
++++ bus/Makefile.am 2009-01-10 16:36:24.000000000 +0100
+@@ -9,12 +9,18 @@ EFENCE=
+
+ CONFIG_IN_FILES= \
+ session.conf.in \
+- system.conf.in
++ system.conf.in \
++ org.freedesktop.dbus-session.plist.in
+
+ config_DATA= \
+ session.conf \
+ system.conf
+
++if DBUS_ENABLE_LAUNCHD
++agentdir=$(LAUNCHD_AGENT_DIR)
++agent_DATA=org.freedesktop.dbus-session.plist
++endif
++
+ if DBUS_USE_LIBXML
+ XML_SOURCES=config-loader-libxml.c
+ endif
+diff -Nurp bus/Makefile.in bus/Makefile.in
+--- bus/Makefile.in 2009-01-07 01:30:41.000000000 +0100
++++ bus/Makefile.in 2009-01-10 16:39:18.000000000 +0100
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.1 from Makefile.am.
++# Makefile.in generated by automake 1.10.2 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -43,6 +43,7 @@ noinst_PROGRAMS = $(am__EXEEXT_1) dbus-d
+ subdir = bus
+ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(srcdir)/dbus-daemon.1.in $(srcdir)/messagebus.in \
++ $(srcdir)/org.freedesktop.dbus-session.plist.in \
+ $(srcdir)/rc.messagebus.in $(srcdir)/session.conf.in \
+ $(srcdir)/system.conf.in
+ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+@@ -52,8 +53,8 @@ am__configure_deps = $(am__aclocal_m4_de
+ $(ACLOCAL_M4)
+ mkinstalldirs = $(install_sh) -d
+ CONFIG_HEADER = $(top_builddir)/config.h
+-CONFIG_CLEAN_FILES = system.conf session.conf messagebus rc.messagebus \
+- dbus-daemon.1
++CONFIG_CLEAN_FILES = system.conf session.conf messagebus \
++ org.freedesktop.dbus-session.plist rc.messagebus dbus-daemon.1
+ @DBUS_BUILD_TESTS_TRUE at am__EXEEXT_1 = bus-test$(EXEEXT) \
+ @DBUS_BUILD_TESTS_TRUE@ bus-test-system$(EXEEXT) \
+ @DBUS_BUILD_TESTS_TRUE@ bus-test-launch-helper$(EXEEXT)
+@@ -189,7 +190,7 @@ dbus_daemon_launch_helper_test_LINK = $(
+ $(AM_CFLAGS) $(CFLAGS) \
+ $(dbus_daemon_launch_helper_test_LDFLAGS) $(LDFLAGS) -o $@
+ am__installdirs = "$(DESTDIR)$(initddir)" "$(DESTDIR)$(man1dir)" \
+- "$(DESTDIR)$(configdir)"
++ "$(DESTDIR)$(agentdir)" "$(DESTDIR)$(configdir)"
+ initdSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+ SCRIPTS = $(initd_SCRIPTS)
+ DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
+@@ -223,8 +224,9 @@ am__vpath_adj = case $$p in \
+ *) f=$$p;; \
+ esac;
+ am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
++agentDATA_INSTALL = $(INSTALL_DATA)
+ configDATA_INSTALL = $(INSTALL_DATA)
+-DATA = $(config_DATA)
++DATA = $(agent_DATA) $(config_DATA)
+ ETAGS = etags
+ CTAGS = ctags
+ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+@@ -266,6 +268,7 @@ DBUS_MAJOR_VERSION = @DBUS_MAJOR_VERSION
+ DBUS_MICRO_VERSION = @DBUS_MICRO_VERSION@
+ DBUS_MINOR_VERSION = @DBUS_MINOR_VERSION@
+ DBUS_PATH_OR_ABSTRACT = @DBUS_PATH_OR_ABSTRACT@
++DBUS_SESSION_BUS_DEFAULT_ADDRESS = @DBUS_SESSION_BUS_DEFAULT_ADDRESS@
+ DBUS_SESSION_SOCKET_DIR = @DBUS_SESSION_SOCKET_DIR@
+ DBUS_SYSTEM_BUS_DEFAULT_ADDRESS = @DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@
+ DBUS_SYSTEM_PID_FILE = @DBUS_SYSTEM_PID_FILE@
+@@ -281,7 +284,7 @@ DEFS = @DEFS@
+ DEPDIR = @DEPDIR@
+ DOXYGEN = @DOXYGEN@
+ DSYMUTIL = @DSYMUTIL@
+-ECHO = @ECHO@
++DUMPBIN = @DUMPBIN@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+@@ -293,8 +296,7 @@ EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+ EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+ EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+ EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+-F77 = @F77@
+-FFLAGS = @FFLAGS@
++FGREP = @FGREP@
+ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+ GREP = @GREP@
+ INSTALL = @INSTALL@
+@@ -302,12 +304,16 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LAUNCHCTL = @LAUNCHCTL@
++LAUNCHD_AGENT_DIR = @LAUNCHD_AGENT_DIR@
++LD = @LD@
+ LDFLAGS = @LDFLAGS@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
+ LIBXML_CFLAGS = @LIBXML_CFLAGS@
+ LIBXML_LIBS = @LIBXML_LIBS@
++LIPO = @LIPO@
+ LN_S = @LN_S@
+ LTLIBOBJS = @LTLIBOBJS@
+ LT_AGE = @LT_AGE@
+@@ -316,8 +322,12 @@ LT_REVISION = @LT_REVISION@
+ MAINT = @MAINT@
+ MAKEINFO = @MAKEINFO@
+ MKDIR_P = @MKDIR_P@
++NM = @NM@
+ NMEDIT = @NMEDIT@
++OBJDUMP = @OBJDUMP@
+ OBJEXT = @OBJEXT@
++OTOOL = @OTOOL@
++OTOOL64 = @OTOOL64@
+ PACKAGE = @PACKAGE@
+ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+ PACKAGE_NAME = @PACKAGE_NAME@
+@@ -364,7 +374,7 @@ abs_top_builddir = @abs_top_builddir@
+ abs_top_srcdir = @abs_top_srcdir@
+ ac_ct_CC = @ac_ct_CC@
+ ac_ct_CXX = @ac_ct_CXX@
+-ac_ct_F77 = @ac_ct_F77@
++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ am__include = @am__include@
+ am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+@@ -395,6 +405,7 @@ libdir = @libdir@
+ libexecdir = @libexecdir@
+ localedir = @localedir@
+ localstatedir = @localstatedir@
++lt_ECHO = @lt_ECHO@
+ mandir = @mandir@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+@@ -418,12 +429,15 @@ INCLUDES = -I$(top_srcdir) $(DBUS_BUS_CF
+ EFENCE =
+ CONFIG_IN_FILES = \
+ session.conf.in \
+- system.conf.in
++ system.conf.in \
++ org.freedesktop.dbus-session.plist.in
+
+ config_DATA = \
+ session.conf \
+ system.conf
+
++ at DBUS_ENABLE_LAUNCHD_TRUE@agentdir = $(LAUNCHD_AGENT_DIR)
++ at DBUS_ENABLE_LAUNCHD_TRUE@agent_DATA = org.freedesktop.dbus-session.plist
+ @DBUS_USE_EXPAT_TRUE at XML_SOURCES = config-loader-expat.c
+ @DBUS_USE_LIBXML_TRUE at XML_SOURCES = config-loader-libxml.c
+ @DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX_FALSE@@DBUS_BUS_ENABLE_INOTIFY_FALSE@@DBUS_BUS_ENABLE_KQUEUE_FALSE at DIR_WATCH_SOURCE = dir-watch-default.c
+@@ -569,8 +583,8 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+- && exit 0; \
++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
++ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+@@ -600,6 +614,8 @@ session.conf: $(top_builddir)/config.sta
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+ messagebus: $(top_builddir)/config.status $(srcdir)/messagebus.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
++org.freedesktop.dbus-session.plist: $(top_builddir)/config.status $(srcdir)/org.freedesktop.dbus-session.plist.in
++ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+ rc.messagebus: $(top_builddir)/config.status $(srcdir)/rc.messagebus.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+ dbus-daemon.1: $(top_builddir)/config.status $(srcdir)/dbus-daemon.1.in
+@@ -960,8 +976,8 @@ install-man1: $(man1_MANS) $(man_MANS)
+ esac; \
+ done; \
+ for i in $$list; do \
+- if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+- else file=$$i; fi; \
++ if test -f $$i; then file=$$i; \
++ else file=$(srcdir)/$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+@@ -994,6 +1010,23 @@ uninstall-man1:
+ echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
+ rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
+ done
++install-agentDATA: $(agent_DATA)
++ @$(NORMAL_INSTALL)
++ test -z "$(agentdir)" || $(MKDIR_P) "$(DESTDIR)$(agentdir)"
++ @list='$(agent_DATA)'; for p in $$list; do \
++ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
++ f=$(am__strip_dir) \
++ echo " $(agentDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(agentdir)/$$f'"; \
++ $(agentDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(agentdir)/$$f"; \
++ done
++
++uninstall-agentDATA:
++ @$(NORMAL_UNINSTALL)
++ @list='$(agent_DATA)'; for p in $$list; do \
++ f=$(am__strip_dir) \
++ echo " rm -f '$(DESTDIR)$(agentdir)/$$f'"; \
++ rm -f "$(DESTDIR)$(agentdir)/$$f"; \
++ done
+ install-configDATA: $(config_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(configdir)" || $(MKDIR_P) "$(DESTDIR)$(configdir)"
+@@ -1017,7 +1050,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+ tags: TAGS
+@@ -1060,7 +1093,7 @@ distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+ check-TESTS: $(TESTS)
+- @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[ ]'; \
++ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ if test -n "$$list"; then \
+@@ -1071,7 +1104,7 @@ check-TESTS: $(TESTS)
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ echo "XPASS: $$tst"; \
+@@ -1083,7 +1116,7 @@ check-TESTS: $(TESTS)
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ echo "XFAIL: $$tst"; \
+ ;; \
+@@ -1097,23 +1130,36 @@ check-TESTS: $(TESTS)
+ echo "SKIP: $$tst"; \
+ fi; \
+ done; \
++ if test "$$all" -eq 1; then \
++ tests="test"; \
++ All=""; \
++ else \
++ tests="tests"; \
++ All="All "; \
++ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+- banner="All $$all tests passed"; \
++ banner="$$All$$all $$tests passed"; \
+ else \
+- banner="All $$all tests behaved as expected ($$xfail expected failures)"; \
++ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
++ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+- banner="$$failed of $$all tests failed"; \
++ banner="$$failed of $$all $$tests failed"; \
+ else \
+- banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \
++ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
++ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+- skipped="($$skip tests were not run)"; \
++ if test "$$skip" -eq 1; then \
++ skipped="($$skip test was not run)"; \
++ else \
++ skipped="($$skip tests were not run)"; \
++ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+@@ -1163,7 +1209,7 @@ check-am: all-am
+ check: check-am
+ all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA)
+ installdirs:
+- for dir in "$(DESTDIR)$(initddir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(configdir)"; do \
++ for dir in "$(DESTDIR)$(initddir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(agentdir)" "$(DESTDIR)$(configdir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+ install: install-am
+@@ -1211,7 +1257,8 @@ info: info-am
+
+ info-am:
+
+-install-data-am: install-configDATA install-initdSCRIPTS install-man
++install-data-am: install-agentDATA install-configDATA \
++ install-initdSCRIPTS install-man
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+
+@@ -1249,8 +1296,8 @@ ps: ps-am
+
+ ps-am:
+
+-uninstall-am: uninstall-configDATA uninstall-initdSCRIPTS \
+- uninstall-man
++uninstall-am: uninstall-agentDATA uninstall-configDATA \
++ uninstall-initdSCRIPTS uninstall-man
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) uninstall-hook
+
+@@ -1262,18 +1309,18 @@ uninstall-man: uninstall-man1
+ clean-generic clean-libtool clean-local clean-noinstPROGRAMS \
+ ctags distclean distclean-compile distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+- html-am info info-am install install-am install-configDATA \
+- install-data install-data-am install-data-hook install-dvi \
+- install-dvi-am install-exec install-exec-am install-html \
+- install-html-am install-info install-info-am \
+- install-initdSCRIPTS install-man install-man1 install-pdf \
+- install-pdf-am install-ps install-ps-am install-strip \
+- installcheck installcheck-am installdirs maintainer-clean \
+- maintainer-clean-generic mostlyclean mostlyclean-compile \
+- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+- tags uninstall uninstall-am uninstall-configDATA \
+- uninstall-hook uninstall-initdSCRIPTS uninstall-man \
+- uninstall-man1
++ html-am info info-am install install-agentDATA install-am \
++ install-configDATA install-data install-data-am \
++ install-data-hook install-dvi install-dvi-am install-exec \
++ install-exec-am install-html install-html-am install-info \
++ install-info-am install-initdSCRIPTS install-man install-man1 \
++ install-pdf install-pdf-am install-ps install-ps-am \
++ install-strip installcheck installcheck-am installdirs \
++ maintainer-clean maintainer-clean-generic mostlyclean \
++ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
++ pdf pdf-am ps ps-am tags uninstall uninstall-agentDATA \
++ uninstall-am uninstall-configDATA uninstall-hook \
++ uninstall-initdSCRIPTS uninstall-man uninstall-man1
+
+
+ clean-local:
+diff -Nurp bus/org.freedesktop.dbus-session.plist.in bus/org.freedesktop.dbus-session.plist.in
+--- bus/org.freedesktop.dbus-session.plist.in 1970-01-01 01:00:00.000000000 +0100
++++ bus/org.freedesktop.dbus-session.plist.in 2009-01-10 16:36:24.000000000 +0100
+@@ -0,0 +1,31 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
++<plist version="1.0">
++<dict>
++ <key>Label</key>
++ <string>org.freedesktop.dbus-session</string>
++
++ <key>ServiceIPC</key>
++ <true/>
++
++ <!-- bug in 10.4's launchd - on-demand loading does not work -->
++ <key>OnDemand</key>
++ <false />
++
++ <key>ProgramArguments</key>
++ <array>
++ <string>@DBUS_DAEMONDIR@/dbus-daemon</string>
++ <string>--nofork</string>
++ <string>--session</string>
++ </array>
++
++ <key>Sockets</key>
++ <dict>
++ <key>session</key>
++ <dict>
++ <key>SecureSocketWithKey</key>
++ <string>DBUS_LAUNCHD_SESSION_BUS_SOCKET</string>
++ </dict>
++ </dict>
++</dict>
++</plist>
+diff -Nurp bus/session.conf.in bus/session.conf.in
+--- bus/session.conf.in 2009-01-06 23:52:22.000000000 +0100
++++ bus/session.conf.in 2009-01-10 16:36:24.000000000 +0100
+@@ -12,7 +12,7 @@
+ the behavior of child processes. -->
+ <keep_umask/>
+
+- <listen>unix:tmpdir=@DBUS_SESSION_SOCKET_DIR@</listen>
++ <listen>@DBUS_SESSION_BUS_DEFAULT_ADDRESS@</listen>
+
+ <standard_session_servicedirs />
+
+diff -Nurp dbus/Makefile.am dbus/Makefile.am
+--- dbus/Makefile.am 2008-08-07 20:44:36.000000000 +0200
++++ dbus/Makefile.am 2009-01-10 16:36:24.000000000 +0100
+@@ -9,6 +9,12 @@ INCLUDES=-I$(top_builddir) -I$(top_srcdi
+ dbusincludedir=$(includedir)/dbus-1.0/dbus
+ dbusarchincludedir=$(libdir)/dbus-1.0/include/dbus
+
++if DBUS_ENABLE_LAUNCHD
++LAUNCHD_SOURCES = \
++ dbus-server-launchd.h \
++ dbus-server-launchd.c
++endif
++
+ lib_LTLIBRARIES=libdbus-1.la
+
+ dbusinclude_HEADERS= \
+@@ -92,7 +98,8 @@ DBUS_LIB_SOURCES= \
+ dbus-uuidgen.c \
+ dbus-uuidgen.h \
+ dbus-watch.c \
+- dbus-watch.h
++ dbus-watch.h \
++ $(LAUNCHD_SOURCES)
+
+ ## dbus-md5.c \
+ ## dbus-md5.h \
+diff -Nurp dbus/Makefile.in dbus/Makefile.in
+--- dbus/Makefile.in 2009-01-07 01:30:42.000000000 +0100
++++ dbus/Makefile.in 2009-01-10 16:39:18.000000000 +0100
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.1 from Makefile.am.
++# Makefile.in generated by automake 1.10.2 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -61,7 +61,38 @@ libLTLIBRARIES_INSTALL = $(INSTALL)
+ LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES)
+ am__DEPENDENCIES_1 =
+ libdbus_1_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+-am__objects_1 = dbus-address.lo dbus-auth.lo dbus-auth-script.lo \
++am__libdbus_1_la_SOURCES_DIST = dbus-address.c dbus-auth.c dbus-auth.h \
++ dbus-auth-script.c dbus-auth-script.h dbus-bus.c \
++ dbus-connection.c dbus-connection-internal.h \
++ dbus-credentials.c dbus-credentials.h dbus-errors.c \
++ dbus-keyring.c dbus-keyring.h dbus-marshal-header.c \
++ dbus-marshal-header.h dbus-marshal-byteswap.c \
++ dbus-marshal-byteswap.h dbus-marshal-recursive.c \
++ dbus-marshal-recursive.h dbus-marshal-validate.c \
++ dbus-marshal-validate.h dbus-message.c dbus-message-internal.h \
++ dbus-message-private.h dbus-misc.c dbus-object-tree.c \
++ dbus-object-tree.h dbus-pending-call.c \
++ dbus-pending-call-internal.h dbus-resources.c dbus-resources.h \
++ dbus-server.c dbus-server-debug-pipe.c \
++ dbus-server-debug-pipe.h dbus-server-protected.h \
++ dbus-server-socket.c dbus-server-socket.h dbus-server-unix.c \
++ dbus-server-unix.h dbus-sha.c dbus-sha.h dbus-signature.c \
++ dbus-timeout.c dbus-timeout.h dbus-threads-internal.h \
++ dbus-threads.c dbus-transport.c dbus-transport.h \
++ dbus-transport-protected.h dbus-transport-socket.c \
++ dbus-transport-socket.h dbus-transport-unix.c \
++ dbus-transport-unix.h dbus-uuidgen.c dbus-uuidgen.h \
++ dbus-watch.c dbus-watch.h dbus-server-launchd.h \
++ dbus-server-launchd.c dbus-dataslot.c dbus-dataslot.h \
++ dbus-hash.c dbus-hash.h dbus-internals.c dbus-internals.h \
++ dbus-list.c dbus-list.h dbus-marshal-basic.c \
++ dbus-marshal-basic.h dbus-memory.c dbus-mempool.c \
++ dbus-mempool.h dbus-string.c dbus-string.h \
++ dbus-string-private.h dbus-sysdeps.c dbus-sysdeps.h \
++ dbus-sysdeps-pthread.c dbus-sysdeps-unix.c dbus-sysdeps-unix.h \
++ dbus-userdb.c dbus-userdb.h
++ at DBUS_ENABLE_LAUNCHD_TRUE@am__objects_1 = dbus-server-launchd.lo
++am__objects_2 = dbus-address.lo dbus-auth.lo dbus-auth-script.lo \
+ dbus-bus.lo dbus-connection.lo dbus-credentials.lo \
+ dbus-errors.lo dbus-keyring.lo dbus-marshal-header.lo \
+ dbus-marshal-byteswap.lo dbus-marshal-recursive.lo \
+@@ -71,25 +102,62 @@ am__objects_1 = dbus-address.lo dbus-aut
+ dbus-server-unix.lo dbus-sha.lo dbus-signature.lo \
+ dbus-timeout.lo dbus-threads.lo dbus-transport.lo \
+ dbus-transport-socket.lo dbus-transport-unix.lo \
+- dbus-uuidgen.lo dbus-watch.lo
+-am__objects_2 = dbus-dataslot.lo dbus-hash.lo dbus-internals.lo \
++ dbus-uuidgen.lo dbus-watch.lo $(am__objects_1)
++am__objects_3 = dbus-dataslot.lo dbus-hash.lo dbus-internals.lo \
+ dbus-list.lo dbus-marshal-basic.lo dbus-memory.lo \
+ dbus-mempool.lo dbus-string.lo dbus-sysdeps.lo \
+ dbus-sysdeps-pthread.lo dbus-sysdeps-unix.lo dbus-userdb.lo
+-am_libdbus_1_la_OBJECTS = $(am__objects_1) $(am__objects_2)
++am_libdbus_1_la_OBJECTS = $(am__objects_2) $(am__objects_3)
+ libdbus_1_la_OBJECTS = $(am_libdbus_1_la_OBJECTS)
+ libdbus_1_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(libdbus_1_la_LDFLAGS) $(LDFLAGS) -o $@
+ libdbus_convenience_la_LIBADD =
+-am__objects_3 = dbus-auth-util.lo dbus-credentials-util.lo \
++am__libdbus_convenience_la_SOURCES_DIST = dbus-address.c dbus-auth.c \
++ dbus-auth.h dbus-auth-script.c dbus-auth-script.h dbus-bus.c \
++ dbus-connection.c dbus-connection-internal.h \
++ dbus-credentials.c dbus-credentials.h dbus-errors.c \
++ dbus-keyring.c dbus-keyring.h dbus-marshal-header.c \
++ dbus-marshal-header.h dbus-marshal-byteswap.c \
++ dbus-marshal-byteswap.h dbus-marshal-recursive.c \
++ dbus-marshal-recursive.h dbus-marshal-validate.c \
++ dbus-marshal-validate.h dbus-message.c dbus-message-internal.h \
++ dbus-message-private.h dbus-misc.c dbus-object-tree.c \
++ dbus-object-tree.h dbus-pending-call.c \
++ dbus-pending-call-internal.h dbus-resources.c dbus-resources.h \
++ dbus-server.c dbus-server-debug-pipe.c \
++ dbus-server-debug-pipe.h dbus-server-protected.h \
++ dbus-server-socket.c dbus-server-socket.h dbus-server-unix.c \
++ dbus-server-unix.h dbus-sha.c dbus-sha.h dbus-signature.c \
++ dbus-timeout.c dbus-timeout.h dbus-threads-internal.h \
++ dbus-threads.c dbus-transport.c dbus-transport.h \
++ dbus-transport-protected.h dbus-transport-socket.c \
++ dbus-transport-socket.h dbus-transport-unix.c \
++ dbus-transport-unix.h dbus-uuidgen.c dbus-uuidgen.h \
++ dbus-watch.c dbus-watch.h dbus-server-launchd.h \
++ dbus-server-launchd.c dbus-dataslot.c dbus-dataslot.h \
++ dbus-hash.c dbus-hash.h dbus-internals.c dbus-internals.h \
++ dbus-list.c dbus-list.h dbus-marshal-basic.c \
++ dbus-marshal-basic.h dbus-memory.c dbus-mempool.c \
++ dbus-mempool.h dbus-string.c dbus-string.h \
++ dbus-string-private.h dbus-sysdeps.c dbus-sysdeps.h \
++ dbus-sysdeps-pthread.c dbus-sysdeps-unix.c dbus-sysdeps-unix.h \
++ dbus-userdb.c dbus-userdb.h dbus-auth-util.c \
++ dbus-credentials-util.c dbus-mainloop.c dbus-mainloop.h \
++ dbus-marshal-byteswap-util.c dbus-marshal-recursive-util.c \
++ dbus-marshal-validate-util.c dbus-message-factory.c \
++ dbus-message-factory.h dbus-message-util.c dbus-shell.c \
++ dbus-shell.h dbus-spawn.c dbus-spawn.h dbus-string-util.c \
++ dbus-sysdeps-util.c dbus-sysdeps-util-unix.c dbus-test.c \
++ dbus-test.h dbus-userdb-util.c
++am__objects_4 = dbus-auth-util.lo dbus-credentials-util.lo \
+ dbus-mainloop.lo dbus-marshal-byteswap-util.lo \
+ dbus-marshal-recursive-util.lo dbus-marshal-validate-util.lo \
+ dbus-message-factory.lo dbus-message-util.lo dbus-shell.lo \
+ dbus-spawn.lo dbus-string-util.lo dbus-sysdeps-util.lo \
+ dbus-sysdeps-util-unix.lo dbus-test.lo dbus-userdb-util.lo
+-am_libdbus_convenience_la_OBJECTS = $(am__objects_1) $(am__objects_2) \
+- $(am__objects_3)
++am_libdbus_convenience_la_OBJECTS = $(am__objects_2) $(am__objects_3) \
++ $(am__objects_4)
+ libdbus_convenience_la_OBJECTS = $(am_libdbus_convenience_la_OBJECTS)
+ libdbus_convenience_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+@@ -116,8 +184,9 @@ LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLF
+ $(LDFLAGS) -o $@
+ SOURCES = $(libdbus_1_la_SOURCES) $(libdbus_convenience_la_SOURCES) \
+ $(dbus_test_SOURCES)
+-DIST_SOURCES = $(libdbus_1_la_SOURCES) \
+- $(libdbus_convenience_la_SOURCES) $(dbus_test_SOURCES)
++DIST_SOURCES = $(am__libdbus_1_la_SOURCES_DIST) \
++ $(am__libdbus_convenience_la_SOURCES_DIST) \
++ $(dbus_test_SOURCES)
+ dbusarchincludeHEADERS_INSTALL = $(INSTALL_HEADER)
+ dbusincludeHEADERS_INSTALL = $(INSTALL_HEADER)
+ HEADERS = $(dbusarchinclude_HEADERS) $(dbusinclude_HEADERS)
+@@ -162,6 +231,7 @@ DBUS_MAJOR_VERSION = @DBUS_MAJOR_VERSION
+ DBUS_MICRO_VERSION = @DBUS_MICRO_VERSION@
+ DBUS_MINOR_VERSION = @DBUS_MINOR_VERSION@
+ DBUS_PATH_OR_ABSTRACT = @DBUS_PATH_OR_ABSTRACT@
++DBUS_SESSION_BUS_DEFAULT_ADDRESS = @DBUS_SESSION_BUS_DEFAULT_ADDRESS@
+ DBUS_SESSION_SOCKET_DIR = @DBUS_SESSION_SOCKET_DIR@
+ DBUS_SYSTEM_BUS_DEFAULT_ADDRESS = @DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@
+ DBUS_SYSTEM_PID_FILE = @DBUS_SYSTEM_PID_FILE@
+@@ -177,7 +247,7 @@ DEFS = @DEFS@
+ DEPDIR = @DEPDIR@
+ DOXYGEN = @DOXYGEN@
+ DSYMUTIL = @DSYMUTIL@
+-ECHO = @ECHO@
++DUMPBIN = @DUMPBIN@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+@@ -189,8 +259,7 @@ EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+ EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+ EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+ EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+-F77 = @F77@
+-FFLAGS = @FFLAGS@
++FGREP = @FGREP@
+ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+ GREP = @GREP@
+ INSTALL = @INSTALL@
+@@ -198,12 +267,16 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LAUNCHCTL = @LAUNCHCTL@
++LAUNCHD_AGENT_DIR = @LAUNCHD_AGENT_DIR@
++LD = @LD@
+ LDFLAGS = @LDFLAGS@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
+ LIBXML_CFLAGS = @LIBXML_CFLAGS@
+ LIBXML_LIBS = @LIBXML_LIBS@
++LIPO = @LIPO@
+ LN_S = @LN_S@
+ LTLIBOBJS = @LTLIBOBJS@
+ LT_AGE = @LT_AGE@
+@@ -212,8 +285,12 @@ LT_REVISION = @LT_REVISION@
+ MAINT = @MAINT@
+ MAKEINFO = @MAKEINFO@
+ MKDIR_P = @MKDIR_P@
++NM = @NM@
+ NMEDIT = @NMEDIT@
++OBJDUMP = @OBJDUMP@
+ OBJEXT = @OBJEXT@
++OTOOL = @OTOOL@
++OTOOL64 = @OTOOL64@
+ PACKAGE = @PACKAGE@
+ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+ PACKAGE_NAME = @PACKAGE_NAME@
+@@ -260,7 +337,7 @@ abs_top_builddir = @abs_top_builddir@
+ abs_top_srcdir = @abs_top_srcdir@
+ ac_ct_CC = @ac_ct_CC@
+ ac_ct_CXX = @ac_ct_CXX@
+-ac_ct_F77 = @ac_ct_F77@
++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ am__include = @am__include@
+ am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+@@ -291,6 +368,7 @@ libdir = @libdir@
+ libexecdir = @libexecdir@
+ localedir = @localedir@
+ localstatedir = @localstatedir@
++lt_ECHO = @lt_ECHO@
+ mandir = @mandir@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+@@ -314,6 +392,10 @@ INCLUDES = -I$(top_builddir) -I$(top_src
+
+ dbusincludedir = $(includedir)/dbus-1.0/dbus
+ dbusarchincludedir = $(libdir)/dbus-1.0/include/dbus
++ at DBUS_ENABLE_LAUNCHD_TRUE@LAUNCHD_SOURCES = \
++ at DBUS_ENABLE_LAUNCHD_TRUE@ dbus-server-launchd.h \
++ at DBUS_ENABLE_LAUNCHD_TRUE@ dbus-server-launchd.c
++
+ lib_LTLIBRARIES = libdbus-1.la
+ dbusinclude_HEADERS = \
+ dbus.h \
+@@ -396,7 +478,8 @@ DBUS_LIB_SOURCES = \
+ dbus-uuidgen.c \
+ dbus-uuidgen.h \
+ dbus-watch.c \
+- dbus-watch.h
++ dbus-watch.h \
++ $(LAUNCHD_SOURCES)
+
+
+ ### source code that goes in the installed client library
+@@ -486,8 +569,8 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+- && exit 0; \
++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
++ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+@@ -603,6 +686,7 @@ distclean-compile:
+ @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dbus-pending-call.Plo at am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dbus-resources.Plo at am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dbus-server-debug-pipe.Plo at am__quote@
++ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dbus-server-launchd.Plo at am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dbus-server-socket.Plo at am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dbus-server-unix.Plo at am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dbus-server.Plo at am__quote@
+@@ -695,7 +779,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+ tags: TAGS
+@@ -738,7 +822,7 @@ distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+ check-TESTS: $(TESTS)
+- @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[ ]'; \
++ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ if test -n "$$list"; then \
+@@ -749,7 +833,7 @@ check-TESTS: $(TESTS)
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ echo "XPASS: $$tst"; \
+@@ -761,7 +845,7 @@ check-TESTS: $(TESTS)
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ echo "XFAIL: $$tst"; \
+ ;; \
+@@ -775,23 +859,36 @@ check-TESTS: $(TESTS)
+ echo "SKIP: $$tst"; \
+ fi; \
+ done; \
++ if test "$$all" -eq 1; then \
++ tests="test"; \
++ All=""; \
++ else \
++ tests="tests"; \
++ All="All "; \
++ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+- banner="All $$all tests passed"; \
++ banner="$$All$$all $$tests passed"; \
+ else \
+- banner="All $$all tests behaved as expected ($$xfail expected failures)"; \
++ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
++ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+- banner="$$failed of $$all tests failed"; \
++ banner="$$failed of $$all $$tests failed"; \
+ else \
+- banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \
++ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
++ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+- skipped="($$skip tests were not run)"; \
++ if test "$$skip" -eq 1; then \
++ skipped="($$skip test was not run)"; \
++ else \
++ skipped="($$skip tests were not run)"; \
++ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+diff -Nurp dbus/dbus-bus.c dbus/dbus-bus.c
+--- dbus/dbus-bus.c 2008-08-07 20:44:36.000000000 +0200
++++ dbus/dbus-bus.c 2009-01-10 16:36:24.000000000 +0100
+@@ -22,6 +22,7 @@
+ *
+ */
+
++#include <config.h>
+ #include "dbus-bus.h"
+ #include "dbus-protocol.h"
+ #include "dbus-internals.h"
+@@ -29,6 +30,7 @@
+ #include "dbus-marshal-validate.h"
+ #include "dbus-threads-internal.h"
+ #include "dbus-connection-internal.h"
++#include "dbus-string.h"
+ #include <string.h>
+
+ /**
+@@ -147,6 +149,63 @@ get_from_env (char **connectio
+ }
+
+ static dbus_bool_t
++init_session_address (void)
++{
++ dbus_bool_t retval;
++
++ retval = FALSE;
++
++ /* First, look in the environment. This is the normal case on
++ * freedesktop.org/Unix systems. */
++ get_from_env (&bus_connection_addresses[DBUS_BUS_SESSION],
++ "DBUS_SESSION_BUS_ADDRESS");
++ if (bus_connection_addresses[DBUS_BUS_SESSION] == NULL)
++ {
++ dbus_bool_t supported;
++ DBusString addr;
++ DBusError error = DBUS_ERROR_INIT;
++
++ if (!_dbus_string_init (&addr))
++ return FALSE;
++
++ supported = FALSE;
++ /* So it's not in the environment - let's try a platform-specific method.
++ * On MacOS, this involves asking launchd. On Windows (not specified yet)
++ * we might do a COM lookup.
++ * Ignore errors - if we failed, fall back to autolaunch. */
++ retval = _dbus_lookup_session_address (&supported, &addr, &error);
++ if (supported && retval)
++ {
++ retval =_dbus_string_steal_data (&addr, &bus_connection_addresses[DBUS_BUS_SESSION]);
++ }
++ else if (supported && !retval)
++ {
++ if (dbus_error_is_set(&error))
++ _dbus_warn ("Dynamic session lookup supported but failed: %s\n", error.message);
++ else
++ _dbus_warn ("Dynamic session lookup supported but failed silently\n");
++ }
++ _dbus_string_free (&addr);
++ }
++ else
++ retval = TRUE;
++
++ if (!retval)
++ return FALSE;
++
++ /* The DBUS_SESSION_BUS_DEFAULT_ADDRESS should have really been named
++ * DBUS_SESSION_BUS_FALLBACK_ADDRESS.
++ */
++ if (bus_connection_addresses[DBUS_BUS_SESSION] == NULL)
++ bus_connection_addresses[DBUS_BUS_SESSION] =
++ _dbus_strdup (DBUS_SESSION_BUS_DEFAULT_ADDRESS);
++ if (bus_connection_addresses[DBUS_BUS_SESSION] == NULL)
++ return FALSE;
++
++ return TRUE;
++}
++
++static dbus_bool_t
+ init_connections_unlocked (void)
+ {
+ if (!initialized)
+@@ -198,17 +257,9 @@ init_connections_unlocked (void)
+ {
+ _dbus_verbose ("Filling in session bus address...\n");
+
+- if (!get_from_env (&bus_connection_addresses[DBUS_BUS_SESSION],
+- "DBUS_SESSION_BUS_ADDRESS"))
++ if (!init_session_address ())
+ return FALSE;
+
+- if (bus_connection_addresses[DBUS_BUS_SESSION] == NULL)
+- bus_connection_addresses[DBUS_BUS_SESSION] =
+- _dbus_strdup (DBUS_SESSION_BUS_DEFAULT_ADDRESS);
+-
+- if (bus_connection_addresses[DBUS_BUS_SESSION] == NULL)
+- return FALSE;
+-
+ _dbus_verbose (" \"%s\"\n", bus_connection_addresses[DBUS_BUS_SESSION] ?
+ bus_connection_addresses[DBUS_BUS_SESSION] : "none set");
+ }
+diff -Nurp dbus/dbus-server-launchd.c dbus/dbus-server-launchd.c
+--- dbus/dbus-server-launchd.c 1970-01-01 01:00:00.000000000 +0100
++++ dbus/dbus-server-launchd.c 2009-01-10 16:36:24.000000000 +0100
+@@ -0,0 +1,150 @@
++/* dbus-server-launchd.c Server methods for interacting with launchd.
++ * Copyright (C) 2007, Tanner Lovelace <lovelace at wayfarer.org>
++ * Copyright (C) 2008, Benjamin Reed <rangerrick at befunk.com>
++ *
++ * Permission is hereby granted, free of charge, to any person
++ * obtaining a copy of this software and associated documentation
++ * files (the "Software"), to deal in the Software without
++ * restriction, including without limitation the rights to use, copy,
++ * modify, merge, publish, distribute, sublicense, and/or sell copies
++ * of the Software, and to permit persons to whom the Software is
++ * furnished to do so, subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be
++ * included in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
++ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
++ * DEALINGS IN THE SOFTWARE.
++ */
++
++#include <config.h>
++#include <launch.h>
++#include <errno.h>
++
++#include "dbus-server-socket.h"
++#include "dbus-server-launchd.h"
++
++/**
++ * @defgroup DBusServerLaunchd DBusServer implementations for Launchd
++ * @ingroup DBusInternals
++ * @brief Implementation details of DBusServer with Launchd support
++ *
++ * @{
++ */
++
++/**
++ * Creates a new server from launchd.
++ *
++ * @param socket_key they key to use when looking up the file descriptor from launchd
++ * @param error location to store reason for failure.
++ * @returns the new server, or #NULL on failure.
++ */
++
++DBusServer*
++_dbus_server_new_for_launchd_fd (const char *socket_key,
++ DBusError *error)
++{
++ DBusServer *server;
++ DBusString address;
++ int launchd_fd;
++ launch_data_t sockets_dict, checkin_response;
++ launch_data_t checkin_request;
++ launch_data_t listening_fd_array, listening_fd;
++
++ _DBUS_ASSERT_ERROR_IS_CLEAR (error);
++
++ if (!_dbus_string_init (&address))
++ {
++ dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
++ return NULL;
++ }
++ if (!_dbus_string_append (&address, "launchd:key="))
++ {
++ dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
++ goto l_failed_0;
++ }
++ if (!_dbus_string_append (&address, socket_key))
++ {
++ dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
++ goto l_failed_0;
++ }
++
++ if ((checkin_request = launch_data_new_string (LAUNCH_KEY_CHECKIN)) == NULL)
++ {
++ dbus_set_error (error, DBUS_ERROR_NO_MEMORY,
++ "launch_data_new_string(\"%s\") Unable to create string.\n", LAUNCH_KEY_CHECKIN);
++ goto l_failed_0;
++ }
++
++ if ((checkin_response = launch_msg (checkin_request)) == NULL)
++ {
++ dbus_set_error (error, DBUS_ERROR_IO_ERROR, "launch_msg(\"%s\") IPC failure: %s\n",
++ LAUNCH_KEY_CHECKIN, strerror (errno));
++ goto l_failed_0;
++ }
++
++ if (LAUNCH_DATA_ERRNO == launch_data_get_type (checkin_response))
++ {
++ dbus_set_error (error, DBUS_ERROR_FAILED, "Check-in failed: %s\n",
++ strerror (launch_data_get_errno (checkin_response)));
++ goto l_failed_0;
++ }
++
++ sockets_dict = launch_data_dict_lookup (checkin_response, LAUNCH_JOBKEY_SOCKETS);
++ if (NULL == sockets_dict)
++ {
++ dbus_set_error (error, DBUS_ERROR_IO_ERROR, "No sockets found to answer requests on!\n");
++ goto l_failed_0;
++ }
++
++ listening_fd_array = launch_data_dict_lookup (sockets_dict, socket_key);
++ if (NULL == listening_fd_array)
++ {
++ dbus_set_error (error, DBUS_ERROR_IO_ERROR, "No known sockets found to answer requests on!\n");
++ goto l_failed_0;
++ }
++
++ if (launch_data_array_get_count (listening_fd_array) != 1)
++ {
++ dbus_set_error (error, DBUS_ERROR_LIMITS_EXCEEDED,
++ "Expected 1 socket from launchd, got %d.\n",
++ launch_data_array_get_count (listening_fd_array));
++ goto l_failed_0;
++ }
++
++ listening_fd = launch_data_array_get_index (listening_fd_array, 0);
++ launchd_fd = launch_data_get_fd (listening_fd);
++
++ _dbus_fd_set_close_on_exec (launchd_fd);
++
++ if (launchd_fd < 0)
++ {
++ _DBUS_ASSERT_ERROR_IS_SET (error);
++ goto l_failed_0;
++ }
++
++ server = _dbus_server_new_for_socket (&launchd_fd, 1, &address);
++ if (server == NULL)
++ {
++ dbus_set_error (error, DBUS_ERROR_NO_SERVER, "Unable to listen on launchd fd %d.", launchd_fd);
++ goto l_failed_0;
++ }
++
++ _dbus_string_free (&address);
++
++ return server;
++
++ l_failed_0:
++ _dbus_string_free (&address);
++
++ return NULL;
++}
++
++/** @} */
++
+diff -Nurp dbus/dbus-server-launchd.h dbus/dbus-server-launchd.h
+--- dbus/dbus-server-launchd.h 1970-01-01 01:00:00.000000000 +0100
++++ dbus/dbus-server-launchd.h 2009-01-10 16:36:24.000000000 +0100
+@@ -0,0 +1,37 @@
++/* dbus-server-launchd.h Server methods for interacting with launchd.
++* Copyright (C) 2008, Benjamin Reed <rangerrick at befunk.com>
++*
++* Permission is hereby granted, free of charge, to any person
++* obtaining a copy of this software and associated documentation
++* files (the "Software"), to deal in the Software without
++* restriction, including without limitation the rights to use, copy,
++* modify, merge, publish, distribute, sublicense, and/or sell copies
++* of the Software, and to permit persons to whom the Software is
++* furnished to do so, subject to the following conditions:
++*
++* The above copyright notice and this permission notice shall be
++* included in all copies or substantial portions of the Software.
++*
++* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
++* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
++* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
++* DEALINGS IN THE SOFTWARE.
++*/
++
++#ifndef DBUS_SERVER_LAUNCHD_H
++#define DBUS_SERVER_LAUNCHD_H
++
++#include <dbus/dbus-internals.h>
++#include <dbus/dbus-server-protected.h>
++
++DBUS_BEGIN_DECLS
++
++DBusServer* _dbus_server_new_for_launchd_fd (const char *socket_fd, DBusError *error);
++
++DBUS_END_DECLS
++
++#endif /* DBUS_SERVER_LAUNCHD_H */
+diff -Nurp dbus/dbus-server-unix.c dbus/dbus-server-unix.c
+--- dbus/dbus-server-unix.c 2008-08-07 20:44:36.000000000 +0200
++++ dbus/dbus-server-unix.c 2009-01-10 16:36:24.000000000 +0100
+@@ -21,6 +21,7 @@
+ *
+ */
+
++#include <config.h>
+ #include "dbus-internals.h"
+ #include "dbus-server-unix.h"
+ #include "dbus-server-socket.h"
+@@ -29,6 +30,10 @@
+ #include "dbus-sysdeps-unix.h"
+ #include "dbus-string.h"
+
++#ifdef DBUS_ENABLE_LAUNCHD
++#include "dbus-server-launchd.h"
++#endif
++
+ /**
+ * @defgroup DBusServerUnix DBusServer implementations for UNIX
+ * @ingroup DBusInternals
+@@ -145,6 +150,26 @@ _dbus_server_listen_platform_specific (D
+ return DBUS_SERVER_LISTEN_DID_NOT_CONNECT;
+ }
+ }
++#ifdef DBUS_ENABLE_LAUNCHD
++ else if (strcmp (method, "launchd") == 0)
++ {
++ const char *launchd_key = dbus_address_entry_get_value (entry, "key");
++ if (launchd_key == NULL)
++ launchd_key = "session";
++ *server_p = _dbus_server_new_for_launchd_fd (launchd_key, error);
++
++ if (*server_p != NULL)
++ {
++ _DBUS_ASSERT_ERROR_IS_CLEAR(error);
++ return DBUS_SERVER_LISTEN_OK;
++ }
++ else
++ {
++ _DBUS_ASSERT_ERROR_IS_SET(error);
++ return DBUS_SERVER_LISTEN_DID_NOT_CONNECT;
++ }
++ }
++#endif
+ else
+ {
+ /* If we don't handle the method, we return NULL with the
+diff -Nurp dbus/dbus-sysdeps-unix.c dbus/dbus-sysdeps-unix.c
+--- dbus/dbus-sysdeps-unix.c 2009-01-06 23:38:11.000000000 +0100
++++ dbus/dbus-sysdeps-unix.c 2009-01-10 16:36:24.000000000 +0100
+@@ -2835,23 +2835,30 @@ _dbus_get_tmpdir(void)
+ }
+
+ /**
+- * Determines the address of the session bus by querying a
+- * platform-specific method.
++ * Execute a subprocess, returning up to 1024 bytes of output
++ * into @p result.
+ *
+- * If successful, returns #TRUE and appends the address to @p
+- * address. If a failure happens, returns #FALSE and
++ * If successful, returns #TRUE and appends the output to @p
++ * result. If a failure happens, returns #FALSE and
+ * sets an error in @p error.
+ *
+- * @param address a DBusString where the address can be stored
++ * @note It's not an error if the subprocess terminates normally
++ * without writing any data to stdout. Verify the @p result length
++ * before and after this function call to cover this case.
++ *
++ * @param progname initial path to exec
++ * @param argv NULL-terminated list of arguments
++ * @param result a DBusString where the output can be append
+ * @param error a DBusError to store the error in case of failure
+ * @returns #TRUE on success, #FALSE if an error happened
+ */
+-dbus_bool_t
+-_dbus_get_autolaunch_address (DBusString *address,
+- DBusError *error)
++static dbus_bool_t
++_read_subprocess_line_argv (const char *progpath,
++ const char * const *argv,
++ DBusString *result,
++ DBusError *error)
+ {
+- static char *argv[6];
+- int address_pipe[2] = { -1, -1 };
++ int result_pipe[2] = { -1, -1 };
+ int errors_pipe[2] = { -1, -1 };
+ pid_t pid;
+ int ret;
+@@ -2870,33 +2877,11 @@ _dbus_get_autolaunch_address (DBusString
+ return FALSE;
+ }
+
+- if (!_dbus_get_local_machine_uuid_encoded (&uuid))
+- {
+- _DBUS_SET_OOM (error);
+- goto out;
+- }
+-
+- i = 0;
+- argv[i] = "dbus-launch";
+- ++i;
+- argv[i] = "--autolaunch";
+- ++i;
+- argv[i] = _dbus_string_get_data (&uuid);
+- ++i;
+- argv[i] = "--binary-syntax";
+- ++i;
+- argv[i] = "--close-stderr";
+- ++i;
+- argv[i] = NULL;
+- ++i;
+-
+- _dbus_assert (i == _DBUS_N_ELEMENTS (argv));
+-
+- orig_len = _dbus_string_get_length (address);
++ orig_len = _dbus_string_get_length (result);
+
+ #define READ_END 0
+ #define WRITE_END 1
+- if (pipe (address_pipe) < 0)
++ if (pipe (result_pipe) < 0)
+ {
+ dbus_set_error (error, _dbus_error_from_errno (errno),
+ "Failed to create a pipe: %s",
+@@ -2940,7 +2925,7 @@ _dbus_get_autolaunch_address (DBusString
+ _dbus_verbose ("/dev/null fd %d opened\n", fd);
+
+ /* set-up stdXXX */
+- close (address_pipe[READ_END]);
++ close (result_pipe[READ_END]);
+ close (errors_pipe[READ_END]);
+ close (0); /* close stdin */
+ close (1); /* close stdout */
+@@ -2948,7 +2933,7 @@ _dbus_get_autolaunch_address (DBusString
+
+ if (dup2 (fd, 0) == -1)
+ _exit (1);
+- if (dup2 (address_pipe[WRITE_END], 1) == -1)
++ if (dup2 (result_pipe[WRITE_END], 1) == -1)
+ _exit (1);
+ if (dup2 (errors_pipe[WRITE_END], 2) == -1)
+ _exit (1);
+@@ -2963,25 +2948,36 @@ _dbus_get_autolaunch_address (DBusString
+ for (i = 3; i < maxfds; i++)
+ close (i);
+
+- execv (DBUS_BINDIR "/dbus-launch", argv);
+-
+- /* failed, try searching PATH */
+- execvp ("dbus-launch", argv);
++ /* If it looks fully-qualified, try execv first */
++ if (progpath[0] == '/')
++ {
++ const char *progname;
++
++ execv (progpath, (char **) argv);
++
++ /* If we failed with a direct exec, try extracting
++ the binary name and search the PATH for it */
++ progname = strrchr (progpath, '/');
++ if (progname != NULL)
++ execvp (progname+1, (char **) argv);
++ }
++ else
++ execvp (progpath, (char **) argv);
+
+ /* still nothing, we failed */
+ _exit (1);
+ }
+
+ /* parent process */
+- close (address_pipe[WRITE_END]);
++ close (result_pipe[WRITE_END]);
+ close (errors_pipe[WRITE_END]);
+- address_pipe[WRITE_END] = -1;
++ result_pipe[WRITE_END] = -1;
+ errors_pipe[WRITE_END] = -1;
+
+ ret = 0;
+ do
+ {
+- ret = _dbus_read (address_pipe[READ_END], address, 1024);
++ ret = _dbus_read (result_pipe[READ_END], result, 1024);
+ }
+ while (ret > 0);
+
+@@ -2994,8 +2990,7 @@ _dbus_get_autolaunch_address (DBusString
+
+ /* We succeeded if the process exited with status 0 and
+ anything was read */
+- if (!WIFEXITED (status) || WEXITSTATUS (status) != 0 ||
+- _dbus_string_get_length (address) == orig_len)
++ if (!WIFEXITED (status) || WEXITSTATUS (status) != 0 )
+ {
+ /* The process ended with error */
+ DBusString error_message;
+@@ -3007,14 +3002,14 @@ _dbus_get_autolaunch_address (DBusString
+ }
+ while (ret > 0);
+
+- _dbus_string_set_length (address, orig_len);
++ _dbus_string_set_length (result, orig_len);
+ if (_dbus_string_get_length (&error_message) > 0)
+ dbus_set_error (error, DBUS_ERROR_SPAWN_EXEC_FAILED,
+- "dbus-launch failed to autolaunch D-Bus session: %s",
++ "Subprocess terminated abnormally with the following error: %s",
+ _dbus_string_get_data (&error_message));
+ else
+ dbus_set_error (error, DBUS_ERROR_SPAWN_EXEC_FAILED,
+- "Failed to execute dbus-launch to autolaunch D-Bus session");
++ "Subprocess terminated abnormally without any error message");
+ goto out;
+ }
+
+@@ -3026,19 +3021,172 @@ _dbus_get_autolaunch_address (DBusString
+ else
+ _DBUS_ASSERT_ERROR_IS_SET (error);
+
+- if (address_pipe[0] != -1)
+- close (address_pipe[0]);
+- if (address_pipe[1] != -1)
+- close (address_pipe[1]);
++ if (result_pipe[0] != -1)
++ close (result_pipe[0]);
++ if (result_pipe[1] != -1)
++ close (result_pipe[1]);
+ if (errors_pipe[0] != -1)
+ close (errors_pipe[0]);
+ if (errors_pipe[1] != -1)
+ close (errors_pipe[1]);
+
++ return retval;
++}
++
++/**
++ * Returns the address of a new session bus.
++ *
++ * If successful, returns #TRUE and appends the address to @p
++ * address. If a failure happens, returns #FALSE and
++ * sets an error in @p error.
++ *
++ * @param address a DBusString where the address can be stored
++ * @param error a DBusError to store the error in case of failure
++ * @returns #TRUE on success, #FALSE if an error happened
++ */
++dbus_bool_t
++_dbus_get_autolaunch_address (DBusString *address,
++ DBusError *error)
++{
++ static char *argv[6];
++ int i;
++ DBusString uuid;
++ dbus_bool_t retval;
++
++ _DBUS_ASSERT_ERROR_IS_CLEAR (error);
++ retval = FALSE;
++
++ if (!_dbus_string_init (&uuid))
++ {
++ _DBUS_SET_OOM (error);
++ return FALSE;
++ }
++
++ if (!_dbus_get_local_machine_uuid_encoded (&uuid))
++ {
++ _DBUS_SET_OOM (error);
++ goto out;
++ }
++
++ i = 0;
++ argv[i] = "dbus-launch";
++ ++i;
++ argv[i] = "--autolaunch";
++ ++i;
++ argv[i] = _dbus_string_get_data (&uuid);
++ ++i;
++ argv[i] = "--binary-syntax";
++ ++i;
++ argv[i] = "--close-stderr";
++ ++i;
++ argv[i] = NULL;
++ ++i;
++
++ _dbus_assert (i == _DBUS_N_ELEMENTS (argv));
++
++ retval = _read_subprocess_line_argv (DBUS_BINDIR "/dbus-launch",
++ (const char * const*) argv,
++ address, error);
++
++ out:
+ _dbus_string_free (&uuid);
+ return retval;
+ }
+
++#ifdef DBUS_ENABLE_LAUNCHD
++static dbus_bool_t
++_dbus_lookup_session_address_launchd (DBusString *address,
++ DBusError *error)
++{
++ static char *argv[4];
++ int i;
++ int orig_len;
++ dbus_bool_t retval;
++
++ _DBUS_ASSERT_ERROR_IS_CLEAR (error);
++
++ i = 0;
++ argv[i] = "launchctl";
++ ++i;
++ argv[i] = "getenv";
++ ++i;
++ argv[i] = "DBUS_LAUNCHD_SESSION_BUS_SOCKET";
++ ++i;
++ argv[i] = NULL;
++ ++i;
++
++ _dbus_assert (i == _DBUS_N_ELEMENTS (argv));
++
++ /* from launchd's environment we get only the path to the socket */
++ if (!_dbus_string_append (address, "unix:path="))
++ {
++ _DBUS_SET_OOM (error);
++ return FALSE;
++ }
++
++ orig_len = _dbus_string_get_length(address);
++ /* append the process output to address */
++ if (!_read_subprocess_line_argv(argv[0], (const char * const*) argv,
++ address, error))
++ {
++ /* reset the address */
++ _dbus_string_set_length(address, 0);
++ return FALSE;
++ }
++
++ /* test if we got something from the subprocess */
++ if (_dbus_string_get_length(address) == orig_len)
++ {
++ /* reset the address */
++ _dbus_string_set_length(address, 0);
++ dbus_set_error(error, "no socket path",
++ "launchd did not provide a socket path, "
++ "verify that org.freedesktop.dbus-session.plist is loaded!");
++ return FALSE;
++ }
++
++ /* strip the carriage-return */
++ _dbus_string_shorten(address, 1);
++ return TRUE;
++}
++#endif
++
++/**
++ * Determines the address of the session bus by querying a
++ * platform-specific method.
++ *
++ * The first parameter will be a boolean specifying whether
++ * or not a dynamic session lookup is supported on this platform.
++ *
++ * If supported is TRUE and the return value is #TRUE, the
++ * address will be appended to @p address.
++ * If a failure happens, returns #FALSE and sets an error in
++ * @p error.
++ *
++ * If supported is FALSE, ignore the return value.
++ *
++ * @param address a DBusString where the address can be stored
++ * @param error a DBusError to store the error in case of failure
++ * @returns #TRUE on success, #FALSE if an error happened
++ */
++dbus_bool_t
++_dbus_lookup_session_address (dbus_bool_t *supported,
++ DBusString *address,
++ DBusError *error)
++{
++#ifdef DBUS_ENABLE_LAUNCHD
++ *supported = TRUE;
++ return _dbus_lookup_session_address_launchd (address, error);
++#else
++ /* On non-Mac Unix platforms, if the session address isn't already
++ * set in DBUS_SESSION_BUS_ADDRESS environment variable, we punt and
++ * fall back to the autolaunch: global default; see
++ * init_session_address in dbus/dbus-bus.c. */
++ *supported = FALSE;
++ return TRUE;
++#endif
++}
++
+ /**
+ * Reads the uuid of the machine we're running on from
+ * the dbus configuration. Optionally try to create it
+diff -Nurp dbus/dbus-sysdeps.h dbus/dbus-sysdeps.h
+--- dbus/dbus-sysdeps.h 2009-01-06 23:52:23.000000000 +0100
++++ dbus/dbus-sysdeps.h 2009-01-10 16:36:24.000000000 +0100
+@@ -468,6 +468,10 @@ void _dbus_log_security (const char *msg
+ dbus_bool_t _dbus_get_autolaunch_address (DBusString *address,
+ DBusError *error);
+
++dbus_bool_t _dbus_lookup_session_address (dbus_bool_t *supported,
++ DBusString *address,
++ DBusError *error);
++
+ /** Type representing a universally unique ID
+ * @todo rename to UUID instead of GUID
+ */
+diff -Nurp doc/Makefile.in doc/Makefile.in
+--- doc/Makefile.in 2009-01-07 01:30:42.000000000 +0100
++++ doc/Makefile.in 2009-01-10 16:39:18.000000000 +0100
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.1 from Makefile.am.
++# Makefile.in generated by automake 1.10.2 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -83,6 +83,7 @@ DBUS_MAJOR_VERSION = @DBUS_MAJOR_VERSION
+ DBUS_MICRO_VERSION = @DBUS_MICRO_VERSION@
+ DBUS_MINOR_VERSION = @DBUS_MINOR_VERSION@
+ DBUS_PATH_OR_ABSTRACT = @DBUS_PATH_OR_ABSTRACT@
++DBUS_SESSION_BUS_DEFAULT_ADDRESS = @DBUS_SESSION_BUS_DEFAULT_ADDRESS@
+ DBUS_SESSION_SOCKET_DIR = @DBUS_SESSION_SOCKET_DIR@
+ DBUS_SYSTEM_BUS_DEFAULT_ADDRESS = @DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@
+ DBUS_SYSTEM_PID_FILE = @DBUS_SYSTEM_PID_FILE@
+@@ -98,7 +99,7 @@ DEFS = @DEFS@
+ DEPDIR = @DEPDIR@
+ DOXYGEN = @DOXYGEN@
+ DSYMUTIL = @DSYMUTIL@
+-ECHO = @ECHO@
++DUMPBIN = @DUMPBIN@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+@@ -110,8 +111,7 @@ EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+ EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+ EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+ EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+-F77 = @F77@
+-FFLAGS = @FFLAGS@
++FGREP = @FGREP@
+ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+ GREP = @GREP@
+ INSTALL = @INSTALL@
+@@ -119,12 +119,16 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LAUNCHCTL = @LAUNCHCTL@
++LAUNCHD_AGENT_DIR = @LAUNCHD_AGENT_DIR@
++LD = @LD@
+ LDFLAGS = @LDFLAGS@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
+ LIBXML_CFLAGS = @LIBXML_CFLAGS@
+ LIBXML_LIBS = @LIBXML_LIBS@
++LIPO = @LIPO@
+ LN_S = @LN_S@
+ LTLIBOBJS = @LTLIBOBJS@
+ LT_AGE = @LT_AGE@
+@@ -133,8 +137,12 @@ LT_REVISION = @LT_REVISION@
+ MAINT = @MAINT@
+ MAKEINFO = @MAKEINFO@
+ MKDIR_P = @MKDIR_P@
++NM = @NM@
+ NMEDIT = @NMEDIT@
++OBJDUMP = @OBJDUMP@
+ OBJEXT = @OBJEXT@
++OTOOL = @OTOOL@
++OTOOL64 = @OTOOL64@
+ PACKAGE = @PACKAGE@
+ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+ PACKAGE_NAME = @PACKAGE_NAME@
+@@ -181,7 +189,7 @@ abs_top_builddir = @abs_top_builddir@
+ abs_top_srcdir = @abs_top_srcdir@
+ ac_ct_CC = @ac_ct_CC@
+ ac_ct_CXX = @ac_ct_CXX@
+-ac_ct_F77 = @ac_ct_F77@
++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ am__include = @am__include@
+ am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+@@ -212,6 +220,7 @@ libdir = @libdir@
+ libexecdir = @libexecdir@
+ localedir = @localedir@
+ localstatedir = @localstatedir@
++lt_ECHO = @lt_ECHO@
+ mandir = @mandir@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+@@ -244,8 +253,8 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+- && exit 0; \
++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
++ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+diff -Nurp test/Makefile.in test/Makefile.in
+--- test/Makefile.in 2009-01-07 01:30:42.000000000 +0100
++++ test/Makefile.in 2009-01-10 16:39:18.000000000 +0100
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.1 from Makefile.am.
++# Makefile.in generated by automake 1.10.2 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -179,6 +179,7 @@ DBUS_MAJOR_VERSION = @DBUS_MAJOR_VERSION
+ DBUS_MICRO_VERSION = @DBUS_MICRO_VERSION@
+ DBUS_MINOR_VERSION = @DBUS_MINOR_VERSION@
+ DBUS_PATH_OR_ABSTRACT = @DBUS_PATH_OR_ABSTRACT@
++DBUS_SESSION_BUS_DEFAULT_ADDRESS = @DBUS_SESSION_BUS_DEFAULT_ADDRESS@
+ DBUS_SESSION_SOCKET_DIR = @DBUS_SESSION_SOCKET_DIR@
+ DBUS_SYSTEM_BUS_DEFAULT_ADDRESS = @DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@
+ DBUS_SYSTEM_PID_FILE = @DBUS_SYSTEM_PID_FILE@
+@@ -194,7 +195,7 @@ DEFS = @DEFS@
+ DEPDIR = @DEPDIR@
+ DOXYGEN = @DOXYGEN@
+ DSYMUTIL = @DSYMUTIL@
+-ECHO = @ECHO@
++DUMPBIN = @DUMPBIN@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+@@ -206,8 +207,7 @@ EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+ EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+ EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+ EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+-F77 = @F77@
+-FFLAGS = @FFLAGS@
++FGREP = @FGREP@
+ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+ GREP = @GREP@
+ INSTALL = @INSTALL@
+@@ -215,12 +215,16 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LAUNCHCTL = @LAUNCHCTL@
++LAUNCHD_AGENT_DIR = @LAUNCHD_AGENT_DIR@
++LD = @LD@
+ LDFLAGS = @LDFLAGS@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
+ LIBXML_CFLAGS = @LIBXML_CFLAGS@
+ LIBXML_LIBS = @LIBXML_LIBS@
++LIPO = @LIPO@
+ LN_S = @LN_S@
+ LTLIBOBJS = @LTLIBOBJS@
+ LT_AGE = @LT_AGE@
+@@ -229,8 +233,12 @@ LT_REVISION = @LT_REVISION@
+ MAINT = @MAINT@
+ MAKEINFO = @MAKEINFO@
+ MKDIR_P = @MKDIR_P@
++NM = @NM@
+ NMEDIT = @NMEDIT@
++OBJDUMP = @OBJDUMP@
+ OBJEXT = @OBJEXT@
++OTOOL = @OTOOL@
++OTOOL64 = @OTOOL64@
+ PACKAGE = @PACKAGE@
+ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+ PACKAGE_NAME = @PACKAGE_NAME@
+@@ -277,7 +285,7 @@ abs_top_builddir = @abs_top_builddir@
+ abs_top_srcdir = @abs_top_srcdir@
+ ac_ct_CC = @ac_ct_CC@
+ ac_ct_CXX = @ac_ct_CXX@
+-ac_ct_F77 = @ac_ct_F77@
++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ am__include = @am__include@
+ am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+@@ -308,6 +316,7 @@ libdir = @libdir@
+ libexecdir = @libexecdir@
+ localedir = @localedir@
+ localstatedir = @localstatedir@
++lt_ECHO = @lt_ECHO@
+ mandir = @mandir@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+@@ -405,8 +414,8 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+- && exit 0; \
++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
++ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+@@ -595,7 +604,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+ tags: TAGS
+@@ -651,7 +660,7 @@ distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+ check-TESTS: $(TESTS)
+- @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[ ]'; \
++ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ if test -n "$$list"; then \
+@@ -662,7 +671,7 @@ check-TESTS: $(TESTS)
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ echo "XPASS: $$tst"; \
+@@ -674,7 +683,7 @@ check-TESTS: $(TESTS)
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ echo "XFAIL: $$tst"; \
+ ;; \
+@@ -688,23 +697,36 @@ check-TESTS: $(TESTS)
+ echo "SKIP: $$tst"; \
+ fi; \
+ done; \
++ if test "$$all" -eq 1; then \
++ tests="test"; \
++ All=""; \
++ else \
++ tests="tests"; \
++ All="All "; \
++ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+- banner="All $$all tests passed"; \
++ banner="$$All$$all $$tests passed"; \
+ else \
+- banner="All $$all tests behaved as expected ($$xfail expected failures)"; \
++ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
++ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+- banner="$$failed of $$all tests failed"; \
++ banner="$$failed of $$all $$tests failed"; \
+ else \
+- banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \
++ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
++ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+- skipped="($$skip tests were not run)"; \
++ if test "$$skip" -eq 1; then \
++ skipped="($$skip test was not run)"; \
++ else \
++ skipped="($$skip tests were not run)"; \
++ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+diff -Nurp test/name-test/Makefile.in test/name-test/Makefile.in
+--- test/name-test/Makefile.in 2009-01-07 01:30:43.000000000 +0100
++++ test/name-test/Makefile.in 2009-01-10 16:39:18.000000000 +0100
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.1 from Makefile.am.
++# Makefile.in generated by automake 1.10.2 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -182,6 +182,7 @@ DBUS_MAJOR_VERSION = @DBUS_MAJOR_VERSION
+ DBUS_MICRO_VERSION = @DBUS_MICRO_VERSION@
+ DBUS_MINOR_VERSION = @DBUS_MINOR_VERSION@
+ DBUS_PATH_OR_ABSTRACT = @DBUS_PATH_OR_ABSTRACT@
++DBUS_SESSION_BUS_DEFAULT_ADDRESS = @DBUS_SESSION_BUS_DEFAULT_ADDRESS@
+ DBUS_SESSION_SOCKET_DIR = @DBUS_SESSION_SOCKET_DIR@
+ DBUS_SYSTEM_BUS_DEFAULT_ADDRESS = @DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@
+ DBUS_SYSTEM_PID_FILE = @DBUS_SYSTEM_PID_FILE@
+@@ -197,7 +198,7 @@ DEFS = @DEFS@
+ DEPDIR = @DEPDIR@
+ DOXYGEN = @DOXYGEN@
+ DSYMUTIL = @DSYMUTIL@
+-ECHO = @ECHO@
++DUMPBIN = @DUMPBIN@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+@@ -209,8 +210,7 @@ EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+ EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+ EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+ EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+-F77 = @F77@
+-FFLAGS = @FFLAGS@
++FGREP = @FGREP@
+ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+ GREP = @GREP@
+ INSTALL = @INSTALL@
+@@ -218,12 +218,16 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LAUNCHCTL = @LAUNCHCTL@
++LAUNCHD_AGENT_DIR = @LAUNCHD_AGENT_DIR@
++LD = @LD@
+ LDFLAGS = @LDFLAGS@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
+ LIBXML_CFLAGS = @LIBXML_CFLAGS@
+ LIBXML_LIBS = @LIBXML_LIBS@
++LIPO = @LIPO@
+ LN_S = @LN_S@
+ LTLIBOBJS = @LTLIBOBJS@
+ LT_AGE = @LT_AGE@
+@@ -232,8 +236,12 @@ LT_REVISION = @LT_REVISION@
+ MAINT = @MAINT@
+ MAKEINFO = @MAKEINFO@
+ MKDIR_P = @MKDIR_P@
++NM = @NM@
+ NMEDIT = @NMEDIT@
++OBJDUMP = @OBJDUMP@
+ OBJEXT = @OBJEXT@
++OTOOL = @OTOOL@
++OTOOL64 = @OTOOL64@
+ PACKAGE = @PACKAGE@
+ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+ PACKAGE_NAME = @PACKAGE_NAME@
+@@ -280,7 +288,7 @@ abs_top_builddir = @abs_top_builddir@
+ abs_top_srcdir = @abs_top_srcdir@
+ ac_ct_CC = @ac_ct_CC@
+ ac_ct_CXX = @ac_ct_CXX@
+-ac_ct_F77 = @ac_ct_F77@
++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ am__include = @am__include@
+ am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+@@ -311,6 +319,7 @@ libdir = @libdir@
+ libexecdir = @libexecdir@
+ localedir = @localedir@
+ localstatedir = @localstatedir@
++lt_ECHO = @lt_ECHO@
+ mandir = @mandir@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+@@ -375,8 +384,8 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+- && exit 0; \
++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
++ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+@@ -517,7 +526,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+ tags: TAGS
+@@ -560,7 +569,7 @@ distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+ check-TESTS: $(TESTS)
+- @failed=0; all=0; xfail=0; xpass=0; skip=0; ws='[ ]'; \
++ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ if test -n "$$list"; then \
+@@ -571,7 +580,7 @@ check-TESTS: $(TESTS)
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ echo "XPASS: $$tst"; \
+@@ -583,7 +592,7 @@ check-TESTS: $(TESTS)
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+- *$$ws$$tst$$ws*) \
++ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ echo "XFAIL: $$tst"; \
+ ;; \
+@@ -597,23 +606,36 @@ check-TESTS: $(TESTS)
+ echo "SKIP: $$tst"; \
+ fi; \
+ done; \
++ if test "$$all" -eq 1; then \
++ tests="test"; \
++ All=""; \
++ else \
++ tests="tests"; \
++ All="All "; \
++ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+- banner="All $$all tests passed"; \
++ banner="$$All$$all $$tests passed"; \
+ else \
+- banner="All $$all tests behaved as expected ($$xfail expected failures)"; \
++ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
++ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+- banner="$$failed of $$all tests failed"; \
++ banner="$$failed of $$all $$tests failed"; \
+ else \
+- banner="$$failed of $$all tests did not behave as expected ($$xpass unexpected passes)"; \
++ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
++ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+- skipped="($$skip tests were not run)"; \
++ if test "$$skip" -eq 1; then \
++ skipped="($$skip test was not run)"; \
++ else \
++ skipped="($$skip tests were not run)"; \
++ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+diff -Nurp tools/Makefile.in tools/Makefile.in
+--- tools/Makefile.in 2009-01-07 01:30:43.000000000 +0100
++++ tools/Makefile.in 2009-01-10 16:39:19.000000000 +0100
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.1 from Makefile.am.
++# Makefile.in generated by automake 1.10.2 from Makefile.am.
+ # @configure_input@
+
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -154,6 +154,7 @@ DBUS_MAJOR_VERSION = @DBUS_MAJOR_VERSION
+ DBUS_MICRO_VERSION = @DBUS_MICRO_VERSION@
+ DBUS_MINOR_VERSION = @DBUS_MINOR_VERSION@
+ DBUS_PATH_OR_ABSTRACT = @DBUS_PATH_OR_ABSTRACT@
++DBUS_SESSION_BUS_DEFAULT_ADDRESS = @DBUS_SESSION_BUS_DEFAULT_ADDRESS@
+ DBUS_SESSION_SOCKET_DIR = @DBUS_SESSION_SOCKET_DIR@
+ DBUS_SYSTEM_BUS_DEFAULT_ADDRESS = @DBUS_SYSTEM_BUS_DEFAULT_ADDRESS@
+ DBUS_SYSTEM_PID_FILE = @DBUS_SYSTEM_PID_FILE@
+@@ -169,7 +170,7 @@ DEFS = @DEFS@
+ DEPDIR = @DEPDIR@
+ DOXYGEN = @DOXYGEN@
+ DSYMUTIL = @DSYMUTIL@
+-ECHO = @ECHO@
++DUMPBIN = @DUMPBIN@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+@@ -181,8 +182,7 @@ EXPANDED_LIBDIR = @EXPANDED_LIBDIR@
+ EXPANDED_LIBEXECDIR = @EXPANDED_LIBEXECDIR@
+ EXPANDED_LOCALSTATEDIR = @EXPANDED_LOCALSTATEDIR@
+ EXPANDED_SYSCONFDIR = @EXPANDED_SYSCONFDIR@
+-F77 = @F77@
+-FFLAGS = @FFLAGS@
++FGREP = @FGREP@
+ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+ GREP = @GREP@
+ INSTALL = @INSTALL@
+@@ -190,12 +190,16 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
++LAUNCHCTL = @LAUNCHCTL@
++LAUNCHD_AGENT_DIR = @LAUNCHD_AGENT_DIR@
++LD = @LD@
+ LDFLAGS = @LDFLAGS@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
+ LIBTOOL = @LIBTOOL@
+ LIBXML_CFLAGS = @LIBXML_CFLAGS@
+ LIBXML_LIBS = @LIBXML_LIBS@
++LIPO = @LIPO@
+ LN_S = @LN_S@
+ LTLIBOBJS = @LTLIBOBJS@
+ LT_AGE = @LT_AGE@
+@@ -204,8 +208,12 @@ LT_REVISION = @LT_REVISION@
+ MAINT = @MAINT@
+ MAKEINFO = @MAKEINFO@
+ MKDIR_P = @MKDIR_P@
++NM = @NM@
+ NMEDIT = @NMEDIT@
++OBJDUMP = @OBJDUMP@
+ OBJEXT = @OBJEXT@
++OTOOL = @OTOOL@
++OTOOL64 = @OTOOL64@
+ PACKAGE = @PACKAGE@
+ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+ PACKAGE_NAME = @PACKAGE_NAME@
+@@ -252,7 +260,7 @@ abs_top_builddir = @abs_top_builddir@
+ abs_top_srcdir = @abs_top_srcdir@
+ ac_ct_CC = @ac_ct_CC@
+ ac_ct_CXX = @ac_ct_CXX@
+-ac_ct_F77 = @ac_ct_F77@
++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+ am__include = @am__include@
+ am__leading_dot = @am__leading_dot@
+ am__quote = @am__quote@
+@@ -283,6 +291,7 @@ libdir = @libdir@
+ libexecdir = @libexecdir@
+ localedir = @localedir@
+ localstatedir = @localstatedir@
++lt_ECHO = @lt_ECHO@
+ mandir = @mandir@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+@@ -346,8 +355,8 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+- && exit 0; \
++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
++ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+@@ -466,8 +475,8 @@ install-man1: $(man1_MANS) $(man_MANS)
+ esac; \
+ done; \
+ for i in $$list; do \
+- if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+- else file=$$i; fi; \
++ if test -f $$i; then file=$$i; \
++ else file=$(srcdir)/$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+@@ -523,7 +532,7 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+ tags: TAGS
+--- configure 2009-01-10 17:14:56.000000000 +0100
++++ configure 2009-01-10 17:14:11.000000000 +0100
+@@ -844,6 +844,11 @@
+ HAVE_LIBAUDIT_TRUE
+ HAVE_CONSOLE_OWNER_FILE_FALSE
+ HAVE_CONSOLE_OWNER_FILE_TRUE
++LAUNCHD_AGENT_DIR
++DBUS_SESSION_BUS_DEFAULT_ADDRESS
++DBUS_ENABLE_LAUNCHD_FALSE
++DBUS_ENABLE_LAUNCHD_TRUE
++LAUNCHCTL
+ DBUS_BUS_ENABLE_KQUEUE_FALSE
+ DBUS_BUS_ENABLE_KQUEUE_TRUE
+ DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX_FALSE
+@@ -1026,6 +1031,7 @@
+ enable_kqueue
+ enable_console_owner_file
+ enable_userdb_cache
++enable_launchd
+ with_xml
+ with_init_scripts
+ with_session_socket_dir
+@@ -1034,6 +1040,7 @@
+ with_system_socket
+ with_console_auth_dir
+ with_console_owner_file
++with_launchd_agent_dir
+ with_dbus_user
+ with_dbus_daemondir
+ with_x
+@@ -1714,6 +1721,7 @@
+ --enable-console-owner-file
+ enable console owner file
+ --enable-userdb-cache build with userdb-cache support
++ --enable-launchd build with launchd auto-launch support
+
+ Optional Packages:
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+@@ -1737,6 +1745,9 @@
+ directory to check for console ownerhip
+ --with-console-owner-file=filename
+ file whose owner determines current console owner
++ --with-launchd-agent-dir=dirname
++ directory to put the launchd agent (default:
++ /Library/LaunchAgents)
+ --with-dbus-user=<user> User for running the DBUS daemon (messagebus)
+ --with-dbus-daemondir=dirname
+ Directory for installing the DBUS daemon
+@@ -15866,6 +15877,13 @@
+ enable_userdb_cache=yes
+ fi
+
++# Check whether --enable-launchd was given.
++if test "${enable_launchd+set}" = set; then
++ enableval=$enable_launchd; enable_launchd=$enableval
++else
++ enable_launchd=auto
++fi
++
+
+
+ # Check whether --with-xml was given.
+@@ -15916,6 +15934,12 @@
+ fi
+
+
++# Check whether --with-launchd-agent-dir was given.
++if test "${with_launchd_agent_dir+set}" = set; then
++ withval=$with_launchd_agent_dir;
++fi
++
++
+ # Check whether --with-dbus_user was given.
+ if test "${with_dbus_user+set}" = set; then
+ withval=$with_dbus_user;
+@@ -23179,6 +23203,230 @@
+ fi
+
+
++# launchd checks
++if test x$enable_launchd = xno ; then
++ have_launchd=no
++else
++ have_launchd=yes
++ if test "${ac_cv_header_launch_h+set}" = set; then
++ { $as_echo "$as_me:$LINENO: checking for launch.h" >&5
++$as_echo_n "checking for launch.h... " >&6; }
++if test "${ac_cv_header_launch_h+set}" = set; then
++ $as_echo_n "(cached) " >&6
++fi
++{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_launch_h" >&5
++$as_echo "$ac_cv_header_launch_h" >&6; }
++else
++ # Is the header compilable?
++{ $as_echo "$as_me:$LINENO: checking launch.h usability" >&5
++$as_echo_n "checking launch.h usability... " >&6; }
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++#include <launch.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (ac_try="$ac_compile"
++case "(($ac_try" in
++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++ *) ac_try_echo=$ac_try;;
++esac
++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
++$as_echo "$ac_try_echo") >&5
++ (eval "$ac_compile") 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } && {
++ test -z "$ac_c_werror_flag" ||
++ test ! -s conftest.err
++ } && test -s conftest.$ac_objext; then
++ ac_header_compiler=yes
++else
++ $as_echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_header_compiler=no
++fi
++
++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
++{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++$as_echo "$ac_header_compiler" >&6; }
++
++# Is the header present?
++{ $as_echo "$as_me:$LINENO: checking launch.h presence" >&5
++$as_echo_n "checking launch.h presence... " >&6; }
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <launch.h>
++_ACEOF
++if { (ac_try="$ac_cpp conftest.$ac_ext"
++case "(($ac_try" in
++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
++ *) ac_try_echo=$ac_try;;
++esac
++eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
++$as_echo "$ac_try_echo") >&5
++ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null && {
++ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
++ test ! -s conftest.err
++ }; then
++ ac_header_preproc=yes
++else
++ $as_echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_header_preproc=no
++fi
++
++rm -f conftest.err conftest.$ac_ext
++{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++$as_echo "$ac_header_preproc" >&6; }
++
++# So? What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++ yes:no: )
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: accepted by the compiler, rejected by the preprocessor!" >&5
++$as_echo "$as_me: WARNING: launch.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: proceeding with the compiler's result" >&5
++$as_echo "$as_me: WARNING: launch.h: proceeding with the compiler's result" >&2;}
++ ac_header_preproc=yes
++ ;;
++ no:yes:* )
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: present but cannot be compiled" >&5
++$as_echo "$as_me: WARNING: launch.h: present but cannot be compiled" >&2;}
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: check for missing prerequisite headers?" >&5
++$as_echo "$as_me: WARNING: launch.h: check for missing prerequisite headers?" >&2;}
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: see the Autoconf documentation" >&5
++$as_echo "$as_me: WARNING: launch.h: see the Autoconf documentation" >&2;}
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: section \"Present But Cannot Be Compiled\"" >&5
++$as_echo "$as_me: WARNING: launch.h: section \"Present But Cannot Be Compiled\"" >&2;}
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: proceeding with the preprocessor's result" >&5
++$as_echo "$as_me: WARNING: launch.h: proceeding with the preprocessor's result" >&2;}
++ { $as_echo "$as_me:$LINENO: WARNING: launch.h: in the future, the compiler will take precedence" >&5
++$as_echo "$as_me: WARNING: launch.h: in the future, the compiler will take precedence" >&2;}
++
++ ;;
++esac
++{ $as_echo "$as_me:$LINENO: checking for launch.h" >&5
++$as_echo_n "checking for launch.h... " >&6; }
++if test "${ac_cv_header_launch_h+set}" = set; then
++ $as_echo_n "(cached) " >&6
++else
++ ac_cv_header_launch_h=$ac_header_preproc
++fi
++{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_launch_h" >&5
++$as_echo "$ac_cv_header_launch_h" >&6; }
++
++fi
++if test "x$ac_cv_header_launch_h" = x""yes; then
++ :
++else
++ have_launchd=no
++fi
++
++
++ # Extract the first word of "launchctl", so it can be a program name with args.
++set dummy launchctl; ac_word=$2
++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
++$as_echo_n "checking for $ac_word... " >&6; }
++if test "${ac_cv_path_LAUNCHCTL+set}" = set; then
++ $as_echo_n "(cached) " >&6
++else
++ case $LAUNCHCTL in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_LAUNCHCTL="$LAUNCHCTL" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ ac_cv_path_LAUNCHCTL="$as_dir/$ac_word$ac_exec_ext"
++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++IFS=$as_save_IFS
++
++ ;;
++esac
++fi
++LAUNCHCTL=$ac_cv_path_LAUNCHCTL
++if test -n "$LAUNCHCTL"; then
++ { $as_echo "$as_me:$LINENO: result: $LAUNCHCTL" >&5
++$as_echo "$LAUNCHCTL" >&6; }
++else
++ { $as_echo "$as_me:$LINENO: result: no" >&5
++$as_echo "no" >&6; }
++fi
++
++
++ if test "x$LAUNCHCTL" = "x"; then
++ have_launchd=no
++ fi
++
++ if test x$enable_launchd = xyes -a x$have_launchd = xno ; then
++ { { $as_echo "$as_me:$LINENO: error: launchd support explicitly enabled but not available" >&5
++$as_echo "$as_me: error: launchd support explicitly enabled but not available" >&2;}
++ { (exit 1); exit 1; }; }
++ fi
++fi
++
++if test x$have_launchd = xyes; then
++
++cat >>confdefs.h <<\_ACEOF
++#define DBUS_ENABLE_LAUNCHD 1
++_ACEOF
++
++fi
++
++ if test x$have_launchd = xyes; then
++ DBUS_ENABLE_LAUNCHD_TRUE=
++ DBUS_ENABLE_LAUNCHD_FALSE='#'
++else
++ DBUS_ENABLE_LAUNCHD_TRUE='#'
++ DBUS_ENABLE_LAUNCHD_FALSE=
++fi
++
++
++if test x$have_launchd = xyes; then
++ DBUS_SESSION_BUS_DEFAULT_ADDRESS="launchd:key=session"
++else
++ DBUS_SESSION_BUS_DEFAULT_ADDRESS="unix:tmpdir=$DBUS_SESSION_SOCKET_DIR"
++fi
++
++
++
++#### Directory to place launchd agent file
++if test "x$with_launchd_agent_dir" = "x"; then
++ LAUNCHD_AGENT_DIR="/Library/LaunchAgents"
++else
++ LAUNCHD_AGENT_DIR="$with_launchd_agent_dir"
++fi
++
++
++
+ if test x$enable_console_owner_file = xno ; then
+ have_console_owner_file=no;
+ else
+@@ -25761,7 +26009,7 @@
+
+
+
+-ac_config_files="$ac_config_files Doxyfile dbus/dbus-arch-deps.h bus/system.conf bus/session.conf bus/messagebus bus/rc.messagebus bus/dbus-daemon.1 Makefile dbus/Makefile bus/Makefile tools/Makefile test/Makefile test/name-test/Makefile doc/Makefile dbus-1.pc test/data/valid-config-files/debug-allow-all.conf test/data/valid-config-files/debug-allow-all-sha1.conf test/data/valid-config-files-system/debug-allow-all-pass.conf test/data/valid-config-files-system/debug-allow-all-fail.conf test/data/valid-service-files/org.freedesktop.DBus.TestSuite.PrivServer.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoService.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfaultService.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteEchoSe
rvice.service test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteSegfaultService.service test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoExec.service test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoUser.service test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoService.service"
++ac_config_files="$ac_config_files Doxyfile dbus/dbus-arch-deps.h bus/system.conf bus/session.conf bus/messagebus bus/org.freedesktop.dbus-session.plist bus/rc.messagebus bus/dbus-daemon.1 Makefile dbus/Makefile bus/Makefile tools/Makefile test/Makefile test/name-test/Makefile doc/Makefile dbus-1.pc test/data/valid-config-files/debug-allow-all.conf test/data/valid-config-files/debug-allow-all-sha1.conf test/data/valid-config-files-system/debug-allow-all-pass.conf test/data/valid-config-files-system/debug-allow-all-fail.conf test/data/valid-service-files/org.freedesktop.DBus.TestSuite.PrivServer.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoService.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfaultService.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service test/data/valid-service-files-syst
em/org.freedesktop.DBus.TestSuiteEchoService.service test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteSegfaultService.service test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoExec.service test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoUser.service test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoService.service"
+
+ cat >confcache <<\_ACEOF
+ # This file is a shell script that caches the results of configure
+@@ -25952,6 +26200,13 @@
+ Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
++if test -z "${DBUS_ENABLE_LAUNCHD_TRUE}" && test -z "${DBUS_ENABLE_LAUNCHD_FALSE}"; then
++ { { $as_echo "$as_me:$LINENO: error: conditional \"DBUS_ENABLE_LAUNCHD\" was never defined.
++Usually this means the macro was only invoked conditionally." >&5
++$as_echo "$as_me: error: conditional \"DBUS_ENABLE_LAUNCHD\" was never defined.
++Usually this means the macro was only invoked conditionally." >&2;}
++ { (exit 1); exit 1; }; }
++fi
+ if test -z "${HAVE_CONSOLE_OWNER_FILE_TRUE}" && test -z "${HAVE_CONSOLE_OWNER_FILE_FALSE}"; then
+ { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_CONSOLE_OWNER_FILE\" was never defined.
+ Usually this means the macro was only invoked conditionally." >&5
+@@ -26861,6 +27116,7 @@
+ "bus/system.conf") CONFIG_FILES="$CONFIG_FILES bus/system.conf" ;;
+ "bus/session.conf") CONFIG_FILES="$CONFIG_FILES bus/session.conf" ;;
+ "bus/messagebus") CONFIG_FILES="$CONFIG_FILES bus/messagebus" ;;
++ "bus/org.freedesktop.dbus-session.plist") CONFIG_FILES="$CONFIG_FILES bus/org.freedesktop.dbus-session.plist" ;;
+ "bus/rc.messagebus") CONFIG_FILES="$CONFIG_FILES bus/rc.messagebus" ;;
+ "bus/dbus-daemon.1") CONFIG_FILES="$CONFIG_FILES bus/dbus-daemon.1" ;;
+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+@@ -28556,6 +28812,7 @@
+ Building Doxygen docs: ${enable_doxygen_docs}
+ Building XML docs: ${enable_xml_docs}
+ Building cache support: ${enable_userdb_cache}
++ Building launchd support: ${have_launchd}
+ Gettext libs (empty OK): ${INTLLIBS}
+ Using XML parser: ${with_xml}
+ Init scripts style: ${with_init_scripts}
+@@ -28570,6 +28827,7 @@
+ System bus user: ${DBUS_USER}
+ Session bus services dir: ${EXPANDED_DATADIR}/dbus-1/services
+ 'make check' socket dir: ${TEST_SOCKET_DIR}
++ launchd agent dir: ${LAUNCHD_AGENT_DIR}
+ "
+
+ if test x$enable_tests = xyes; then
+--- config.h.in 2009-01-07 01:31:10.000000000 +0100
++++ config.h.in 2009-01-10 17:47:14.000000000 +0100
+@@ -45,6 +45,9 @@
+ /* Disable public API sanity checking */
+ #undef DBUS_DISABLE_CHECKS
+
++/* Use launchd autolaunch */
++#undef DBUS_ENABLE_LAUNCHD
++
+ /* Build with caching of user data */
+ #undef DBUS_ENABLE_USERDB_CACHE
+
+@@ -251,6 +254,10 @@
+ /* Define to 1 if you have the `writev' function. */
+ #undef HAVE_WRITEV
+
++/* Define to the sub-directory in which libtool stores uninstalled libraries.
++ */
++#undef LT_OBJDIR
++
+ /* Define to 1 if your C compiler doesn't accept -c and -o together. */
+ #undef NO_MINUS_C_MINUS_O
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20090110/e94c4423/attachment-0001.html>
More information about the macports-changes
mailing list