# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Ray Rashif <schiv@archlinux.org>
# Contributor: speps <speps at aur dot archlinux dot org>
# Contributor: Philipp Überbacher <hollunder at gmx dot at>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - set -DCONFIG_SSE=OFF

pkgname=qtractor
pkgver=1.4.0
pkgrel=2
pkgdesc="Audio/MIDI multitrack sequencer"
arch=(x86_64)
url="https://qtractor.sourceforge.io/"
license=(GPL-2.0-or-later)
groups=(pro-audio)
depends=(
  gcc-libs
  glibc
  hicolor-icon-theme
  libmad
  libxcb
  qt6-base
  qt6-svg
  zlib
)
makedepends=(
  alsa-lib
  aubio
  clap
  cmake
  dssi
  jack
  ladspa
  liblo
  libogg
  libsamplerate
  libsndfile
  libvorbis
  lilv
  lv2
  qt6-tools
  rubberband
  suil
  vst3sdk
)
optdepends=(
  'new-session-manager: for session management'
  'qt6-wayland: for native wayland support'
)
provides=(
  clap-host
  dssi-host
  ladspa-host
  lv2-host
  vst-host
  vst3-host
)
source=($pkgname-$pkgver.tar.gz::https://github.com/rncbc/$pkgname/archive/refs/tags/v$pkgver.tar.gz)
sha512sums=('f9ca59e295c9e4bb9f12bb1edc458ed2411dfaeac87e5cf271b47edf6f8094cdfe77a1eee1fddd4056b82c55da69208eb356d1eed1a927f4fdfea9cf804d13ae')
b2sums=('bab8979ee76cb4efb49dfb949432c8f2defa1c20f040ffa19c3516fba78367dda2dbace2207483cbdd832f5d85f605c2fa7be66dd30a68dd904ae562269f8a43')

prepare() {
  # symlink vst3sdk into place
  rm -frv $pkgname-$pkgver/src/vst3
  ln -fsv /usr/src/vst3sdk $pkgname-$pkgver/src/vst3
}

build() {
  local cmake_options=(
    -B build
    -D CMAKE_BUILD_TYPE=None
    -D CMAKE_INSTALL_PREFIX=/usr
    -D CONFIG_QT6=ON
    -D CONFIG_SSE=OFF
    -D CONFIG_LV2_UI_GTK2=OFF
    -D CONFIG_LV2_UI_GTKMM2=OFF
    -S $pkgname-$pkgver
    -W no-dev
  )

  cmake "${cmake_options[@]}"
  cmake --build build --verbose
}

package() {
  depends+=(
    alsa-lib libasound.so
    aubio libaubio.so
    jack libjack.so
    liblo liblo.so
    libogg libogg.so
    libsamplerate libsamplerate.so
    libsndfile libsndfile.so
    libvorbis libvorbisenc.so libvorbisfile.so libvorbis.so
    lilv liblilv-0.so
    rubberband librubberband.so
  )

  DESTDIR="$pkgdir" cmake --install build
  install -vDm 644 $pkgname-$pkgver/README* -t "$pkgdir/usr/share/doc/$pkgname/"
}