# Maintainer: David Runge <dvzrv@archlinux.org>

pkgname=sorcer
pkgver=1.1.3
pkgrel=3
pkgdesc="A polyphonic wavetable synth LV2 plugin"
arch=('x86_64')
url="http://openavproductions.com/sorcer"
license=('GPL3')
groups=('lv2-plugins' 'pro-audio')
depends=('cairo' 'gcc-libs' 'glibc')
makedepends=('boost' 'cmake' 'lv2' 'ntk')
checkdepends=('lv2lint')
source=("$pkgname-$pkgver.tar.gz::https://github.com/openAVproductions/openAV-${pkgname}/archive/release-${pkgver}.tar.gz"
        "${pkgname}-1.1.3-lv2-1.18.0.patch::https://github.com/openAVproductions/openAV-Sorcer/pull/26/commits/0c06a2f89a44a8e275f0a592c3ac946eff7b7020.patch"
        "${pkgname}-1.1.3-cmake.patch::https://github.com/openAVproductions/openAV-Sorcer/pull/27/commits/d3be525b6b2fd508658b608bbb52d75d9b85a8ca.patch"
)
sha512sums=('d03db6b7d62e785c0428636a0d0f77cbbfd6991f994bccb120317a96a9866e978fae66e6dd0c6a6cd2763147f427bb7ba20f01cd06356797042ff42caaa1eab0'
            '45c5392ad897252490ff59d3cd71df1f9f1120926b53f7bba5ece49f08315c5f2d16ca982aaa1ab8e6fe2e6c02b7dae7b79d75d411f3b169b8ab9f1ad63ed570'
            '2d94f6289d5ef1728e8b22ca3dde3a0506dc9a30259499be4b551dbd0af2384009b943ff366033f49bf9087f38d2dde56ea7672249dcf97fc9d6f2bec230a4d4')

prepare() {
  mv -v "openAV-Sorcer-release-${pkgver}" "$pkgname-$pkgver"
  cd "$pkgname-$pkgver"
  # fixing build with lv2 >= 1.18.0
  patch -Np1 -i "../${pkgname}-1.1.3-lv2-1.18.0.patch"
  # making sure cmake respects external CFLAGS/CXXFLAGS/LDFLAGS
  patch -Np1 -i "../${pkgname}-1.1.3-cmake.patch"
}

build() {
  cd "$pkgname-$pkgver"
  export CFLAGS+=" ${CPPFLAGS}"
  export CXXFLAGS+=" ${CPPFLAGS}"
  cmake -DCMAKE_INSTALL_PREFIX='/usr' \
        -DCMAKE_BUILD_TYPE='None' \
        -Wno-dev \
        -B build \
        -S .
  make VERBOSE=1 -C build
}

check() {
  cd "$pkgname-$pkgver"
  cp -v "build/${pkgname}.so" "${pkgname}.lv2"
  lv2lint -Mpack -I "${pkgname}.lv2" "http://www.openavproductions.com/sorcer" || echo "Known issues: https://github.com/openAVproductions/openAV-Sorcer/issues/28"
  rm -v "${pkgname}.lv2/${pkgname}.so"
}

package() {
  depends+=('libntk.so')
  cd "$pkgname-$pkgver"
  make DESTDIR="$pkgdir/" install -C build
  install -vDm 644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}/"
}
