enhance makefile