# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Daniel Ehlers <danielehlers@mindeye.net>

pkgbase=alsa-plugins
pkgname=(alsa-plugins pulseaudio-alsa)
pkgver=1.2.5
pkgrel=2
epoch=1
pkgdesc="Additional ALSA plugins"
arch=(x86_64)
url="https://www.alsa-project.org"
license=(LGPL2.1)
makedepends=(alsa-lib dbus jack libavtp libpulse libsamplerate speexdsp)
source=("https://www.alsa-project.org/files/pub/plugins/$pkgbase-$pkgver.tar.bz2"{,.sig}
        pulse-sysdefault.diff)
sha512sums=('32aa475ec4af040861c2bfb01eac71042242d2109d3c5102d0111f3327e3f6c9031c32cbb50eb4b6568a6bd9408691a047a39972f09d6087e31ec11f19ddc9cf'
            'SKIP'
            'b8c8e55f4da0ae87cc44d75a906d00b4f1e2304e6bc10419c6e0913c8f7d29599a3f3d41733decbe412a4669ea0d5af2a57f85b1655fba3625fbbd33c956f3f9')
b2sums=('a1bb2f187c92a2999722e22775baf2c1fc4240162bb71f454c60359ef61b46934ff8ecd5af97589bafe2c7f737530cf5a4dcc139af7ed001d8dfe24bf3ae045c'
        'SKIP'
        '83c16b77c1737b2b59b60302be22b63e53026a366799fd97fe3c03b86756063d1b9689d5ffc7c793b40db55bdb79a5b6d72a17e0c8aa32364d6e639cf7ad3ce0')
validpgpkeys=('F04DF50737AC1A884C4B3D718380596DA6E59C91') # ALSA Release Team (Package Signing Key v1) <release@alsa-project.org>

prepare() {
  cd $pkgbase-$pkgver

  # Make use of the pulse plugin's "fallback" feature
  # Keeps parity with our old config from pulseaudio-alsa
  patch -Np1 -i ../pulse-sysdefault.diff

  # a52, lavrate plugins not compatible with ffmpeg >= 4.0
  # https://mailman.alsa-project.org/pipermail/alsa-devel/2019-December/159425.html
  # https://bugs.archlinux.org/task/60586
  autoreconf -fvi
}

build() {
  cd $pkgbase-$pkgver
  ./configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --enable-maemo-plugin \
    --enable-maemo-resource-manager
  make
}

package_alsa-plugins() {
  depends=(glibc libasound.so)
  optdepends=('dbus: for maemo plugin'
              'jack: for pcm_jack plugin'
              'libavtp: for pcm_aaf plugin'
              'libsamplerate: for rate_samplerate plugin'
              'libpulse: for conf_pulse, ctl_pulse and pcm_pulse plugins'
              'speexdsp: for pcm_speex and rate_speexrate plugins')

  cd $pkgbase-$pkgver
  make DESTDIR="$pkgdir" install
  install -Dt "$pkgdir/usr/share/doc/$pkgbase" -m644 doc/README* doc/*.txt

  # remove maemo plugin configuration (it overrides defaults for pcm and ctl),
  # until a better way is found to package default overrides:
  # https://bugs.archlinux.org/task/65440
  rm -v "${pkgdir}/etc/alsa/conf.d/98-maemo.conf"

  # make a proper off-by-default config template out of the example file
  mv -v "${pkgdir}/etc/alsa/conf.d/99-pulseaudio-default.conf.example" \
    "${pkgdir}/usr/share/alsa/alsa.conf.d/99-pulseaudio-default.conf"
}

package_pulseaudio-alsa() {
  pkgdesc="ALSA Configuration for PulseAudio"
  depends=('alsa-plugins>=1.2.2-2' pulseaudio)

  mkdir -p "${pkgdir}/etc/alsa/conf.d"
  ln -st "${pkgdir}/etc/alsa/conf.d" \
    /usr/share/alsa/alsa.conf.d/99-pulseaudio-default.conf
}

# vim:set sw=2 et:
