It should be possible with a few tweaks to support building with GNU make (gmake) instead of just Solaris make/dmake.
The main sticking point seems to be the "conditional" compilation := symbol which means something different under gmake. However, it turns out that there are fewer of these than I thought (and actually I'd like to introduce more, but I should probably prioritise gmake support over shorter Makefiles).
The other issue is "fake" dependencies, such as the "offsets" target in tools/Makefile, and the .WAIT directive which is valid in dmake but not gmake. It's simple to add a .WAIT target, but I should re-evaluvate whether this is the correct thing to put in here anyway.