The most common mistake I make while using make ( no pun intended ) is to invoke the command from a child directory where no Makefile is present.
I wrote gmake to solve that pain point.
Why not simply use the -C flag that is built into make ?
make provides a -C flag which accepts the path to the make file but that defeats the purpose as it is more effort/time consuming to type it out.
Using your bash history does reduce the pain of repeating the -C flag, however, that fails when you have to switch amongst different repos/makefiles quite frequently.
Infact, using gmake will make it possible to use your bash history more consistently as gmake test or gmake build are common enough and the -C flag is abstracted away