# 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.3.0
pkgrel=1
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=('25038076f890cdeceb2058026f871ffd271358a1d1aad63f2f1df339fe1c2c7e664db1e96d5f5d33009aa8e6a900743353db4535e7f6de65df29eb04f0e10183')
b2sums=('4d7455129e00624366761647063ef187216b1a89470600bfd63e01d6533446dc079ef01d61c6853400bd15c0396dcfd8c6f4fee947bd0db62cd397784aa040c0')

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/"
}