From 8e25448fb01b6fa6ea3a86f9327f080cd753dfbc Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 5 Sep 2008 11:37:39 +0000 Subject: dbus: enable x support and put dbus-launch into new package dbus-x11 * Enable x support only add rdepends to dbus-launch. Make it a seperate package so other packages like dbus does not rdepend on libx11. * This solves the problem that if you restart X for multiple times, there will be many dbus-daemon left in the system. That's because --exit-with-session in Xsession will not be useful without enabling x support. * Follow debian, change the name from dbus-1 to dbus and conflict/replace the original dbus-1. * oe-stylize dbus.inc --- packages/dbus/dbus.inc | 82 ++++++++++++++++++++++----------------------- packages/dbus/dbus_1.2.1.bb | 2 +- 2 files changed, 41 insertions(+), 43 deletions(-) (limited to 'packages/dbus') diff --git a/packages/dbus/dbus.inc b/packages/dbus/dbus.inc index 26a0e04585..5605353886 100644 --- a/packages/dbus/dbus.inc +++ b/packages/dbus/dbus.inc @@ -2,7 +2,12 @@ DESCRIPTION = "A message bus system for inter-process communication" HOMEPAGE = "http://dbus.freedesktop.org" SECTION = "base" LICENSE = "GPL" -DEPENDS = "expat glib-2.0 virtual/libintl" +DEPENDS = "expat glib-2.0 virtual/libintl libsm libice libx11" +RDEPENDS_${PN}-x11 = "${PN}" +RRECOMMENDS_${PN}-lib = "${PN}" +RRECOMMENDS_${PN} = "${PN}-x11" +RCONFLICTS_${PN} = "dbus-1" +RREPLACES_${PN} = "dbus-1" SRC_URI = "\ http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \ @@ -11,23 +16,43 @@ SRC_URI = "\ file://fix-install-daemon.patch;patch=1 \ file://dbus-1.init \ " + S = "${WORKDIR}/dbus-${PV}" inherit autotools pkgconfig update-rc.d gettext -INITSCRIPT_NAME = "dbus-1" -INITSCRIPT_PARAMS = "defaults" - -CONFFILES_${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session.conf" +EXTRA_OECONF = "\ + --disable-qt \ + --disable-qt3 \ + --disable-gtk \ + --disable-tests \ + --disable-checks \ + --disable-xml-docs \ + --disable-doxygen-docs \ + --with-xml=expat \ + --with-x \ +" -DEBIANNAME_${PN} = "dbus-1" +do_install_append() { + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/dbus-1.init ${D}${sysconfdir}/init.d/dbus-1 + # the stock install seems to install the libtool wrapper script, so we have to copy this manually :M: + if [ -e bus/.libs/dbus-daemon-launch-helper ]; then + install -m 0755 bus/.libs/dbus-daemon-launch-helper ${D}${libexecdir}/ + fi +} +do_stage() { + oe_libinstall -so -C dbus libdbus-1 ${STAGING_LIBDIR} + autotools_stage_includes + mkdir -p ${STAGING_LIBDIR}/dbus-1.0/include/dbus/ + install -m 0644 dbus/dbus-arch-deps.h ${STAGING_LIBDIR}/dbus-1.0/include/dbus/ +} -PACKAGES =+ "${PN}-lib" +PACKAGES =+ "${PN}-lib ${PN}-x11" FILES_${PN} = "\ ${bindir}/dbus-daemon* \ ${bindir}/dbus-uuidgen \ -${bindir}/dbus-launch \ ${bindir}/dbus-cleanup-sockets \ ${bindir}/dbus-send \ ${bindir}/dbus-monitor \ @@ -37,54 +62,27 @@ ${datadir}/dbus-1/services \ ${datadir}/dbus-1/system-services \ " FILES_${PN}-lib = "${libdir}/lib*.so.*" -RRECOMMENDS_${PN}-lib = "${PN}" +FILES_${PN}-x11 = "\ +${bindir}/dbus-launch \ +" FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-glib-tool ${libdir}/" -pkg_postinst_dbus() { +pkg_postinst_${PN}() { #!/bin/sh - # can't do adduser stuff offline if [ "x$D" != "x" ]; then exit 1 fi - MESSAGEUSER=messagebus MESSAGEHOME=/var/run/dbus - mkdir -p $MESSAGEHOME || true chgrp "$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || addgroup "$MESSAGEUSER" chown "$MESSAGEUSER"."$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || adduser --system --home "$MESSAGEHOME" --no-create-home --disabled-password --ingroup "$MESSAGEUSER" "$MESSAGEUSER" - grep -q netdev: /etc/group || addgroup netdev chmod u+s /usr/libexec/dbus-daemon-launch-helper } -EXTRA_OECONF = "\ - --disable-qt \ - --disable-qt3 \ - --disable-gtk \ - --disable-tests \ - --disable-checks \ - --disable-xml-docs \ - --disable-doxygen-docs \ - --with-xml=expat \ - --without-x \ -" - -do_stage() { - oe_libinstall -so -C dbus libdbus-1 ${STAGING_LIBDIR} - - autotools_stage_includes - - mkdir -p ${STAGING_LIBDIR}/dbus-1.0/include/dbus/ - install -m 0644 dbus/dbus-arch-deps.h ${STAGING_LIBDIR}/dbus-1.0/include/dbus/ -} +CONFFILES_${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session.conf" -do_install_append() { - install -d ${D}${sysconfdir}/init.d - install -m 0755 ${WORKDIR}/dbus-1.init ${D}${sysconfdir}/init.d/dbus-1 - # the stock install seems to install the libtool wrapper script, so we have to copy this manually :M: - if [ -e bus/.libs/dbus-daemon-launch-helper ]; then - install -m 0755 bus/.libs/dbus-daemon-launch-helper ${D}${libexecdir}/ - fi -} +INITSCRIPT_NAME = "dbus-1" +INITSCRIPT_PARAMS = "defaults" diff --git a/packages/dbus/dbus_1.2.1.bb b/packages/dbus/dbus_1.2.1.bb index da7cd43d7f..8a4aa6d61c 100644 --- a/packages/dbus/dbus_1.2.1.bb +++ b/packages/dbus/dbus_1.2.1.bb @@ -1,3 +1,3 @@ include dbus.inc -PR = "r3" +PR = "r4" -- cgit v1.2.3