]> git.ipfire.org Git - thirdparty/dbus.git/commitdiff
2003-03-31 Havoc Pennington <hp@redhat.com>
authorHavoc Pennington <hp@redhat.com>
Mon, 31 Mar 2003 23:19:19 +0000 (23:19 +0000)
committerHavoc Pennington <hp@redhat.com>
Mon, 31 Mar 2003 23:19:19 +0000 (23:19 +0000)
* bus/Makefile.am (install-data-hook): create /var/run/dbus

* bus/messagebus.in: add init script for Red Hat /etc/init.d

* configure.in: add support for specifying a style of init script
to install

ChangeLog
bus/Makefile.am
bus/messagebus.in [new file with mode: 0755]
configure.in
dbus/dbus-internals.c

index b3ffa075ef9d6fbbe3ac870427f3af71c1cd582c..7d497688d35bf3e279e8c23da2a151a34e498a45 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2003-03-31  Havoc Pennington  <hp@redhat.com>
+
+       * bus/Makefile.am (install-data-hook): create /var/run/dbus
+
+       * bus/messagebus.in: add init script for Red Hat /etc/init.d
+
+       * configure.in: add support for specifying a style of init script
+       to install
+
 2003-03-31  Havoc Pennington  <hp@redhat.com>
 
         Fix some annoying DBusString API and fix all affected code.
index 7eca57eac2ba2f64ca50d23c916691d01c1b2ea1..1b09c5c87c5dde06bd8b12077ed694f47315bc19 100644 (file)
@@ -8,9 +8,13 @@ INCLUDES=-I$(top_srcdir) $(DBUS_BUS_CFLAGS)                            \
 
 EFENCE=
 
+CONFIG_IN_FILES=                               \
+       session.conf.in                         \
+       system.conf.in 
+
 config_DATA=                                   \
-       system.conf                             \
-       session.conf
+       session.conf                            \
+       system.conf
 
 bin_PROGRAMS=dbus-daemon-1
 
@@ -80,3 +84,24 @@ bus_test_LDADD=$(top_builddir)/dbus/libdbus-convenience.la $(DBUS_BUS_LIBS)
 ## mop up the gcov files
 clean-local:
        /bin/rm *.bb *.bbg *.da *.gcov || true
+
+install-data-hook:
+       $(mkinstalldirs) $(localstatedir)/run/dbus
+
+#### Init scripts fun
+SCRIPT_IN_FILES=messagebus.in
+
+## Red Hat start
+if DBUS_INIT_SCRIPTS_RED_HAT
+
+initddir=$(sysconfdir)/init.d
+
+initd_SCRIPTS=         \
+       messagebus
+
+endif
+ ## Red Hat end
+
+#### Extra dist 
+
+EXTRA_DIST=$(CONFIG_IN_FILES) $(SCRIPT_IN_FILES)
\ No newline at end of file
diff --git a/bus/messagebus.in b/bus/messagebus.in
new file mode 100755 (executable)
index 0000000..60c7077
--- /dev/null
@@ -0,0 +1,69 @@
+#!/bin/sh
+#
+# messagebus:   The D-BUS systemwide message bus
+#
+# chkconfig: 345 97 03
+# description:  This is a daemon which broadcasts notifications of system events \
+#               and other messages. See http://www.freedesktop.org/software/dbus/
+#
+# processname: dbus-daemon-1
+# pidfile: @EXPANDED_LOCALSTATEDIR@/messagebus.pid
+#
+
+# Sanity checks.
+[ -x @EXPANDED_BINDIR@/dbus-daemon-1 ] || exit 0
+
+# Source function library.
+. @EXPANDED_SYSCONFDIR@/rc.d/init.d/functions
+
+RETVAL=0
+
+start() {
+    echo -n $"Starting system message bus: "
+    daemon dbus-daemon-1 --system
+    RETVAL=$?
+    echo
+    [ $RETVAL -eq 0 ] && touch @EXPANDED_LOCALSTATEDIR@/lock/subsys/messagebus
+}
+
+stop() {
+    echo -n $"Stopping system message bus: "
+    killproc messagebus
+    RETVAL=$?
+    echo
+    if [ $RETVAL -eq 0 ]; then
+        rm -f @EXPANDED_LOCALSTATEDIR@/lock/subsys/messagebus
+    fi
+}
+
+# See how we were called.
+case "$1" in
+    start)
+        start
+        ;;
+    stop)
+        stop
+        ;;
+    status)
+        status messagebus
+        RETVAL=$?
+        ;;
+    restart)
+        stop
+        start
+        ;;
+    condrestart)
+        if [ -f @EXPANDED_LOCALSTATEDIR@/lock/subsys/messagebus ]; then
+            stop
+            start
+        fi
+        ;;
+    reload)
+        killproc messagebus -HUP
+        RETVAL=$?
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
+        ;;
+esac
+exit $RETVAL
index 3714ca16e83e8182fbf40e833bb16a8053a60851..46e18707b505f9c58c7682845aca52e817313446 100644 (file)
@@ -29,9 +29,10 @@ AC_ARG_ENABLE(tests,   [  --enable-tests   enable unit test code],enable_tests=$
 AC_ARG_ENABLE(ansi,    [  --enable-ansi    enable -ansi -pedantic gcc flags],enable_ansi=$enableval,enable_ansi=no)
 AC_ARG_ENABLE(verbose-mode, [  --enable-verbose-mode support verbose debug mode],enable_verbose_mode=$enableval,enable_verbose_mode=yes)
 AC_ARG_ENABLE(asserts, [  --enable-asserts include assertion checks],enable_asserts=$enableval,enable_asserts=yes)
-AC_ARG_ENABLE(gcov, [  --enable-gcov compile with coverage profiling instrumentation (gcc only)],enable_gcov=$enableval,enable_gcov=no)
+AC_ARG_ENABLE(gcov,    [  --enable-gcov compile with coverage profiling instrumentation (gcc only)],enable_gcov=$enableval,enable_gcov=no)
 
-AC_ARG_WITH(xml, [  --with-xml=[libxml/expat] XML library to use])
+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])
 
 dnl DBUS_BUILD_TESTS controls unit tests built in to .c files 
 dnl and also some stuff in the test/ subdir
@@ -376,10 +377,37 @@ EXPANDED_LOCALSTATEDIR=`eval echo $LOCALSTATEDIR_TMP`
 prefix=$old_prefix
 AC_SUBST(EXPANDED_LOCALSTATEDIR)
 
+SYSCONFDIR_TMP="$sysconfdir"
+old_prefix=$prefix
+prefix=$REAL_PREFIX
+EXPANDED_SYSCONFDIR=`eval echo $SYSCONFDIR_TMP`
+prefix=$old_prefix
+AC_SUBST(EXPANDED_SYSCONFDIR)
+
+BINDIR_TMP="$bindir"
+old_prefix=$prefix
+prefix=$REAL_PREFIX
+EXPANDED_BINDIR=`eval echo $BINDIR_TMP`
+prefix=$old_prefix
+AC_SUBST(EXPANDED_BINDIR)
+
+#### Sort out init scripts
+
+if test x$with_init_scripts = x; then
+        if test -f /etc/redhat-release || test -f $EXPANDED_SYSCONFDIR/redhat-release ; then
+                with_init_scripts=redhat
+        else
+                with_init_scripts=none
+        fi
+fi
+
+AM_CONDITIONAL(DBUS_INIT_SCRIPTS_RED_HAT, test x$with_init_scripts = xredhat)
+
 AC_OUTPUT([
 Doxyfile
 bus/system.conf
 bus/session.conf
+bus/messagebus
 Makefile
 dbus/Makefile
 glib/Makefile
@@ -410,6 +438,7 @@ echo "
         Building GLib bindings: ${have_glib}
         Using XML parser:       ${with_xml}
         System bus socket:      ${EXPANDED_LOCALSTATEDIR}/${DBUS_SYSTEM_SOCKET}
+        Init scripts style:     ${with_init_scripts}
 "
 
 if test x$enable_tests = xyes; then
index 6002f7abffae6a9fd7736812f1836ced2b5423ba..7c11b9f59c2b23c7ae77388fb34e4753aef580c6 100644 (file)
@@ -292,6 +292,7 @@ _dbus_type_to_string (int type)
     }
 }
 
+#ifdef DBUS_BUILD_TESTS
 static dbus_bool_t
 run_failing_each_malloc (int                    n_mallocs,
                          const char            *description,
@@ -372,5 +373,6 @@ _dbus_test_oom_handling (const char             *description,
 
   return TRUE;
 }
+#endif /* DBUS_BUILD_TESTS */
 
 /** @} */