Allow specifying builddir with gnu-toolset-produced makefiles

This seems to work fine in simple cases. The interaction with submodules is not great as the subdirectories of `$(builddir)` are not created automatically (neither is the `$(builddir)` itself, but this is less unexpected), so they have to be manually created for each submodule. I'm not sure what to do about this to be honest.