SUMMARY="A library to process MIDI patch files"
DESCRIPTION="libInstPatch stands for lib-Instrument-Patch and is a library for\
 processing digital sample based MIDI instrument \"patch\" files. The types of\
 files libInstPatch supports are used for creating instrument sounds for \
wavetable synthesis. libInstPatch provides an object framework (based on \
GObject) to load patch files into, which can then be edited, converted, \
compressed and saved."
HOMEPAGE="https://github.com/swami/libinstpatch"
COPYRIGHT="1999-2019 Element Green and others"
LICENSE="GNU LGPL v2.1"
REVISION="2"
SOURCE_URI="$HOMEPAGE/archive/v$portVersion.tar.gz"
SOURCE_FILENAME="libinstpatch-$portVersion.tar.gz"
CHECKSUM_SHA256="8fcc4e60745539d17f10de1ed0e3d02329509e814c0c672d686d6e972113142b"

ARCHITECTURES="all"
SECONDARY_ARCHITECTURES="x86"

PROVIDES="
	libinstpatch$secondaryArchSuffix = $portVersion
	lib:libinstpatch_1.0$secondaryArchSuffix = 2.0.2 compat >= 2
	"
REQUIRES="
	haiku$secondaryArchSuffix
	lib:libglib_2.0$secondaryArchSuffix
	lib:libgobject_2.0$secondaryArchSuffix
	lib:libgthread_2.0$secondaryArchSuffix
	lib:libintl$secondaryArchSuffix
	lib:libsndfile$secondaryArchSuffix
	"

PROVIDES_devel="
	libinstpatch${secondaryArchSuffix}_devel = $portVersion
	devel:libinstpatch_1.0$secondaryArchSuffix = 2.0.2 compat >= 2
	"
REQUIRES_devel="
	libinstpatch$secondaryArchSuffix == $portVersion base
	devel:libglib_2.0$secondaryArchSuffix
	devel:libsndfile$secondaryArchSuffix
	"

BUILD_REQUIRES="
	haiku${secondaryArchSuffix}_devel
	devel:libglib_2.0$secondaryArchSuffix
	devel:libsndfile$secondaryArchSuffix
	"
BUILD_PREREQUIRES="
	cmd:cmake
	cmd:gcc$secondaryArchSuffix
	cmd:ld$secondaryArchSuffix
	cmd:make
	cmd:pkg_config$secondaryArchSuffix
	"

BUILD()
{
	cmake -DCMAKE_INSTALL_PREFIX:PATH=$prefix \
		-DLIB_INSTALL_DIR=$libDir \
		.
	make $jobArgs
}

INSTALL()
{
	make install

	mkdir -p $(dirname $includeDir)
	mv $prefix/include $includeDir

	prepareInstalledDevelLibs libinstpatch-1.0
	fixPkgconfig strict
	sed -e 's,^includedir=\(.*\)include,includedir=${prefix}/'${relativeIncludeDir}',' \
		-i $developLibDir/pkgconfig/libinstpatch-1.0.pc

	# devel package
	packageEntries devel \
		$developDir
}
