roaraudio, new recipe (#5550)

This commit is contained in:
Schrijvers Luc
2021-01-07 19:02:59 +01:00
committed by GitHub
parent 0ff3ac8a30
commit d5d9747c1e
2 changed files with 226 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
From f7e49115c5be1b75423f88bce0a8a9cf643c9f57 Mon Sep 17 00:00:00 2001
From: begasus <begasus@gmail.com>
Date: Thu, 31 Dec 2020 18:28:16 +0000
Subject: Fix building, no mlock/munlock for Haiku
diff --git a/libroar/libroar.c b/libroar/libroar.c
index 917d745..7505ff6 100644
--- a/libroar/libroar.c
+++ b/libroar/libroar.c
@@ -51,7 +51,7 @@ int roar_mm_mlock(const void *addr, size_t len) {
return -1;
#elif defined(ROAR_TARGET_MICROCONTROLLER)
return 0;
-#elif defined(_SC_PAGESIZE)
+#elif defined(_SC_PAGESIZE) && !defined(__HAIKU__)
long sz = sysconf(_SC_PAGESIZE);
unsigned long int pos = (unsigned long int) addr;
@@ -76,7 +76,7 @@ int roar_mm_munlock(const void *addr, size_t len) {
return -1;
#elif defined(ROAR_TARGET_MICROCONTROLLER)
return 0;
-#elif defined(_SC_PAGESIZE)
+#elif defined(_SC_PAGESIZE) && !defined(__HAIKU__)
long sz = sysconf(_SC_PAGESIZE);
unsigned long int pos = (unsigned long int) addr;
--
2.28.0

View File

@@ -0,0 +1,195 @@
SUMMARY="Modern, multi-OS, networked Sound System"
DESCRIPTION="RoarAudio is a modern, multi OS sound system. Its main purpose \
is to connect software (like media players) and devices (like soundcards) as \
a mid-layer adding features you expect from a modern sound system like \
software mixing and full network transparency.
RoarAudio can also be used to connect multiple software components. An \
example for such a setup is a common webradio setup where the used playback \
software is connected to a streaming server in addition to a local soundcard. \
RoarAudio has special features for such setups like meta data passing."
HOMEPAGE="http://roaraudio.keep-cool.org/"
COPYRIGHT="2008-2019 Philipp 'ph3-der-loewe' Schafft"
LICENSE="GNU GPL v2
GNU GPL v3
GNU LGPL v3"
REVISION="1"
SOURCE_URI="http://roaraudio.keep-cool.org/dl/roaraudio-$portVersion.tar.gz"
CHECKSUM_SHA256="f3899329cd5761253d4b72ab9f5a790b862b0757bdc87fdb87c97531c56a799c"
PATCHES="roaraudio-$portVersion.patchset"
ARCHITECTURES="!x86_gcc2 ?x86_64"
SECONDARY_ARCHITECTURES="?x86"
commandBinDir=$binDir
commandSuffix=$secondaryArchSuffix
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
PROVIDES="
roaraudio$secondaryArchSuffix = $portVersion
cmd:roarbidir$commandSuffix
cmd:roarcat$commandSuffix
cmd:roarcatplay$commandSuffix
cmd:roarcatvio$commandSuffix
cmd:roarclientpass$commandSuffix
cmd:roarctl$commandSuffix
cmd:roardtmf$commandSuffix
cmd:roarfilt$commandSuffix
cmd:roarify$commandSuffix
cmd:roarinterconnect$commandSuffix
cmd:roarlight$commandSuffix
cmd:roarmon$commandSuffix
cmd:roarmonhttp$commandSuffix
cmd:roarphone$commandSuffix
cmd:roarpluginapplication$commandSuffix
cmd:roarpluginrunner$commandSuffix
cmd:roarradio$commandSuffix
cmd:roarshout$commandSuffix
cmd:roarsin$commandSuffix
cmd:roarsockconnect$commandSuffix
cmd:roartypes$commandSuffix
cmd:roarvio$commandSuffix
cmd:roarvorbis$commandSuffix
cmd:roarvumeter$commandSuffix
lib:libroar$secondaryArchSuffix = 2
lib:libroardsp$secondaryArchSuffix = 2
lib:libroareio$secondaryArchSuffix = 2
lib:libroarlight$secondaryArchSuffix = 2
lib:libroarmidi$secondaryArchSuffix = 2
lib:libroaross$secondaryArchSuffix = 2
lib:libroarsndio$secondaryArchSuffix = 2
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libao$secondaryArchSuffix
lib:libFLAC$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libogg$secondaryArchSuffix
lib:libportaudio$secondaryArchSuffix
lib:libsamplerate$secondaryArchSuffix
lib:libshout$secondaryArchSuffix
lib:libsndfile$secondaryArchSuffix
lib:libspeex$secondaryArchSuffix
lib:libspeexdsp$secondaryArchSuffix
lib:libvorbis$secondaryArchSuffix
lib:libvorbisenc$secondaryArchSuffix
lib:libvorbisfile$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
roaraudio${secondaryArchSuffix}_devel = $portVersion
cmd:roar_config$commandSuffix
devel:libroar$secondaryArchSuffix = 2
devel:libroardsp$secondaryArchSuffix = 2
devel:libroareio$secondaryArchSuffix = 2
devel:libroarlight$secondaryArchSuffix = 2
devel:libroarmidi$secondaryArchSuffix = 2
devel:libroaross$secondaryArchSuffix = 2
devel:libroarsndio$secondaryArchSuffix = 2
"
REQUIRES_devel="
roaraudio$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libao$secondaryArchSuffix
devel:libFLAC$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libogg$secondaryArchSuffix
devel:libportaudio$secondaryArchSuffix
devel:libsamplerate$secondaryArchSuffix
devel:libshout$secondaryArchSuffix
devel:libsndfile$secondaryArchSuffix
devel:libspeex$secondaryArchSuffix
devel:libspeexdsp$secondaryArchSuffix
devel:libvorbis$secondaryArchSuffix
devel:libvorbisenc$secondaryArchSuffix
devel:libvorbisfile$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:gnuplot
cmd:gpg$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:ogg123
cmd:pkg_config$secondaryArchSuffix
cmd:ssh
cmd:which
"
defineDebugInfoPackage roaraudio$secondaryArchSuffix \
$libDir/libroar.so.2 \
$libDir/libroardsp.so.2 \
$libDir/libroareio.so.2 \
$libDir/libroarlight.so.2 \
$libDir/libroarmidi.so.2 \
$libDir/libroaross.so.2 \
$libDir/libroarsndio.so.2 \
$commandBinDir/roarbidir \
$commandBinDir/roarcat \
$commandBinDir/roarcatplay \
$commandBinDir/roarcatvio \
$commandBinDir/roarclientpass \
$commandBinDir/roarctl \
$commandBinDir/roardtmf \
$commandBinDir/roarfilt \
$commandBinDir/roarinterconnect \
$commandBinDir/roarlight \
$commandBinDir/roarmon \
$commandBinDir/roarmonhttp \
$commandBinDir/roarphone \
$commandBinDir/roarpluginrunner \
$commandBinDir/roarradio \
$commandBinDir/roarshout \
$commandBinDir/roarsin \
$commandBinDir/roarsockconnect \
$commandBinDir/roartypes \
$commandBinDir/roarvio \
$commandBinDir/roarvorbis \
$commandBinDir/roarvumeter
BUILD()
{
export LDFLAGS="-lnetwork"
./configure --prefix-bin=$commandBinDir \
--prefix-lib=$libDir \
--prefix-inc=$includeDir \
--prefix-man=$manDir \
--prefix-sysconf=$settingsDir \
--prefix-doc=$docDir \
--without-comp-roard
make $jobArgs
}
INSTALL()
{
make install
prepareInstalledDevelLibs \
libroar \
libroardsp \
libroareio \
libroarlight \
libroarmidi \
libroaross \
libroarsndio
fixPkgconfig
packageEntries devel \
$developDir \
$commandBinDir/roar-config
}
TEST()
{
make check
}