generalized python makefile