some additions/changes that make makefile more flexible