imporve makefile usability