# ChangeLog for sys-apps/dbus
# Copyright 2000-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/dbus/ChangeLog,v 1.55 2005/11/05 15:06:08 geoman Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/dbus/ChangeLog,v 1.56 2005/11/07 02:56:35 steev Exp $
+
+*dbus-0.50 (07 Nov 2005)
+
+ 07 Nov 2005; Steev Klimaszewski <steev@gentoo.org>
+ +files/dbus-dnotify_configure-01.diff,
+ +files/dbus-dnotify_watchdirs-01.diff, +dbus-0.50.ebuild:
+ Version bump. Add patches to fix dnotify support.
05 Nov 2005; Stephen P. Becker <geoman@gentoo.org> dbus-0.36.2.ebuild:
added ~mips keyword
--- /dev/null
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/dbus/dbus-0.50.ebuild,v 1.1 2005/11/07 02:56:35 steev Exp $
+
+inherit eutils mono python multilib autotools debug
+
+IUSE="X gtk qt python mono doc xml2"
+
+DESCRIPTION="A message bus system, a simple way for applications to talk to eachother"
+HOMEPAGE="http://dbus.freedesktop.org/"
+SRC_URI="http://dbus.freedesktop.org/releases/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="|| ( GPL-2 AFL-2.1 )"
+KEYWORDS="~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND=">=dev-libs/glib-2.6
+ xml2? ( dev-libs/libxml2 )
+ !xml2? ( dev-libs/expat )
+ X? ( || (
+ (
+ x11-libs/libXt
+ x11-libs/libX11
+ )
+ virtual/x11 ) )
+ gtk? ( >=x11-libs/gtk+-2 )
+ python? ( >=dev-lang/python-2.4
+ >=dev-python/pyrex-0.9.3-r2 )
+ qt? ( =x11-libs/qt-3* )
+ mono? ( >=dev-lang/mono-0.95 )"
+
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ doc? ( app-doc/doxygen
+ app-text/xmlto )
+ doc? ( mono? ( >=dev-util/monodoc-0.16 ) )"
+
+# needs gcj, we have no neat way of knowing if it was enabled
+# Can we just depend on the java virtual and use javac?
+# java? ( sys-devel/gcc )
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+
+ #add missing include (#78617)
+ epatch ${FILESDIR}/${PN}-0.23-fd_set.patch
+ # Fix dnotify support
+ epatch ${FILESDIR}/${PN}-dnotify_configure-01.diff
+ epatch ${FILESDIR}/${PN}-dnotify_watchdirs-01.diff
+ eautoreconf
+}
+
+src_compile() {
+ local myconf
+
+ # Choose which xml library to use
+ if use xml2; then
+ myconf="--with-xml=libxml"
+ else
+ myconf="--with-xml=expat"
+ fi
+
+ # Only enable mono-docs if both mono and doc is defined
+ if use mono; then
+ myconf="${myconf} `use_enable doc mono-docs`"
+ else
+ myconf="${myconf} --disable-mono-docs"
+ fi
+
+ # NOTE: I have disabled the xml docs because they are rather pointless
+ econf \
+ `use_with X x` \
+ `use_enable gtk` \
+ `use_enable qt` \
+ `use_enable python` \
+ `use_enable mono` \
+ --enable-glib \
+ --enable-dnotify \
+ --enable-verbose-mode \
+ --enable-checks \
+ --enable-asserts \
+ --with-system-pid-file=/var/run/dbus.pid \
+ --with-system-socket=/var/lib/dbus/system_bus_socket \
+ --with-session-socket-dir=/tmp \
+ --with-dbus-user=messagebus \
+ `use_enable doc doxygen-docs` \
+ --disable-xml-docs \
+ ${myconf} \
+ || die "econf failed"
+
+ # Don't build the mono examples, they require gtk-sharp
+ touch ${S}/mono/example/{bus-listener,echo-{server,client}}.exe
+
+ # this gets around a lib64 sandbox bug. note that this addpredict is
+ # added automatically by sandbox.c for lib.
+ addpredict /usr/lib64/python2.4/
+ addpredict /usr/lib64/python2.3/
+ addpredict /usr/lib64/python2.2/
+ addpredict /usr/lib64/python2.1/
+
+ emake
+}
+
+src_install() {
+ make DESTDIR=${D} install || die "make install failed"
+
+ # Backwards compatibility for old stuff
+ # we can remove this when dbi (plural of dbus)
+ # <0.30 aren't in the tree
+ dosym /usr/bin/dbus-daemon /usr/bin/dbus-daemon-1
+
+ # initscript
+ exeinto /etc/init.d/
+ doexe ${FILESDIR}/dbus
+
+ # dbus X session script (#77504)
+ # FIXME : turns out to only work for GDM, better solution needed
+ exeinto /etc/X11/xinit/xinitrc.d/
+ doexe ${FILESDIR}/30-dbus
+
+ # needs to exist for the system socket
+ keepdir /var/lib/dbus
+
+ keepdir /usr/lib/dbus-1.0/services
+ keepdir /usr/share/dbus-1/services
+
+ dodoc AUTHORS ChangeLog HACKING NEWS README doc/TODO
+ if use doc; then
+ dohtml doc/*html
+ fi
+}
+
+pkg_preinst() {
+ enewgroup messagebus || die "Problem adding messagebus group"
+ enewuser messagebus -1 "-1" /dev/null messagebus || die "Problem adding messagebus user"
+}
+
+pkg_postinst() {
+ einfo "To start the DBUS system-wide messagebus by default"
+ einfo "you should add it to the default runlevel :"
+ einfo "\`rc-update add dbus default\`"
+}
--- /dev/null
+Index: configure.in
+===================================================================
+RCS file: /cvs/dbus/dbus/configure.in,v
+retrieving revision 1.137
+diff -u -r1.137 configure.in
+--- configure.in 20 Oct 2005 14:56:24 -0000 1.137
++++ configure.in 2 Nov 2005 14:06:29 -0000
+@@ -64,6 +64,7 @@
+ AC_ARG_ENABLE(mono_docs, [ --enable-mono-docs build mono docs],enable_mono_docs=$enableval,enable_mono_docs=no)
+ AC_ARG_ENABLE(python, [ --enable-python build python bindings],enable_python=$enableval,enable_python=auto)
+ AC_ARG_ENABLE(selinux, [ --enable-selinux build with SELinux support],enable_selinux=$enableval,enable_selinux=auto)
++AC_ARG_ENABLE(dnotify, [ --enable-dnotify build with dnotify support (linux only)],enable_dnotify=$enableval,enable_dnotify=auto)
+
+ AC_ARG_WITH(xml, [ --with-xml=[libxml/expat] XML library to use])
+ AC_ARG_WITH(init-scripts, [ --with-init-scripts=[redhat] Style of init scripts to install])
+@@ -829,21 +830,21 @@
+ fi
+
+ # dnotify checks
+-if test x$target_os = xlinux-gnu; then
+- AC_ARG_ENABLE(dnotify,
+- [ --disable-dnotify Disable using dnotify on Linux],
+- [case "${enableval}" in
+- yes) dnotify=false ;;
+- no) dnotify=true ;;
+- *) AC_MSG_ERROR(bad value ${enableval} for --disable-dnotify) ;;
+- esac],[dnotify=true])
++if test x$enable_dnotify = xno ; then
++ have_dnotify=no;
++else
++ if test x$target_os = xlinux-gnu -o x$target_os = xlinux; then
++ have_dnotify=yes;
++ else
++ have_dnotify=no;
++ fi
+ fi
++
+ dnl check if dnotify backend is enabled
+-if test x$dnotify = xtrue; then
++if test x$have_dnotify = xyes; then
+ AC_DEFINE(DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX,1,[Use dnotify on Linux])
+ fi
+
+-
+ #### Set up final flags
+ DBUS_CLIENT_CFLAGS=
+ DBUS_CLIENT_LIBS=
+@@ -1421,6 +1422,7 @@
+ Building GLib bindings: ${have_glib}
+ Building Python bindings: ${have_python}
+ Building SELinux support: ${have_selinux}
++ Building dnotify support: ${have_dnotify}
+ Building Mono bindings: ${enable_mono}
+ Building Mono docs: ${enable_mono_docs}
+ Building GTK+ tools: ${have_gtk}
+
--- /dev/null
+Index: bus/bus.c
+===================================================================
+RCS file: /cvs/dbus/dbus/bus/bus.c,v
+retrieving revision 1.64
+diff -u -r1.64 bus.c
+--- bus/bus.c 16 Jun 2005 06:05:09 -0000 1.64
++++ bus/bus.c 2 Nov 2005 14:06:30 -0000
+@@ -479,15 +479,11 @@
+ goto failed;
+ }
+
+- /* Drop existing conf-dir watches (if applicable) and watch all conf directories */
++ /* Drop existing conf-dir watches (if applicable) */
+
+ if (is_reload)
+ bus_drop_all_directory_watches ();
+
+- _dbus_list_foreach (bus_config_parser_get_conf_dirs (parser),
+- (DBusForeachFunction) bus_watch_directory,
+- NULL);
+-
+ _DBUS_ASSERT_ERROR_IS_CLEAR (error);
+ retval = TRUE;
+
+@@ -497,9 +493,9 @@
+ }
+
+ static dbus_bool_t
+-process_config_postinit (BusContext *context,
++process_config_postinit (BusContext *context,
+ BusConfigParser *parser,
+- DBusError *error)
++ DBusError *error)
+ {
+ DBusHashTable *service_context_table;
+
+@@ -512,6 +508,12 @@
+ }
+
+ _dbus_hash_table_unref (service_context_table);
++
++ /* Watch all conf directories */
++ _dbus_list_foreach (bus_config_parser_get_conf_dirs (parser),
++ (DBusForeachFunction) bus_watch_directory,
++ NULL);
++
+ return TRUE;
+ }
+
--- /dev/null
+MD5 1addd5b600a8a4550766005d1f59401b dbus-0.50.tar.gz 1610305