# Template file for 'rubberband'
pkgname=rubberband
version=3.3.0
revision=1
build_style=meson
configure_args="-Dfft=fftw"
hostmakedepends="pkg-config"
makedepends="ladspa-sdk vamp-plugin-sdk-devel lv2"
depends="libvamp-plugin-sdk"
checkdepends="boost-devel"
short_desc="Time-stretching and pitch-shifting audio library"
maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="https://breakfastquay.com/rubberband/"
changelog="https://raw.githubusercontent.com/breakfastquay/rubberband/default/CHANGELOG"
distfiles="https://breakfastquay.com/files/releases/rubberband-${version}.tar.bz2"
checksum=d9ef89e2b8ef9f85b13ac3c2faec30e20acf2c9f3a9c8c45ce637f2bc95e576c

_dev_depends="fftw-devel"

# On 32-bit targets, the built-in resampler is much slower than libsamplerate.
# On 64-bit targets the performance difference is not as pronounced, and the
# built-in resampler can, in some situations, sound slightly better, so keep
# using it on them.
# See https://github.com/breakfastquay/rubberband/issues/87#issuecomment-1607722278.
if [ "$XBPS_TARGET_WORDSIZE" = 32 ]; then
	_dev_depends+=" libsamplerate-devel"
	configure_args+=" -Dresampler=libsamplerate"
fi

makedepends+=" $_dev_depends"

if [ "$XBPS_CHECK_PKGS" ]; then
	configure_args+=" -Dtests=enabled"
else
	configure_args+=" -Dtests=disabled"
fi

librubberband_package() {
	short_desc+=" - Runtime libraries"
	pkg_install() {
		vmove "usr/lib/*.so.*"
		vmove usr/lib/vamp
		vmove usr/lib/ladspa
		vmove usr/lib/lv2
		vmove usr/share/ladspa
	}
}

rubberband-devel_package() {
	depends="${_dev_depends} librubberband>=${version}_${revision}"
	short_desc+=" - Development files"
	pkg_install() {
		vmove usr/include
		vmove "usr/lib/*.a"
		vmove "usr/lib/*.so"
		vmove usr/lib/pkgconfig
	}
}
