makefile refactored.