Fluidsynth: recipe for newer version

This commit is contained in:
François Revol
2025-02-16 01:56:16 +01:00
parent 952858cc99
commit c44e198c6b

View File

@@ -0,0 +1,123 @@
SUMMARY="A software real-time synthesizer"
DESCRIPTION="
Fluidsynth is a free open source software synthesizer written in C. It \
can convert MIDI note data to an audio signal using SoundFont technology \
without a SoundFont compatible soundcard. Fluidsynth can perform as a virtual \
MIDI device and read in SMF (.mid) files directly. Another function is its \
ability to send audio data to a Raw or Wave file."
HOMEPAGE="https://www.fluidsynth.org/"
COPYRIGHT="2017-2025 Tom Moebert
2007-2025 Josh Green
2007-2025 Pedro Lopez-Cabanillas
2007-2025 David Henningsson
2000-2025 Peter Hanappe"
LICENSE="GNU LGPL v2.1"
REVISION="1"
SOURCE_URI="https://github.com/FluidSynth/fluidsynth/archive/v$portVersion.tar.gz"
CHECKSUM_SHA256="a92aa83d2ff09a1a6d6186e81d8182bd2958947dffca77a6490ffd41b3ec9dc7"
SOURCE_DIR="fluidsynth-$portVersion"
PATCHES="fluidsynth2-$portVersion.patchset"
ARCHITECTURES="?all !x86_gcc2"
SECONDARY_ARCHITECTURES="?x86"
libVersion="3.3.3"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
fluidsynth2$secondaryArchSuffix = $portVersion
lib:libfluidsynth$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libFLAC$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgomp$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libinstpatch_1.0$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
lib:libogg$secondaryArchSuffix
lib:libreadline$secondaryArchSuffix
lib:libSDL_1.2$secondaryArchSuffix
lib:libsndfile$secondaryArchSuffix
lib:libvorbis$secondaryArchSuffix
"
PROVIDES_devel="
fluidsynth2${secondaryArchSuffix}_devel = $portVersion
devel:libfluidsynth$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
fluidsynth2$secondaryArchSuffix == $portVersion base
"
CONFLICTS_devel="
fluidsynth${secondaryArchSuffix}_devel
"
SUMMARY_tools="$SUMMARY (fluidsynth binary)"
DESCRIPTION_tools="$DESCRIPTION (fluidsynth binary)"
PROVIDES_tools="
fluidsynth2${secondaryArchSuffix}_tools = $portVersion
cmd:fluidsynth$secondaryArchSuffix = $portVersion
"
REQUIRES_tools="
fluidsynth2$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libFLAC$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libinstpatch_1.0$secondaryArchSuffix
devel:libncurses$secondaryArchSuffix
devel:libogg$secondaryArchSuffix
devel:libreadline$secondaryArchSuffix >= 8
devel:libSDL_1.2$secondaryArchSuffix
devel:libsndfile$secondaryArchSuffix
devel:libvorbis$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:libtoolize$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
"
defineDebugInfoPackage fluidsynth2$secondaryArchSuffix \
"$libDir"/libfluidsynth.so.$libVersion \
"$(getPackagePrefix tools)/$relativeBinDir"/fluidsynth
BUILD()
{
cmake -Bbuild -S. -DCMAKE_BUILD_TYPE=RelWithDebInfo \
$cmakeDirArgs
make -Cbuild $jobArgs
}
INSTALL()
{
make -Cbuild install
prepareInstalledDevelLib \
libfluidsynth
fixPkgconfig
# devel package
packageEntries devel \
$developDir
# tools package
packageEntries tools \
$binDir \
$manDir
}
TEST()
{
make check -k -C build
}