Based on a comment on Twitter: here are FreeBSD ports files to build NymphCast and its dependencies. This basically ignores setup.sh and does a build of its own, running gmake (that's GNU make) to build rpc, client library and NymphCast itself. It's not complete, since NymphCast doesn't build (separate issue for that). I could just commit the ports and we'd have packages the next day, but given the way NymphCast looks to want to be built, ignoring upstream's wishes isn't the best approach.
Peculiarities of FreeBSD:
GNU make is spelled gmake, and BSD make (i suppose that's nmake) is spelled make. Using GNU make isn't an issue, although there's a patch to use $(MAKE) for sub-makefiles rather than make (which would run the wrong one).
There's no architecture-specific library directories like in GNU systems -- no /usr/lib/lib64/ or the like. Things are installed into /usr/local/ (either includes or libraries in subdirectories), which is not in the default search path. Most non-BSD-aware projects need to have some -I and -L flags added.
Which gcc / g++ exist, they're a little annoying to use, and it's easy to hit C++ ABI issues by mix-and-matching Clang-compiled libraries and g++-compiled libraries. I've chosen to patch out gcc and use Clang instead.
Ports files (e.g. extract in /usr/ports/multimedia and then build packages however you like):
nymph.tar.gz
Based on a comment on Twitter: here are FreeBSD ports files to build NymphCast and its dependencies. This basically ignores
setup.sh
and does a build of its own, runninggmake
(that's GNU make) to build rpc, client library and NymphCast itself. It's not complete, since NymphCast doesn't build (separate issue for that). I could just commit the ports and we'd have packages the next day, but given the way NymphCast looks to want to be built, ignoring upstream's wishes isn't the best approach.Peculiarities of FreeBSD:
gmake
, and BSD make (i suppose that's nmake) is spelledmake
. Using GNU make isn't an issue, although there's a patch to use$(MAKE)
for sub-makefiles rather thanmake
(which would run the wrong one)./usr/lib/lib64/
or the like. Things are installed into/usr/local/
(either includes or libraries in subdirectories), which is not in the default search path. Most non-BSD-aware projects need to have some-I
and-L
flags added.Ports files (e.g. extract in
/usr/ports/multimedia
and then build packages however you like): nymph.tar.gz