functioning makefile