Re:Qake: GNU Make-based build system with a different approach
by mkpankov on Tuesday November 04, 2014 @07:19AM
(#8556159)
I ended up using $(eval ...) a lot, and turns out Make's support for it is... suboptimal.
As for paper - I believe it's "Recursive Make Considered Harmful" - I read it, it's great. Was one of the main motivators during build system rewrite.
Re:Qake: GNU Make-based build system with a different approach
by dlundqvist on Tuesday November 04, 2014 @07:42AM
(#8556239)
Three or four levels down in $(eval ...) and $(call ...) still makes me stop and think how many $ I should have.
Yes, that's the paper, I was also heavily motivated by it. And when I read JDK also switched[1] to something similar, it just cemented my belief it was the right way to go, for the same reasons as for them.
Makefiles are of course a bit limited compared to shell scripts, but you can do a lot with implicit rules, static pattern rules, second expansion, call and eval, etc.