# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Jason Chu <jchu@xentac.net>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - fix for unimplemented _FPU_EXTENDED
#  - patch to use neon only on 32bit ARM

pkgbase=openal
pkgname=(openal openal-examples)
pkgver=1.17.2
pkgrel=2
pkgdesc="Cross-platform 3D audio library, software implementation"
arch=(i686 x86_64)
url="https://github.com/kcat/openal-soft"
license=(LGPL)
depends=(glibc)
makedepends=(alsa-lib pkgconfig cmake libpulse qt4 fluidsynth portaudio jack sdl2 sdl_sound ffmpeg
             git)
source=("git+$url#tag=openal-soft-$pkgver"
        'no-fpuextended.patch'
        'openal-soft-arm_neon-only-for-32bit.patch')
sha256sums=('SKIP'
            '960e346be09cf2ce658f3e4ac47581609cc7df42b0b0a7a1a41a0f8ac5d17b6f'
            '419ec5b76ab5013bb0004c785497766364ec7ea60b3b6badf11284147dfddb19')

prepare() {
  mkdir build examples
  cd $pkgbase-soft
  sed -i 's/PIX_FMT_YUV420P/AV_&/g' examples/alffplay.c

  patch -p1 -i "${srcdir}"/no-fpuextended.patch
  patch -p1 -i "${srcdir}"/openal-soft-arm_neon-only-for-32bit.patch
}

build() {
  cd build
  cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release ../$pkgbase-soft
  make
}

package_openal() {
  optdepends=('qt4: alsoft-config GUI Configurator'
              'fluidsynth: MIDI rendering')

  make -C build DESTDIR="$pkgdir/" install
  install -m644 $pkgbase-soft/{env-vars,hrtf}.txt "$pkgdir/usr/share/openal/"

### Split openal-examples
  mv "$pkgdir"/usr/bin/al{ffplay,hrtf,latency,loopback,reverb,stream} examples/
}

package_openal-examples() {
  pkgdesc+=" (example programs)"
  depends=("openal=$pkgver-$pkgrel" sdl2 sdl_sound ffmpeg)

  mkdir -p "$pkgdir/usr/bin"
  mv examples/* "$pkgdir/usr/bin/"
}