# Template file for 'tuxguitar'
pkgname=tuxguitar
version=1.5.6
revision=1
hostmakedepends="apache-maven openjdk8"
makedepends="alsa-lib-devel fluidsynth-devel jack-devel"
depends="virtual?java-environment icedtea-sound gtk+3 hicolor-icon-theme desktop-file-utils"
short_desc="Multitrack guitar tablature editor and player"
maintainer="Orphaned <orphan@voidlinux.org>"
license="LGPL-2.0-only"
homepage="http://www.tuxguitar.com.ar/"
changelog="http://www.tuxguitar.com.ar/changes.html"
distfiles="${SOURCEFORGE_SITE}/tuxguitar/tuxguitar-${version}-src.tar.gz"
checksum=441e561ffbb9d91470f255c817f6c30300f579bf9013032615efe3f6701af274

case $XBPS_TARGET_MACHINE in
	i686*) _arch="x86" ;;
	x86_64*) _arch="x86_64" ;;
	armv7l*) _arch="armv7hl"
		broken="[ERROR] Unable to find artifact. Could not find artifact org.eclipse.swt:org.eclipse.swt.gtk.linux.armv7hl:jar:4.6.1 in swt-repo"
		;;
	*) broken="package doesn't provide build function for other architectures" ;;
esac

post_extract() {
	rm build-scripts/common-resources/common-linux-x86/lib/libicedtea-sound.so
	rm build-scripts/common-resources/common-linux-x86_64/lib/libicedtea-sound.so
}

do_build() {
	export MAVEN_OPTS="$MAVEN_OPTS -Duser.home=$wrksrc"
	. /etc/profile.d/jdk.sh
	for _i in . TuxGuitar-{lib,gm-utils} \
		build-scripts/{tuxguitar,native-modules/tuxguitar-{alsa,oss,jack,fluidsynth}}-linux-$_arch; do
		(
		cd $_i
		mvn install
		)
	done
}

post_build() {
	cat > tuxguitar <<_EOF
#!/bin/sh -e
cd /usr/share/tuxguitar
exec ./tuxguitar.sh -Dorg.eclipse.swt.internal.gtk.cairoGraphics=false "\$@"
_EOF
}

do_install() {
	vmkdir usr/share
	vmkdir usr/lib/tuxguitar
	vcopy build-scripts/tuxguitar-linux-${_arch}/target/tuxguitar-${version}-linux-${_arch} usr/share/tuxguitar
	for _i in alsa oss jack fluidsynth; do
		vcopy build-scripts/native-modules/tuxguitar-${_i}-linux-${_arch}/target/build/* usr/share/tuxguitar
	done

	mv ${DESTDIR}/usr/share/tuxguitar/lib/*.so ${DESTDIR}/usr/lib/tuxguitar

	for _i in 16 24 32 48 64 96; do
		vmkdir usr/share/icons/hicolor/${_i}x${_i}/mimetypes
		vinstall TuxGuitar/share/skins/Lavender/icon-${_i}x${_i}.png 644 usr/share/icons/hicolor/${_i}x${_i}/apps tuxguitar.png
		for _j in audio-x-{tuxguitar,gtp,ptb}; do
			ln -s ../apps/tuxguitar.png ${DESTDIR}/usr/share/icons/hicolor/${_i}x${_i}/mimetypes/$_j.png
		done
	done

	vinstall misc/tuxguitar.xml 644 usr/share/mime/packages
	vinstall misc/tuxguitar.desktop 644 usr/share/applications
	vbin tuxguitar
}
