cleaner makefile logic