- Support for thousands of related and unrelated codebases in the same repo, with a nuanced understanding of dependencies so that all "dirty" objects, and no others, are rebuilt/retested for each change.
- Hermetic builds to weed out undeclared dependencies.
- Support for remote build cache / remote build workers.
- Understanding of many unrelated languages.
I can't imagine GNU Make being reasonable in this kind of use case. What would you choose?
Now they have to maintain a fork instead. What's worse is they likely wont know how it works in a year's time, imagine in a few years when they need him to update the library.
Sometimes it's better to buy a library than to waste resources reinventing someone else's tried and tested wheel.
I, for one, applaud the effort. Maybe someday we can finally relegate CMake to the dustbin of history.