2024-09-09 08:52:07 +00:00
SUMMARY = " D-Bus message bus "
DESCRIPTION = " D-Bus is a message bus system, a simple way for applications to talk to one another. In addition to interprocess communication, D-Bus helps coordinate process lifecycle; it makes it simple and reliable to code a \" single instance \" application or daemon, and to launch applications and daemons on demand when their services are needed. "
HOMEPAGE = " http://dbus.freedesktop.org "
SECTION = " base "
LICENSE = " AFL-2 | GPLv2+ "
LIC_FILES_CHKSUM = " file://COPYING;md5=10dded3b58148f3f1fd804b26354af3e \
2024-09-09 08:57:42 +00:00
file :// dbus / dbus . h ; beginline = 6 ; endline = 20 ; md5 = 7755 c9d7abccd5dbd25a6a974538bb3c "
DEPENDS = " expat virtual/libintl "
RDEPENDS_dbus_class - native = " "
RDEPENDS_dbus_class - nativesdk = " "
PACKAGES += " $ { @bb.utils.contains('DISTRO_FEATURES', 'ptest', ' ${ PN } -ptest', '', d)} "
ALLOW_EMPTY_dbus - ptest = " 1 "
RDEPENDS_dbus - ptest_class - target = " dbus-test-ptest "
2024-09-09 08:52:07 +00:00
SRC_URI = " http://dbus.freedesktop.org/releases/dbus/dbus- ${ PV } .tar.gz \
2024-09-09 08:57:42 +00:00
file :// tmpdir . patch \
file :// dbus - 1. init \
file :// os - test . patch \
file :// clear - guid_from_server - if - send_negotiate_unix_f . patch \
"
2024-09-09 08:52:07 +00:00
inherit useradd autotools pkgconfig gettext update - rc . d
INITSCRIPT_NAME = " dbus-1 "
INITSCRIPT_PARAMS = " start 02 5 3 2 . stop 20 0 1 6 . "
2024-09-09 08:57:42 +00:00
python __anonymous () {
if not bb . utils . contains ( 'DISTRO_FEATURES' , 'sysvinit' , True , False , d ) :
d . setVar ( " INHIBIT_UPDATERCD_BBCLASS " , " 1 " )
}
2024-09-09 08:52:07 +00:00
USERADD_PACKAGES = " ${ PN } "
GROUPADD_PARAM_ $ { PN } = " -r netdev "
USERADD_PARAM_ $ { PN } = " --system --home ${ localstatedir } /lib/dbus \
-- no - create - home -- shell / bin / false \
-- user - group messagebus "
CONFFILES_ $ { PN } = " ${ sysconfdir } /dbus-1/system.conf ${ sysconfdir } /dbus-1/session.conf "
DEBIANNAME_ $ { PN } = " dbus-1 "
2024-09-09 08:57:42 +00:00
PACKAGES =+ " ${ PN } -lib "
2024-09-09 08:52:07 +00:00
2024-09-09 08:57:42 +00:00
OLDPKGNAME = " dbus-x11 "
OLDPKGNAME_class - nativesdk = " "
2024-09-09 08:52:07 +00:00
2024-09-09 08:57:42 +00:00
# for compatibility
RPROVIDES_ $ { PN } = " ${ OLDPKGNAME } "
RREPLACES_ $ { PN } += " ${ OLDPKGNAME } "
2024-09-09 08:52:07 +00:00
FILES_ $ { PN } = " ${ bindir } /dbus-daemon* \
$ { bindir } / dbus - uuidgen \
$ { bindir } / dbus - cleanup - sockets \
$ { bindir } / dbus - send \
$ { bindir } / dbus - monitor \
2024-09-09 08:57:42 +00:00
$ { bindir } / dbus - launch \
$ { bindir } / dbus - run - session \
2024-09-09 08:52:07 +00:00
$ { libexecdir } / dbus * \
$ { sysconfdir } \
$ { localstatedir } \
$ { datadir } / dbus - 1 / services \
2024-09-09 08:57:42 +00:00
$ { datadir } / dbus - 1 / system - services \
$ { systemd_unitdir } / system / "
2024-09-09 08:52:07 +00:00
FILES_ $ { PN } - lib = " ${ libdir } /lib*.so.* "
RRECOMMENDS_ $ { PN } - lib = " ${ PN } "
FILES_ $ { PN } - dev += " ${ libdir } /dbus-1.0/include ${ bindir } /dbus-glib-tool "
pkg_postinst_dbus () {
2024-09-09 08:57:42 +00:00
# If both systemd and sysvinit are enabled, mask the dbus-1 init script
if $ { @ bb . utils . contains ( 'DISTRO_FEATURES' , 'systemd sysvinit' , 'true' , 'false' , d )}; then
if [ - n " $D " ]; then
OPTS = " --root= $D "
fi
systemctl $OPTS mask dbus - 1. service
fi
2024-09-09 08:52:07 +00:00
if [ - z " $D " ] && [ - e / etc / init . d / populate - volatile . sh ] ; then
/ etc / init . d / populate - volatile . sh update
fi
}
EXTRA_OECONF = " --disable-tests \
-- disable - xml - docs \
-- disable - doxygen - docs \
-- disable - libaudit \
2024-09-09 08:57:42 +00:00
-- disable - systemd \
-- without - dbus - glib "
EXTRA_OECONF_append_class - native = " --disable-selinux "
PACKAGECONFIG ? ? = " $ { @bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
$ { @ bb . utils . contains ( 'DISTRO_FEATURES' , 'x11' , 'x11' , '' , d )} "
PACKAGECONFIG_class - native = " "
PACKAGECONFIG_class - nativesdk = " "
# Would like to --enable-systemd but that's a circular build-dependency between
# systemd<->dbus
PACKAGECONFIG [ systemd ] = " --with-systemdsystemunitdir= ${ systemd_unitdir } /system/,--without-systemdsystemunitdir "
PACKAGECONFIG [ x11 ] = " --with-x --enable-x11-autolaunch,--without-x --disable-x11-autolaunch, virtual/libx11 libsm "
2024-09-09 08:52:07 +00:00
do_install () {
autotools_do_install
2024-09-09 08:57:42 +00:00
if $ { @ bb . utils . contains ( 'DISTRO_FEATURES' , 'sysvinit' , 'true' , 'false' , d )}; then
install - d $ { D } $ { sysconfdir } / init . d
sed 's:@bindir@:${bindir}:' < $ { WORKDIR } / dbus - 1. init > $ { WORKDIR } / dbus - 1. init . sh
install - m 0755 $ { WORKDIR } / dbus - 1. init . sh $ { D } $ { sysconfdir } / init . d / dbus - 1
fi
if $ { @ bb . utils . contains ( 'DISTRO_FEATURES' , 'systemd' , 'true' , 'false' , d )}; then
for i in dbus . target . wants sockets . target . wants multi - user . target . wants ; do \
install - d $ { D } $ { systemd_unitdir } / system / $i ; done
install - m 0644 $ { B } / bus / dbus . service $ { B } / bus / dbus . socket $ { D } $ { systemd_unitdir } / system /
cd $ { D } $ { systemd_unitdir } / system / dbus . target . wants /
ln - fs ../ dbus . socket $ { D } $ { systemd_unitdir } / system / dbus . target . wants / dbus . socket
ln - fs ../ dbus . socket $ { D } $ { systemd_unitdir } / system / sockets . target . wants / dbus . socket
ln - fs ../ dbus . service $ { D } $ { systemd_unitdir } / system / multi - user . target . wants / dbus . service
fi
2024-09-09 08:52:07 +00:00
install - d $ { D } $ { sysconfdir } / default / volatiles
echo " d messagebus messagebus 0755 ${ localstatedir } /run/dbus none " \
> $ { D } $ { sysconfdir } / default / volatiles / 99_ dbus
2024-09-09 08:57:42 +00:00
mkdir - p $ { D } $ { localstatedir } / lib / dbus
2024-09-09 08:52:07 +00:00
2024-09-09 08:57:42 +00:00
chown messagebus : messagebus $ { D } $ { localstatedir } / lib / dbus
2024-09-09 08:52:07 +00:00
chown root : messagebus $ { D } $ { libexecdir } / dbus - daemon - launch - helper
chmod 4755 $ { D } $ { libexecdir } / dbus - daemon - launch - helper
# Remove Red Hat initscript
rm - rf $ { D } $ { sysconfdir } / rc . d
2024-09-09 08:57:42 +00:00
# Remove empty testexec directory as we don't build tests
rm - rf $ { D } $ { libdir } / dbus - 1.0 / test
# Remove /var/run as it is created on startup
rm - rf $ { D } $ { localstatedir } / run
2024-09-09 08:52:07 +00:00
}
2024-09-09 08:57:42 +00:00
do_install_class - native () {
2024-09-09 08:52:07 +00:00
autotools_do_install
# for dbus-glib-native introspection generation
install - d $ { STAGING_DATADIR_NATIVE } / dbus /
# N.B. is below install actually required?
install - m 0644 bus / session . conf $ { STAGING_DATADIR_NATIVE } / dbus / session . conf
2024-09-09 08:57:42 +00:00
2024-09-09 08:52:07 +00:00
# dbus-glib-native and dbus-glib need this xml file
./ bus / dbus - daemon -- introspect > $ { STAGING_DATADIR_NATIVE } / dbus / dbus - bus - introspect . xml
2024-09-09 08:57:42 +00:00
# dbus-launch has no X support so lets not install it in case the host
# has a more featured and useful version
rm - f $ { D } $ { bindir } / dbus - launch
2024-09-09 08:52:07 +00:00
}
2024-09-09 08:57:42 +00:00
do_install_class - nativesdk () {
2024-09-09 08:52:07 +00:00
autotools_do_install
2024-09-09 08:57:42 +00:00
# dbus-launch has no X support so lets not install it in case the host
# has a more featured and useful version
rm - f $ { D } $ { bindir } / dbus - launch
# Remove /var/run to avoid QA error
rm - rf $ { D } $ { localstatedir } / run
2024-09-09 08:52:07 +00:00
}
BBCLASSEXTEND = " native nativesdk "