It is like a c implementation of gnustep make.
It was inspired by logilogi.org make called lake. right now it does cycle detection, computes the transitive closure of the whole dependency dag, automatically tracks implicit dependencies and uses subsecond tstamps. The makefiles are modular and uses c.
The makefiles are compiled into an executable and run.
All you need is gcc.
There is still a lot to do though. I need statefiles, hash based change detection, a makedepend clone and parallel building. GCC's -MD -MF option will do for now but that will not work with generated headers and source files.