# Maintainer: David P. <megver83@parabola.nu>
# Maintainer (Arch): Jan de Groot <jgc@archlinux.org>
# Maintainer (Arch): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor (Arch): Tom Gundersen <teg@jklm.no>
# Contributor (Arch): Link Dupont <link@subpop.net>

pkgname=dbus
pkgver=1.12.16
pkgrel=5
pkgrel+=.nonsystemd1
pkgdesc="Freedesktop.org message bus system"
url="https://wiki.freedesktop.org/www/Software/dbus/"
arch=(x86_64 i686 armv7h)
license=(GPL custom)
depends=(libx11 libelogind expat audit)
depends+=(libelogind.so libaudit.so)
makedepends=(elogind xmlto docbook-xsl python yelp-tools doxygen git autoconf-archive)
provides=(libdbus libdbus-1.so)
provides+=($pkgname-{elogind,openrc})
conflicts=(${provides[@]})
replaces=(${provides[@]})
_commit=23cc709db8fab94f11fa48772bff396b20aea8b0  # tags/dbus-1.12.16^0
source=("git+https://gitlab.freedesktop.org/dbus/dbus.git#commit=$_commit"
        dbus-reload.hook
        dbus-enable-elogind.patch
        dbus.initd)
sha256sums=('SKIP'
            '1335a86bb5eb68614bf13af314f1a7f5f6f68253584986e9c5b492a4585ab722'
            'faffcaa5b295f49fcedeed2c9ece5298949096be3062fd99a4bf1a6ac3ad1ea0'
            '9964aa935b4a7d64f5970bcfcd561b06013a85ae2712444bc4c5f644364dab3b')
validpgpkeys=('DA98F25C0871C49A59EAFF2C4DE8FF2A63C7CC90'  # Simon McVittie <simon.mcvittie@collabora.co.uk>
              '3C8672A0F49637FE064AC30F52A43A1E4B77B059') # Simon McVittie <simon.mcvittie@collabora.co.uk>

pkgver() {
  cd dbus
  git describe --tags | sed 's/^dbus-//;s/-/+/g'
}

prepare() {
  cd dbus

  patch -Np 1 -i ${srcdir}/dbus-enable-elogind.patch
  NOCONFIGURE=1 ./autogen.sh
}

build() {
  cd dbus
  ./configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --localstatedir=/var \
    --libexecdir=/usr/lib/dbus-1.0 \
    --with-console-auth-dir=/run/console/ \
    --with-dbus-user=dbus \
    --with-system-pid-file=/run/dbus/pid \
    --with-system-socket=/run/dbus/system_bus_socket \
    --without-systemdsystemunitdir \
    --enable-inotify \
    --disable-systemd \
    --disable-user-session \
    --disable-static \
    --disable-verbose-mode \
    --disable-asserts \
    --disable-checks \
    --enable-elogind \
    --enable-x11-autolaunch
  make
}

check() {
  make -C dbus check
}

package() {
  DESTDIR="$pkgdir" make -C dbus install

  rm -r "$pkgdir"/{etc,var}

  # We have a pre-assigned uid (81)
  echo 'u dbus 81 "System Message Bus"' |
    install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/dbus.conf"

  install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 dbus/COPYING

  # Split docs
  mv "$pkgdir/usr/share/doc" "$srcdir"

  # Init script
  install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
  install -Dm755 "$srcdir/dbus.initd" "$pkgdir/etc/init.d/dbus"
  install -d "${pkgdir}/etc/runlevels/default"
  ln -sf "/etc/init.d/dbus" "${pkgdir}/etc/runlevels/default/dbus"
}

# vim:set sw=2 et:
