File PKGBUILD of Package libadlmidi

# Maintainer: Алыпов Андрей <and.november@opensuse.org>
  
tools=adlmidi-tools
pkgbase=libadlmidi
pkgname=(libadlmidi adlmidi-tools)
pkgver=@SERVICE@
pkgrel=1
pkgdesc="A software MIDI synthesizer library with OPL3 emulation"
arch=(x86_64)
url="https://github.com/Wohlstand/libADLMIDI"
groups=()
license=(GPL-3.0-or-later LGPL-3.0-or-later LGPL-2.1-or-later)
makedepends=(cmake libvlc ninja openmp sdl2-compat sdl3 zita-resampler)
changelog=${pkgbase}.changes
source=("${pkgname}-${pkgver}.tar.xz")
md5sums=('SKIP')
noextract=(${pkgname}-${pkgver}.tar.xz)

prepare() {
  tar xf ${pkgname}-${pkgver}.tar.xz
}

build() {
  cd ${pkgname}-${pkgver}/
  cmake -B build -GNinja \
    -DCMAKE_INSTALL_PREFIX:PATH="/usr" \
    -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
    -DlibADLMIDI_STATIC:BOOL=OFF \
    -DlibADLMIDI_SHARED:BOOL=ON \
    -DWITH_UNIT_TESTS:BOOL=ON \
    -DWITH_HQ_RESAMPLER:BOOL=ON \
    -DWITH_MIDIPLAY:BOOL=ON \
    -DWITH_ADLMIDI2:BOOL=ON \
    -DWITH_VLC_PLUGIN:BOOL=ON \
    -DVLC_PLUGIN_NOINSTALL:BOOL=ON \
    -DCMAKE_SKIP_RPATH:BOOL=ON
  ninja -j$(nproc --all) -v -C build
}

check() {
  ctest --output-on-failure --force-new-ctest-process \
    -j$(nproc --all) --test-dir ${pkgname}-${pkgver}/build/ ||:
}

package_libadlmidi() {
  provides=(libadlmidi.so)
  depends=(libvlc zita-resampler)
  cd ${pkgname}-${pkgver}/
  DESTDIR="${pkgdir}" ninja install -C build
  rm -rfv ${pkgdir}/usr/share/doc/
  local toolspkg=${pkgdir}/../${tools}
  install -vDm 0755 ${pkgdir}/usr/bin/* -t ${toolspkg}/usr/bin/
  rm -rvf ${pkgdir}/usr/bin/
}
package_adlmidi-tools() {
  license=(GPL-3.0-or-later LGPL-3.0-or-later LGPL-2.1-or-later)
  depends=(sdl2-compat sdl3 zita-resampler)
  depends+=(libadlmidi.so)
  cd ${pkgbase}-${pkgver}/
  install -vDm 0644 AUTHORS README.md -t ${pkgdir}/usr/share/doc/${tools}/
  install -vDm 0644 LICENSE* -t ${pkgdir}/usr/share/licenses/${tools}/
}
openSUSE Build Service is sponsored by