More generic makefile