Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

tup [1], redo [2] and ninja [3] are probably the build systems with the most potential.

redo is the simplest, which is unsurprising given that it was originally proposed by djb. Alternatively, you could look into mk, which is the make replacement used by Plan 9, Inferno and derivatives.

[1] http://gittup.org/tup/

[2] http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/int...

[3] https://martine.github.io/ninja/



I've used redo for a while but I didn't like the sprawl of shell script files for the build to work.

I switched to ninja mostly for more complex projects and it's very nice, you can do anything in the generation stage and get all the power you need and then run it through ninja and get the full speed benefit of native code for the most common operation (build it!).

I used in the past both scons and waf and they are in a way like ninja but since the actual build process is still in python the time to build is longer. scons was a big pain in the ass for a large project and I regretted introducing it. waf was ok though.

I still do use make and makefiles for simple projects. It is usually simplest to get running and requires only a build stage without any configuration like ninja does. I also have the basic constructs hard-wired into my brain and can write that simple makefile faster than I can find the example code for ninja.


Buildsome [1] has make-like syntax and some interesting ideas, though I haven't personally tried it.

[1] https://github.com/ElastiLotem/buildsome


Are any of these cross-platform like make?


tup and ninja are (*nix, OS X, Windows), redo mentions that it probably doesn't work on windows.


mk has been ported to UNIX-likes, see plan9port.


mk originated on Unix, and so did almost everything else in Plan 9.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: