improve the makefile