Fair. But as said, in my experience, they remain useful and simple for a pretty long time. I usually always start out with a simple Makefile. Only sometimes do I start with or eventually switch to something else because of the projects’ needs, but for most stuff (even stuff where the project itself is complex, i.e. embedded kernel stuff where different units are pasted together and whatnot), relatively simple Makefiles do their job pretty well.
I also have a lot of phony targets. It really enjoy just being able to type:
make restore kernel reset upload
To bring a device into a sane state, build the kernel, reset the device, and upload the built
firmware.
Aand that brings up another issue - that (and a good amount of things that will work as expected on the default -j1) breaks with -j4.
Apparently .WAIT and .NOTPARALLEL exist, which I couldn't find last time I needed something around this. Though for this unfortunately `make -j4 foo .WAIT bar` isn't allowed, but at that point separate make invocations is fine.
I also have a lot of phony targets. It really enjoy just being able to type:
To bring a device into a sane state, build the kernel, reset the device, and upload the built firmware.