3 ms·
Makefiles are kind of fragile and they barely get the job done. They’re error-prone to write—even experienced programmers often end up with dependencies in thei
by klodolph 2y ago
Makefiles are kind of fragile and they barely get the job done. They’re error-prone to write—even experienced programmers often end up with dependencies in their makefiles which are incorrectly specified, or you end up using stale intermediate artifacts in your build due to unforeseen error conditions in your recipes. Make itself is missing a lot of critical features, like the ability to rebuild when the configuration changes. Some simple tasks are difficult or arcane in Make, like creating an output directory.
This is why people have been hacking together Make replacements for the past forty years. The underlying problem (build systems) is incredibly intricate and complicated, and as a result, the replacements all make some sort of tradeoffs and we don’t have a clear “winner” for make. We just kind of agree that make is bad, but don’t agree on what should replace it.
I know that there are also some Make apologists hanging around on HN looking for a fight, so if that’s what’s going on here, I want to be absolutely clear—I’m not interested in apologia for Make.
- liontwist 2y ago> here is a bunch of criticism about make. Most of these can be answered by reading the manual. No I do not want anyone who understands make to respond.