diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 95 |
1 files changed, 57 insertions, 38 deletions
@@ -1,49 +1,68 @@ -# Maintainer: Chris Cromer <chris@cromer.cl> +# Maintainer: EatMyVenom <eat.my.venomm@gmail.com> # Contributor: artoo <artoo@manjaro.org> +# Contributor: Nathan Owens <ndowens at artixlinux.org> -pkgname=elogind-git -_pkgname=elogind -pkgver=219.14.6d224ff -pkgrel=2 -pkgdesc="The systemd project's logind, extracted to a standalone package for use on systems without systemd installed" +pkgbase=elogind +pkgname=('elogind' 'libelogind') +pkgver=246.pre.r51.g8b21e351c +pkgrel=1 +pkgdesc="The systemd project's logind, extracted to a standalone package" arch=('i686' 'x86_64') -url="https://github.com/wingo/elogind.git" +url="https://github.com/elogind/elogind" license=('GPL') -depends=('dbus' 'polkit' 'libudev.so') -makedepends=('git' 'libcap' 'intltool' 'libtool' 'gperf' 'gtk-doc') -provides=('elogind') -conflicts=('elogind') +makedepends=('intltool' 'libtool' 'gperf' 'gtk-doc' + 'git' 'libcap' 'meson') options=('!libtool') -install=elogind.install -backup=('etc/elogind/logind.conf') -source=("git+${url}" - 'elogind-docs.patch' - 'elogind-lrt.patch') -sha256sums=(SKIP - 'cafea7a13159dee700902e3837aab015d9521dfe122840faf2d909b5dc02229e' - 'a9227ed4e97117ab5751de38c19813560a12f51379ccd882a89e7ef9842659ac') - -prepare() { - cd $srcdir/$_pkgname - patch -Np 1 -i $srcdir/elogind-docs.patch - patch -Np 1 -i $srcdir/elogind-lrt.patch - sed -e "s|/bin/false|/usr/lib/elogind/elogind|" \ - -i src/login/org.freedesktop.login1.service - autoreconf -vim +source=("git+https://github.com/elogind/elogind") +sha256sums=('SKIP') + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + +pkgver() { + cd "$pkgname" + git describe --long | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' } build() { - cd $srcdir/${_pkgname} - intltoolize - ./configure \ - --sysconfdir=/etc \ - --prefix=/usr \ - --libexecdir=/usr/lib - - make + arch-meson $pkgbase build \ + -D split-usr=true \ + -D smack=true \ + -D acl=true \ + -D pam=true \ + -D rootlibexecdir=/usr/lib + ninja -C build } -package() { - cd $srcdir/${_pkgname} - make DESTDIR="${pkgdir}" install +package_elogind() { + pkgdesc="The systemd project's logind, extracted to a standalone package" + provides=("elogind=${pkgver}") + depends=('libelogind' 'pam' 'acl') + conflicts=('systemd-sysvcompat' 'consolekit') + optdepends=('dbus-openrc: dbus initscript') + install=elogind.install + + DESTDIR="${pkgdir}" meson install -C build + cd "$pkgdir" + + _pick libelogind usr/lib/pkgconfig + _pick libelogind usr/include + _pick libelogind usr/lib/libelogind*.so* + + rm -rf "$pkgdir"/usr/share/doc +} + +package_libelogind(){ + pkgdesc="elogind client libraries" + provides=('libelogind.so' "libelogind=${pkgver}") + depends=('libcap') + + mv libelogind/* "$pkgdir" } |