diff options
author | Doug Goldstein <cardoe@gentoo.org> | 2006-11-19 17:32:33 +0000 |
---|---|---|
committer | Doug Goldstein <cardoe@gentoo.org> | 2006-11-19 17:32:33 +0000 |
commit | 08b8f8aa0125a174ea94f7dd9cc8a4c593add1b8 (patch) | |
tree | a05fc7c3f54b539203ed24d7e1fef55376a80ca3 /sys-apps/dbus/dbus-1.0.1-r1.ebuild | |
parent | Remove old versions (diff) | |
download | historical-08b8f8aa0125a174ea94f7dd9cc8a4c593add1b8.tar.gz historical-08b8f8aa0125a174ea94f7dd9cc8a4c593add1b8.tar.bz2 historical-08b8f8aa0125a174ea94f7dd9cc8a4c593add1b8.zip |
pthreads assertion fix from upstream
Package-Manager: portage-2.1.2_rc2
Diffstat (limited to 'sys-apps/dbus/dbus-1.0.1-r1.ebuild')
-rw-r--r-- | sys-apps/dbus/dbus-1.0.1-r1.ebuild | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/sys-apps/dbus/dbus-1.0.1-r1.ebuild b/sys-apps/dbus/dbus-1.0.1-r1.ebuild new file mode 100644 index 000000000000..266fbe8549b4 --- /dev/null +++ b/sys-apps/dbus/dbus-1.0.1-r1.ebuild @@ -0,0 +1,116 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/dbus/dbus-1.0.1-r1.ebuild,v 1.1 2006/11/19 17:32:33 cardoe Exp $ + +WANT_AUTOCONF=2.5 +inherit eutils multilib debug autotools + +DESCRIPTION="A message bus system, a simple way for applications to talk to each other" +HOMEPAGE="http://dbus.freedesktop.org/" +SRC_URI="http://dbus.freedesktop.org/releases/dbus/${P}.tar.gz" + +SLOT="0" +LICENSE="|| ( GPL-2 AFL-2.1 )" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="doc selinux X" + +RDEPEND="X? ( x11-libs/libXt x11-libs/libX11 ) + selinux? ( sys-libs/libselinux ) + >=dev-libs/expat-1.95.8 + !<sys-apps/dbus-0.91" + +DEPEND="${RDEPEND} + dev-util/pkgconfig + doc? ( app-doc/doxygen + app-text/xmlto )" + +src_unpack() { + unpack "${A}" + cd "${S}" + + # fix assertion failure with pthreads + epatch "${FILESDIR}"/${PN}-1.0.1-pthread-holder-fix.diff +} + +src_compile() { + local myconf="" + + hasq test ${FEATURES} && myconf="${myconf} --enable-tests=yes" + + econf \ + $(use_with X x) \ + $(use_enable kernel_linux dnotify) \ + $(use_enable kernel_FreeBSD kqueue) \ + $(use_enable selinux) \ + $(use_enable debug verbose-mode) \ + $(use_enable debug asserts) \ + --with-xml=expat \ + --with-system-pid-file=/var/run/dbus.pid \ + --with-system-socket=/var/run/dbus/system_bus_socket \ + --with-session-socket-dir=/tmp \ + --with-dbus-user=messagebus \ + --localstatedir=/var \ + $(use_enable doc doxygen-docs) \ + --disable-xml-docs \ + ${myconf} \ + || die "econf failed" + + # after the compile, it uses a selinuxfs interface to + # check if the SELinux policy has the right support + use selinux && addwrite /selinux/access + + emake || die "make failed" +} + +src_test() { + DBUS_VERBOSE=1 make check || die "make check failed" +} + +src_install() { + make DESTDIR="${D}" install || die "make install failed" + + # initscript + newinitd "${FILESDIR}"/dbus.init-1.0 dbus + + # dbus X session script (#77504) + # turns out to only work for GDM. has been merged into other desktop + # (kdm and such scripts) + exeinto /etc/X11/xinit/xinitrc.d/ + doexe "${FILESDIR}"/30-dbus + + # needs to exist for the system socket + keepdir /var/run/dbus + # needs to exist for machine id + 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" -1 messagebus || die "Problem adding messagebus user" +} + +pkg_postinst() { + elog "To start the D-Bus system-wide messagebus by default" + elog "you should add it to the default runlevel :" + elog "\`rc-update add dbus default\`" + elog + elog "If dbus is already installed and running," + elog "run etc-update and then run the following:" + elog "\`/etc/init.d/dbus reload\`" + elog "This will cause it to reload it's configs but" + elog "*not* run the newest version you just installed." + elog "You must tell it to restart for that to happen," + elog "however not all apps can handle a D-Bus restart." + elog + ewarn + ewarn "You MUST run 'revdep-rebuild' after emerging this package" + ewarn +} |