# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Ray Rashif <schiv@archlinux.org>
# Contributor: Tobias Kieslich tobias [funnychar] archlinux org

pkgbase=aubio
pkgname=('aubio' 'python-aubio')
pkgver=0.4.9
pkgrel=10
pkgdesc="A tool for extracting annotations from audio signals"
arch=('x86_64')
url="https://aubio.org/"
license=('GPL3')
makedepends=('doxygen' 'ffmpeg' 'fftw' 'jack' 'libsamplerate' 'libsndfile'
'python-numpy' 'python-setuptools' 'python-sphinx' 'txt2man' 'waf')
checkdepends=('python-pytest')
source=("https://${pkgbase}.org/pub/${pkgbase}-${pkgver}.tar.bz2")
sha512sums=('0cb81bb4b15051db3f3f4d160d500af56fdfb237e0a74e3f366f53c2870030aa0a7cee8469a611a9694c36b8866d3d42ffb48241c999de08f3fee43e6d903130')
b2sums=('b849d92678ea8fb20e17921b1a61fdc85a84d4a528acfefa3278169ab5f7fe935217ec37dd9f931202f0f0a1fd3a9518372afbce34cc2dd3ca30c6b4e5d9a301')

prepare() {
  cd "${pkgbase}-${pkgver}"
  rm -rv waflib
}

build() {
  cd "${pkgbase}-${pkgver}"
  export LINKFLAGS="$LDFLAGS"
  waf configure --prefix=/usr \
                --alltests \
                --enable-fftw3 \
                --libdir=/usr/lib
  waf build
  python setup.py build
}

check() {
  local _py3_ver=$(python3 -c "import sys; print(str(sys.version_info.major)+'.'+str(sys.version_info.minor))")
  cd "${pkgbase}-${pkgver}"
  PYTHONPATH="build/lib.linux-$CARCH-${_py3_ver}:${PYTHONPATH}" \
  LD_LIBRARY_PATH="${PWD}/build/src" \
  PYTHONDONTWRITEBYTECODE=1 \
  pytest -v python/tests
}

package_aubio() {
  pkgdesc="A tool for extracting annotations from audio signals"
  depends=('fftw' 'glibc' 'libavcodec.so' 'libavformat.so' 'libavutil.so'
  'libjack.so' 'libsamplerate.so' 'libsndfile.so' 'libswresample.so')
  optdepends=('python-aubio: Python bindings')
  provides=('libaubio.so')
  groups=('pro-audio')

  cd "${pkgname}-${pkgver}"
  waf --destdir="${pkgdir}" install
  # move doc, as waf configure doesn't honor the htmldir and docdir settings
  mv -v "${pkgdir}/usr/share/doc/lib${pkgname}-doc" \
    "${pkgdir}/usr/share/doc/${pkgname}"
  install -vDm 644 {AUTHORS,ChangeLog,README.md} \
    -t "${pkgdir}/usr/share/doc/${pkgname}/"
}

package_python-aubio() {
  pkgdesc="Python bindings for aubio"
  depends=('glibc' 'libaubio.so' 'python-numpy')

  cd "${pkgbase}-${pkgver}"
  python setup.py install --optimize=1 --root="${pkgdir}"
  install -vDm 644 {AUTHORS,ChangeLog,README.md} \
    -t "${pkgdir}/usr/share/doc/${pkgname}/"
}
# vim:set ts=2 sw=2 et:
