That isn't a complete list .
Despite the above cmake is your best choice of build system for C. Though some competitors could overtake it.
That isn't a complete list .
Despite the above cmake is your best choice of build system for C. Though some competitors could overtake it.
I have extracted some knowledge from the source code. It's more underdesigned than overdesigned and I think that's the better side to err on. Kinda awkward but you can figure it out.
any thoughts on why are build tools so hard to get right?
What makes it hard is the problem is a lot deeper than most people realize, so most attempts are not powerful enough to be useful. They are clean until someone points out one of the many edge cases that were not thought of, and by the time you support even a few of them your clean design is a mess of uglyness.
Making it worse build systems are an afterthought to most develpers so you end up with a mess just because the programers are not taking care to write good clean code in the build system.