implementing Makefile