a tool to help generate makefile