I needed to compile a few files which used some weird gmake tricks on which ape/make choked, most notably stuff of the type $(SOMETHING:.c=.h): something.else. Rather than fixing the Makefile or fixing ape/make I went the easy route and ported gmake.
make-3.81.tgz -- source, 2MB.
% hget http://mirtchovski.com/p9/gmake/make-3.81.tgz | gunzip | tar xv
% cd make-3.81
% mk
% mk install
This will put a single binary called gmake in $objtype/bin
The only thing that I consistently find bothersome is the fact that all makefiles generated with configure redefine the SHELL variable, invariably as /bin/sh. Since A solution is to either run gmake in the ape/psh shell or change the variable to /bin/ape/psh.
The original source is GNU. The Plan 9 driver is IDCLMA (I Don't Care, Leave Me Alone).