(disclaimer: I like make but not macros)
> And make has deficiencies that are a nightmare to work around and get right (e.g. spaces in filenames, recursion, ...)
Yes! we seem to be stuck in a local maximum with make. I wrote my own make replacement, as have many before me, and learned the folly of my own ways.
Nowadays I use (and love) make despite its terrible handicaps, but I really wish there were something fundamentally similar but a) less C-focused and b) containing many fewer footguns.