PKGBUILD 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. # Maintainer: David P. <megver83@parabola.nu>
  2. # Maintainer (Arch): David Runge <dvzrv@archlinux.org>
  3. # Maintainer (Arch): Jan Alexander Steffens (heftig) <heftig@archlinux.org>
  4. pkgbase=wireplumber
  5. pkgname=(wireplumber wireplumber-docs)
  6. _commit=3400acd0db95fefdda7595d20466c095902d8997 # tags/0.4.10
  7. pkgver=0.4.10
  8. pkgrel=3
  9. pkgrel+=.nonsystemd1
  10. pkgdesc="Session / policy manager implementation for PipeWire"
  11. url="https://pipewire.pages.freedesktop.org/wireplumber/"
  12. arch=(x86_64)
  13. arch+=(i686 armv7h)
  14. license=(MIT)
  15. makedepends=(git meson doxygen graphviz 'pipewire>=0.3.43' glib2 lua
  16. gobject-introspection python-sphinx python-sphinx_rtd_theme
  17. python-breathe python-lxml elogind)
  18. depends=(libelogind)
  19. options=(debug)
  20. source=("$pkgbase::git+https://gitlab.freedesktop.org/pipewire/wireplumber.git#commit=$_commit")
  21. sha256sums=('SKIP')
  22. pkgver() {
  23. cd $pkgbase
  24. git describe --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
  25. }
  26. build() {
  27. local meson_options=(
  28. -D system-lua=true
  29. -D systemd=disabled
  30. )
  31. arch-meson $pkgbase build "${meson_options[@]}"
  32. meson compile -C build
  33. }
  34. check() {
  35. meson test -C build --print-errorlogs
  36. }
  37. _pick() {
  38. local p="$1" f d; shift
  39. for f; do
  40. d="$srcdir/$p/${f#$pkgdir/}"
  41. mkdir -p "$(dirname "$d")"
  42. mv "$f" "$d"
  43. rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
  44. done
  45. }
  46. package_wireplumber() {
  47. depends=('pipewire>=0.3.43' lua libpipewire-0.3.so
  48. libg{lib,module,object,io}-2.0.so)
  49. optdepends=('wireplumber-docs: Documentation')
  50. provides=(pipewire-session-manager libwireplumber-0.4.so)
  51. conflicts=(pipewire-media-session)
  52. meson install -C build --destdir "$pkgdir"
  53. _pick docs "$pkgdir"/usr/share/doc
  54. install -Dt "$pkgdir/usr/share/doc/$pkgname" -m644 $pkgbase/{NEWS,README}*
  55. install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 $pkgbase/LICENSE
  56. }
  57. package_wireplumber-docs() {
  58. pkgdesc+=" - documentation"
  59. mv docs/* "$pkgdir"
  60. install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 $pkgbase/LICENSE
  61. }
  62. # vim:set sw=2 et: