void wrote:Damn, I started writing a long and nice message and the power went
Oh well...
My machine's recent favourite seems to be freezing X. Either way, I feel your pain
void wrote:(which all are BSD/zlib licensed and allow static linking).
Oh, I'm not suggesting anyone was infringing on licences; that's another matter entirely. I just feel that on a platform that lets you (Linux), users should be able to upgrade dependencies separately from packages that use them (provided they haven't broken the ABI).
void wrote:Bam is another question which mostly boils down to make being a horror to maintain for larger projects and SCons being too slow
I can't say much for its speed, but coming from the background of being a user (I wouldn't say "fan", but it gets the job done) of the autotools, I've tried to use scons and just found it incredibly confusing and counter-intuitive. If you know how to use it (and there's the rub, because the learning curve admittedly does seem steep), an autotools build system can be got up and running for compilation on a number of platforms without too much effort. In my limited experience with scons, I felt like I was maintaining two entire codebases: one for the program itself, and one to build it! Basically, it felt too much like hard work.
void wrote:EDIT: I forgot:
Teeworlds does not really have an open source agenda. Our main goal was to provide binaries for people to install in a simple way. Not writing which versions of which libs they need to install in a special way on certain distros.
matricks wrote:Collecting and installing all the dependencies under windows or osx is horrific to do and takes loads of time and error prune.
But how many people actually do that? Package maintainers and developers, not end users. I can understand it being a pain on Windows, where building anything that uses DLLs not shipped with the OS is basically asking for all kinds of trouble, but on Linux surely the end users just install the runtime packages, and the devs install the -dev packages? Personally I use Gentoo for the simple reason that it makes for a brilliant development environment, but this is far from impossible on other distros. I must admit I don't know much about OS X, having never developed for it, so for all I know it's as bad as Windows in that regard.
Basically, on Linux and the BSDs (possibly Mac OS X, but I don't know), you shouldn't have to know or care how users install the dependencies. That's what package managers are for; it's why we use distributions in the first place instead of just downloading a bunch of tarballs and installing everything by hand. All worthwhile package systems will install the dependencies automatically, in fact, providing the package is well written (which is up to package maintainers, not yourselves).
Anyway... as I said in the original post, I like teeworlds. I'm not going to stop playing it or recommending it to people just because of how it's compiled. I just wondered how much thought had gone into the route it's taken, and whether those involved realise how much work writing a build framework really is. Perhaps the fact that bam exists and compiles teeworlds indicate that the answers are "lots" and "yes".