void-packages/srcpkgs/dbus/template
2015-05-15 06:58:16 +02:00

167 lines
4.8 KiB
Bash

# Template file for 'dbus'
#
pkgname=dbus
version=1.8.18
revision=1
short_desc="Message bus system"
maintainer="Juan RP <xtraeme@voidlinux.eu>"
license="GPL-2"
homepage="http://dbus.freedesktop.org/"
distfiles="${homepage}/releases/dbus/dbus-${version}.tar.gz"
checksum=36f2eb9c777a3c71562573da36a147e900a642afcd44d2b0470d992a4898c4f2
build_pie=yes
create_wrksrc=yes
hostmakedepends="pkg-config intltool gperf xmlto"
makedepends="expat-devel libX11-devel libcap-devel"
conf_files="/etc/dbus-1/session.conf /etc/dbus-1/system.conf"
# Create dbus:22 system account.
system_accounts="dbus:22"
# Package build options
build_options="systemd"
if [ "$build_option_systemd" ]; then
_systemd_version=208
distfiles+=" http://www.freedesktop.org/software/systemd/systemd-${_systemd_version}.tar.xz"
checksum+=" aa64fa864466fd5727005c55d61c092828b94b4f857272c0b503695022146390"
if [ "$CROSS_BUILD" ]; then
_systemddir="$XBPS_CROSS_BASE"
_confargs="--host=$XBPS_CROSS_TRIPLET --with-sysroot=$XBPS_CROSS_BASE"
hostmakedepends+=" libtool automake gettext-devel libgcrypt-devel"
else
_systemddir="/usr"
fi
fi
_dbus_bootstrap() {
# Build a temporary dbus; we are only interested in libdbus.
mkdir ${wrksrc}/dbus-bootstrap
cd ${wrksrc}/dbus-bootstrap
../dbus-${version}/configure ${_confargs} \
--prefix=${wrksrc}/tmpbuild/usr \
--disable-systemd --without-x \
--enable-abstract-sockets ac_cv_have_abstract_sockets=yes
make ${makejobs}
make install
}
_systemd_bootstrap() {
# Build a temporary systemd; we are only interested in libsystemd-login.
if [ ! -d ${wrksrc}/systemd-bootstrap ]; then
if [ "$CROSS_BUILD" ]; then
cd ${wrksrc}/systemd-${_systemd_version}
autoreconf -fi
fi
mkdir ${wrksrc}/systemd-bootstrap
fi
cd ${wrksrc}/systemd-bootstrap
unset PKG_CONFIG_SYSROOT_DIR PKG_CONFIG_PATH
env PKG_CONFIG_LIBDIR=${wrksrc}/tmpbuild/usr/lib/pkgconfig \
../systemd-${_systemd_version}/configure ${_confargs} \
--prefix=/usr --disable-nls \
--disable-introspection --disable-kmod --disable-blkid \
--disable-ima --disable-chkconfig --disable-selinux \
--disable-xz --disable-tcpwrap --disable-pam \
--disable-acl --disable-xattr --disable-gcrypt \
--disable-audit --disable-libcryptsetup --disable-qrencode \
--disable-microhttpd --disable-binfmt --disable-vconsole \
--disable-readahead --disable-bootchart --disable-quotacheck \
--disable-randomseed --disable-hostnamed \
--disable-timedated --disable-localed --disable-coredump \
--disable-myhostname --disable-gudev --disable-keymap \
--disable-manpages --without-python --with-sysvinit-path= \
--with-sysvrcnd-path= --disable-tests
make ${makejobs}
make DESTDIR=${wrksrc}/systemd-install install
# Copy libsystemd-*, headers and pkg-config files.
cp -a ${wrksrc}/systemd-install/usr/lib/libsystemd* \
${_systemddir}/lib/
rm -f ${_systemddir}/lib/*.la
cp -a ${wrksrc}/systemd-install/usr/include/* \
${_systemddir}/include/
cp -a ${wrksrc}/systemd-install/usr/lib/pkgconfig/libsystemd* \
${_systemddir}/lib/pkgconfig/
}
pre_configure() {
if [ "$build_option_systemd" ]; then
if [ ! -f ${wrksrc}/dbus_bootstrap_done ]; then
_dbus_bootstrap
touch -f ${wrksrc}/dbus_bootstrap_done
fi
if [ ! -f ${wrksrc}/systemd_bootstrap_done ]; then
_systemd_bootstrap
touch -f ${wrksrc}/systemd_bootstrap_done
fi
fi
}
do_configure() {
cd ${wrksrc}/dbus-${version}
if [ "$build_option_systemd" ]; then
if [ "$CROSS_BUILD" ]; then
autoreconf -fi
export PKG_CONFIG_LIBDIR="${_systemddir}/lib/pkgconfig"
fi
fi
./configure ${configure_args} \
--disable-selinux \
--enable-inotify --with-dbus-user=dbus \
--disable-doxygen-docs --enable-xml-docs --disable-static \
--disable-tests --enable-epoll --disable-asserts \
--with-system-socket=/run/dbus/system_bus_socket \
--with-system-pid-file=/run/dbus/pid \
--with-console-auth-dir=/run/console/ \
--with-systemdsystemunitdir=/usr/lib/systemd/system \
--enable-abstract-sockets \
ac_cv_have_abstract_sockets=yes
}
do_build() {
cd ${wrksrc}/dbus-${version}
make ${makejobs}
}
do_install() {
cd ${wrksrc}/dbus-${version}
make DESTDIR=${DESTDIR} install
# Remove systemd temp files from masterdir.
if [ "$build_option_systemd" ]; then
rm -f ${_systemddir}/lib/pkgconfig/libsystemd-*
rm -rf ${_systemddir}/include/systemd
rm -f ${_systemddir}/lib/libsystemd-*
fi
vsv dbus
}
dbus-devel_package() {
depends="expat-devel dbus-libs>=${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
vmove "usr/lib/dbus-*"
vmove usr/lib/pkgconfig
vmove "usr/lib/*.so"
vmove usr/share/doc
}
}
dbus-libs_package() {
short_desc+=" - shared libraries"
pkg_install() {
vmove "usr/lib/*.so.*"
}
}
dbus-x11_package() {
replaces="dbus<1.4.16_2"
short_desc+=" - X11 support"
pkg_install() {
vmove usr/bin/dbus-launch
vmove usr/share/man/man1/dbus-launch.1
}
}