with Makefile