89 lines
2.6 KiB
Bash
89 lines
2.6 KiB
Bash
SUMMARY="Robust, somewhat scalable, cross-platform client-server solution"
|
|
DESCRIPTION="The MUSCLE system is a robust, somewhat scalable, cross-platform \
|
|
client-server solution for dynamic distributed applications for Haiku and \
|
|
other operating systems.
|
|
It allows (n) client programs (each of which may be running on a \
|
|
separate computer and/or under a different OS) to communicate with each other \
|
|
in a many-to-many message-passing style. It employs a central server to which \
|
|
client programs may connect or disconnect at any time (this design is similar \
|
|
to other client-server systems such as Quake servers, IRC servers, and Napster \
|
|
servers, but more general in application).
|
|
In addition to the client-server \
|
|
system, MUSCLE contains classes to support peer-to-peer message streaming \
|
|
connections, as well as some handy miscellaneous utility classes."
|
|
HOMEPAGE="https://public.msli.com/lcs/muscle/"
|
|
COPYRIGHT="2000-2009 Meyer Sound Laboratories Inc.
|
|
2000-2017 Jeremy Friesner"
|
|
LICENSE="BSD (3-clause)"
|
|
REVISION="1"
|
|
SOURCE_URI="https://public.msli.com/lcs/muscle/muscle$portVersion.zip"
|
|
CHECKSUM_SHA256="125f65ad90a8352f46135697365eca87c8ac0a636c1e4e737e19835a609b586b"
|
|
SOURCE_DIR="muscle"
|
|
PATCHES="muscle-$portVersion.patchset"
|
|
|
|
#TODO:enable multithreading for the devel package!
|
|
|
|
ARCHITECTURES="all !x86_gcc2"
|
|
SECONDARY_ARCHITECTURES="x86"
|
|
|
|
PROVIDES="
|
|
muscle$secondaryArchSuffix = $portVersion
|
|
cmd:muscled$secondaryArchSuffix = $portVersion
|
|
cmd:muscled_admin$secondaryArchSuffix = $portVersion
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_devel="
|
|
muscle${secondaryArchSuffix}_devel = $portVersion
|
|
devel:muscle$secondaryArchSuffix = $portVersion
|
|
devel:libmuscle$secondaryArchSuffix = $portVersion
|
|
"
|
|
REQUIRES_devel="
|
|
muscle$secondaryArchSuffix == $portVersion base
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
devel:libz$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:ld$secondaryArchSuffix
|
|
cmd:make
|
|
"
|
|
|
|
BUILD()
|
|
{
|
|
if [ $effectiveTargetArchitecture == x86_64 ]; then
|
|
CXXFLAGS="-DMUSCLE_64_BIT_PLATFORM"
|
|
fi
|
|
export CXXFLAGS="-D_BSD_SOURCE $CXXFLAGS"
|
|
cd server
|
|
make $jobArgs all libmuscle.a
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
mkdir -p $binDir
|
|
|
|
cd server
|
|
cp muscled $binDir
|
|
cp admin $binDir/muscled-admin
|
|
|
|
mkdir -p $developLibDir
|
|
mkdir -p $includeDir/muscle
|
|
|
|
cp libmuscle.a $developLibDir
|
|
cd ..
|
|
#XXX: do we really need all of those?
|
|
for d in message besupport dataio iogateway reflector regex \
|
|
util support syslog system zlib zlib/zlib; do
|
|
mkdir -p $includeDir/muscle/$d
|
|
cp $d/*.h $includeDir/muscle/$d
|
|
done
|
|
packageEntries devel \
|
|
$developDir
|
|
}
|