makefile + folders architecture