aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/dbus
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2010-10-10 10:41:55 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2010-10-10 20:50:33 +0200
commit2221d6f56496522f58f8bf64061d1d33192b8ea5 (patch)
tree59904044604dd5f01a9bf56ee0f542fad2ff702f /recipes/dbus
parent1357f0894a5b22d3ce32d3abc0d59f459e5179fb (diff)
downloadopenembedded-2221d6f56496522f58f8bf64061d1d33192b8ea5.tar.gz
dbus: add recipe for 1.4.0
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'recipes/dbus')
-rw-r--r--recipes/dbus/dbus-1.4.0/add-configurable-reply-timeouts.patch48
-rw-r--r--recipes/dbus/dbus-1.4.0/dbus-1.init111
-rw-r--r--recipes/dbus/dbus-1.4.0/tmpdir.patch30
-rw-r--r--recipes/dbus/dbus_1.4.0.bb18
4 files changed, 207 insertions, 0 deletions
diff --git a/recipes/dbus/dbus-1.4.0/add-configurable-reply-timeouts.patch b/recipes/dbus/dbus-1.4.0/add-configurable-reply-timeouts.patch
new file mode 100644
index 0000000000..9cca38ddc8
--- /dev/null
+++ b/recipes/dbus/dbus-1.4.0/add-configurable-reply-timeouts.patch
@@ -0,0 +1,48 @@
+Index: dbus-1.3.1/configure.in
+===================================================================
+--- dbus-1.3.1.orig/configure.in
++++ dbus-1.3.1/configure.in
+@@ -137,6 +137,7 @@
+ AC_ARG_WITH(console-owner-file, AS_HELP_STRING([--with-console-owner-file=[filename]],[file whose owner determines current console owner]))
+ AC_ARG_WITH(dbus_user, AS_HELP_STRING([--with-dbus-user=<user>],[User for running the DBUS daemon (messagebus)]))
+ AC_ARG_WITH(dbus_daemondir, AS_HELP_STRING([--with-dbus-daemondir=[dirname]],[Directory for installing the DBUS daemon]))
++AC_ARG_WITH(dbus_default_reply_timeout, AS_HELP_STRING([--with-dbus-default-reply-timeout=[milliseconds]],[Default reply timeout for DBus method calls]))
+
+ dnl DBUS_BUILD_TESTS controls unit tests built in to .c files
+ dnl and also some stuff in the test/ subdir
+@@ -984,6 +985,13 @@
+ fi
+ fi
+
++if test -z "$with_dbus_default_reply_timeout" ; then
++ DBUS_DEFAULT_REPLY_TIMEOUT=25000
++else
++ DBUS_DEFAULT_REPLY_TIMEOUT=$with_dbus_default_reply_timeout
++fi
++AC_DEFINE_UNQUOTED(_DBUS_DEFAULT_TIMEOUT_VALUE,$DBUS_DEFAULT_REPLY_TIMEOUT,[default timeout value for dbus calls])
++
+ #### Set up final flags
+ DBUS_CLIENT_CFLAGS=
+ DBUS_CLIENT_LIBS="$THREAD_LIBS $NETWORK_libs"
+@@ -1625,6 +1633,7 @@
+ Gettext libs (empty OK): ${INTLLIBS}
+ Using XML parser: ${with_xml}
+ Init scripts style: ${with_init_scripts}
++ Default reply timeout: ${DBUS_DEFAULT_REPLY_TIMEOUT}
+ Abstract socket names: ${ac_cv_have_abstract_sockets}
+ System bus socket: ${DBUS_SYSTEM_SOCKET}
+ System bus address: ${DBUS_SYSTEM_BUS_DEFAULT_ADDRESS}
+Index: dbus-1.3.1/dbus/dbus-connection-internal.h
+===================================================================
+--- dbus-1.3.1.orig/dbus/dbus-connection-internal.h
++++ dbus-1.3.1/dbus/dbus-connection-internal.h
+@@ -41,9 +41,6 @@
+ DBUS_ITERATION_BLOCK = 1 << 2 /**< Block if nothing to do. */
+ } DBusIterationFlags;
+
+-/** default timeout value when waiting for a message reply, 25 seconds */
+-#define _DBUS_DEFAULT_TIMEOUT_VALUE (25 * 1000)
+-
+ void _dbus_connection_lock (DBusConnection *connection);
+ void _dbus_connection_unlock (DBusConnection *connection);
+ DBusConnection * _dbus_connection_ref_unlocked (DBusConnection *connection);
diff --git a/recipes/dbus/dbus-1.4.0/dbus-1.init b/recipes/dbus/dbus-1.4.0/dbus-1.init
new file mode 100644
index 0000000000..a70e7a2373
--- /dev/null
+++ b/recipes/dbus/dbus-1.4.0/dbus-1.init
@@ -0,0 +1,111 @@
+#! /bin/sh
+# -*- coding: utf-8 -*-
+# Debian init.d script for D-BUS
+# Copyright © 2003 Colin Walters <walters@debian.org>
+# Copyright 2008 OE Team
+
+set -e
+
+DAEMON=/usr/bin/dbus-daemon
+NAME=dbus
+DAEMONUSER=messagebus
+RUNDIR=/var/run/dbus
+PIDFILE=/var/run/dbus/pid
+UUIDDIR=/var/lib/dbus
+DESC="system message bus"
+EVENTDIR=/etc/dbus-1/event.d
+
+test -x $DAEMON || exit 0
+
+# Source defaults file; edit that file to configure this script.
+ENABLED=1
+PARAMS=""
+if [ -e /etc/default/dbus ]; then
+ . /etc/default/dbus
+fi
+
+test "$ENABLED" != "0" || exit 0
+
+start_it_up()
+{
+ if [ ! -d $RUNDIR ]; then
+ mkdir -p $RUNDIR
+ chown $DAEMONUSER $RUNDIR
+ chgrp $DAEMONUSER $RUNDIR
+ fi
+ if [ -e $PIDFILE ]; then
+ PIDDIR=/proc/$(cat $PIDFILE)
+ if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then
+ echo "$DESC already started; not starting."
+ else
+ echo "Removing stale PID file $PIDFILE."
+ rm -f $PIDFILE
+ fi
+ fi
+
+ if [ ! -d $UUIDDIR ]; then
+ mkdir -p $UUIDDIR
+ chown $DAEMONUSER $UUIDDIR
+ chgrp $DAEMONUSER $UUIDDIR
+ fi
+
+ dbus-uuidgen --ensure
+
+ echo -n "Starting $DESC: "
+ start-stop-daemon --start --pidfile $PIDFILE \
+ --user $DAEMONUSER --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ if [ -d $EVENTDIR ]; then
+ run-parts --arg=start $EVENTDIR
+ fi
+}
+
+shut_it_down()
+{
+ if [ -d $EVENTDIR ]; then
+ # TODO: --reverse when busybox supports it
+ run-parts --arg=stop $EVENTDIR
+ fi
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop --oknodo --pidfile $PIDFILE \
+ --user $DAEMONUSER
+ # We no longer include these arguments so that start-stop-daemon
+ # can do its job even given that we may have been upgraded.
+ # We rely on the pidfile being sanely managed
+ # --exec $DAEMON -- --system $PARAMS
+ echo "$NAME."
+ rm -f $PIDFILE
+}
+
+reload_it()
+{
+ echo -n "Reloading $DESC config: "
+ dbus-send --print-reply --system --type=method_call \
+ --dest=org.freedesktop.DBus \
+ / org.freedesktop.DBus.ReloadConfig > /dev/null
+ # hopefully this is enough time for dbus to reload it's config file.
+ echo "done."
+}
+
+case "$1" in
+ start)
+ start_it_up
+ ;;
+ stop)
+ shut_it_down
+ ;;
+ reload|force-reload)
+ reload_it
+ ;;
+ restart)
+ shut_it_down
+ sleep 1
+ start_it_up
+ ;;
+ *)
+ echo "Usage: /etc/init.d/$NAME {start|stop|restart|reload|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/recipes/dbus/dbus-1.4.0/tmpdir.patch b/recipes/dbus/dbus-1.4.0/tmpdir.patch
new file mode 100644
index 0000000000..838b903f0a
--- /dev/null
+++ b/recipes/dbus/dbus-1.4.0/tmpdir.patch
@@ -0,0 +1,30 @@
+--- dbus-0.22/configure.in.orig 2004-08-13 00:57:16.000000000 +0200
++++ dbus-0.22/configure.in 2004-12-30 21:15:57.000000000 +0100
+@@ -1047,15 +1048,18 @@
+ AC_SUBST(ABSOLUTE_TOP_BUILDDIR)
+
+ #### Find socket directories
+-if ! test -z "$TMPDIR" ; then
+- DEFAULT_SOCKET_DIR=$TMPDIR
+-elif ! test -z "$TEMP" ; then
+- DEFAULT_SOCKET_DIR=$TEMP
+-elif ! test -z "$TMP" ; then
+- DEFAULT_SOCKET_DIR=$TMP
+-else
+- DEFAULT_SOCKET_DIR=/tmp
+-fi
++#if ! test -z "$TMPDIR" ; then
++# DEFAULT_SOCKET_DIR=$TMPDIR
++#elif ! test -z "$TEMP" ; then
++# DEFAULT_SOCKET_DIR=$TEMP
++#elif ! test -z "$TMP" ; then
++# DEFAULT_SOCKET_DIR=$TMP
++#else
++# DEFAULT_SOCKET_DIR=/tmp
++#fi
++
++# checks disabled to avoid expanding this at build time
++DEFAULT_SOCKET_DIR=/tmp
+
+ if ! test -z "$with_test_socket_dir" ; then
+ TEST_SOCKET_DIR="$with_test_socket_dir"
diff --git a/recipes/dbus/dbus_1.4.0.bb b/recipes/dbus/dbus_1.4.0.bb
new file mode 100644
index 0000000000..2c4943b4f0
--- /dev/null
+++ b/recipes/dbus/dbus_1.4.0.bb
@@ -0,0 +1,18 @@
+include dbus.inc
+PR = "${INC_PR}.0"
+
+BBCLASSEXTEND = "native"
+
+SRC_URI = "\
+ http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \
+ \
+ file://tmpdir.patch \
+ file://add-configurable-reply-timeouts.patch \
+ file://dbus-1.init \
+"
+
+# This needs more testing before pushing as default dbus
+DEFAULT_PREFERENCE = "-1"
+
+SRC_URI[md5sum] = "f59618b18d2fb2bd1fce9e1c5a2a3282"
+SRC_URI[sha256sum] = "c96d2f86d40e158e2bf405925a0a42cce0533a8466098e2f2238aa1614926652"