update and add makefile